Skip to content

Commit

Permalink
Merge pull request #41 from zkSNACKs/nopara73-patch-1
Browse files Browse the repository at this point in the history
Add Scheduling overview
  • Loading branch information
seresistvanandras authored Jun 3, 2020
2 parents 327c577 + 98938c9 commit 004d71a
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions main.tex
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,17 @@ \subsection{Terminology and notation}

Finally, $k$ is a protocol level constant, denoting the number of credentials used in input and output registration requests, and $v_{\mathit{max}} = 2^{51}-1$ constrains the amount value ranges.\footnote{$\log_2(2099999997690000) \approx 50.9$}

\subsection{Phases}

A CoinJoin round consists of an Input Registration, an Output Registration and a Transaction Signing phases. To defend against Denial of Service attacks it is important to ensure the inputs of users who do not comply with the protocol are identified, thus these inputs can be excluded from the following rounds in order to ensure completion of the protocol.

\begin{enumerate}
\item While identifying non-compliant inputs during Input Registration phase is trivial, there is no reason for issuing penalties at this point.
\item Identifying non-compliant inputs during Output Registration phase is not possible, thus this phase always completes and progresses to the Signing Phase.
\item During Signing Phase, inputs those do not sign are non-compliant inputs and they shall be issued a penalties.
\end{enumerate}

The point of the cryptography in WabiSabi is to ensure it does not worth for any non-compliant input to sign the final CoinJoin transaction, otherwise non-compliant inputs could not be identified. We achieve this by ensuring no user can register outputs those sum is larger than its registered inputs' sum.

\subsection{Registration}

Expand Down

0 comments on commit 004d71a

Please sign in to comment.