Add a missing consensus rule for v4 transactions: if there are no Sapling spends or outputs, valueBalance MUST be 0.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
This commit is contained in:
Daira Hopwood 2018-07-31 03:47:26 +01:00
parent 854f6eddcc
commit ff397a6aff
1 changed files with 13 additions and 0 deletions

View File

@ -8128,6 +8128,8 @@ $\versionField \geq 4$ and $\nShieldedSpend + \nShieldedOutput > 0$.
$\BindingPublic$ of $\SigHash$ ---
i.e.\ $\BindingSigVerify{\BindingPublic}(\SigHash, \bindingSig) = 1$.
\end{itemize}}
\saplingonwarditem{If $\versionField \geq 4$ and $\nShieldedSpend + \nShieldedOutput = 0$,
then $\valueBalance$ \MUST be $0$.}
\item A \coinbaseTransaction{} \MUSTNOT have any
\joinSplitDescriptions\sapling{, \spendDescriptions, or \outputDescriptions}.
\item A \transaction{} \MUSTNOT spend an output of a \coinbaseTransaction
@ -9573,6 +9575,17 @@ Peter Newell's illustration of the Jubjub bird, from \cite{Carroll1902}.
} %sapling
\end{itemize}
\introlist
\subparagraph{2018.0-beta-24}
\begin{itemize}
\item No changes to \Sprout.
\sapling{
\item Add a missing consensus rule for version 4 \transactions: if there are
no \Sapling spends or outputs, then $\valueBalance$ \MUST be $0$.
} %sapling
\end{itemize}
\introlist
\subparagraph{2018.0-beta-22}