some block height in the past, or the merkle root produced by a previous pour in
this transaction. \sean{We need to be more specific here.}
\item$\scriptPubKey$ which is a \script that creates conditions for acceptance of a
\PourDescription in a transaction.
\item$\malleabilityPubKey$ which is a ecdsa public key used to bind a Pour to the containing transaction.
\item$\scriptSig$ which is a \script used to satisfy the conditions of the
$\scriptPubKey$.
\item$\malleabilitySig$ which is an ecdsa signature used to bind a Pour to the containing transaction.
\item$\serials$ which is an $\NOld$ size sequence of serials $\snOld{\allOld}$.
@ -813,7 +811,7 @@ $\PourDescription$.
\bitbox{256}{\hfill 256 bit $\snOld{\mathrm{1}}$\hfill...\;}&
\bitbox{256}{256 bit $\snOld{\NOld}$}&
\bitbox{256}{$\RandomSeed$}
\bitbox{256}{$\scriptPubKey$}
\bitbox{256}{$\malleabilityPubKey$}
\end{bytefield}
\end{lrbox}
@ -832,9 +830,9 @@ identified by that previous $\PourDescription$'s $\anchor$.
\subparagraph{Non-malleability}
A \PourDescription is valid if the script formed by appending $\scriptPubKey$ to
$\scriptSig$ returns $true$. The $\scriptSig$ is cryptographically bound to
$\PourProof$.
A \PourDescription is valid if $\malleabilitySig$ over the {SIGHASH\_ALL} transaction hash is signed by the associated $\malleabilityPubKey$. The $\malleabilitySig$ is cryptographically bound to $\PourProof$.
\nathan{FIXME: The {SIGHASH\_ALL} definition must be extended to cover the appropriate Pour descriptor fields.}