Skip to content
This repository has been archived by the owner on May 28, 2019. It is now read-only.

Commit

Permalink
src/apps/wallet/sign_tx: fix Zcash ZIP243 signing
Browse files Browse the repository at this point in the history
  • Loading branch information
prusnak committed Oct 17, 2018
1 parent 8177ad6 commit 443539a
Showing 1 changed file with 14 additions and 2 deletions.
16 changes: 14 additions & 2 deletions src/apps/wallet/sign_tx/signing.py
Original file line number Diff line number Diff line change
Expand Up @@ -548,8 +548,20 @@ async def sign_tx(tx: SignTx, root: bip32.HDNode):
write_uint32(tx_ser.serialized_tx, tx.lock_time)

if tx.overwintered:
write_uint32(tx_ser.serialized_tx, tx.expiry) # expiryHeight
write_varint(tx_ser.serialized_tx, 0) # nJoinSplit
if tx.version == 3:
write_uint32(tx_ser.serialized_tx, tx.expiry) # expiryHeight
write_varint(tx_ser.serialized_tx, 0) # nJoinSplit
elif tx.version == 4:
write_uint32(tx_ser.serialized_tx, tx.expiry) # expiryHeight
write_uint64(tx_ser.serialized_tx, 0) # valueBalance
write_varint(tx_ser.serialized_tx, 0) # nShieldedSpend
write_varint(tx_ser.serialized_tx, 0) # nShieldedOutput
write_varint(tx_ser.serialized_tx, 0) # nJoinSplit
else:
raise SigningError(
FailureType.DataError,
"Unsupported version for overwintered transaction",
)

await request_tx_finish(tx_req)

Expand Down

0 comments on commit 443539a

Please sign in to comment.