diff --git a/zip-0225.rst b/zip-0225.rst index e622f342..82cf89b9 100644 --- a/zip-0225.rst +++ b/zip-0225.rst @@ -438,6 +438,26 @@ The personalization field of this hash is set to:: "ZTxAuthOrchaHash" +Alternatives +============ + +A possible modification to this proposal is to entirely remove the Sprout-related fields +``nJoinSplit``, ``vJoinSplit``, ``joinSplitPubKey``, and ``joinSplitSig`` from the V5 +transaction format. While this would effectively prohibit migration transactions that +directly move funds from the Sprout pool to the Orchard pool, Sprout -> Transparent and +Sprout -> Sapling transactions would still be supported when using the V4 transaction +format. This proposal is appealing from the perspective that it would reduce the +complexity of the NU5 upgrade in the following ways:: + +* V5 parsing and serialization code would not need to take these fields into account. +* ZIP 244 [#zip_0244]_ transaction identifier, signature hash, and authorizing + data commitment computations could be simplified to exclude consideration of + these fields. + +This change would mean that in the future, removing the support for the V4 transaction +format would also effectively end support for Sprout transactions on the zcash network, +though it might be possible to restore limited support for migration via a future ZIP 222 +[#zip_0222] extension or by other means not yet determined. Reference implementation ========================