These do not yet have decent hex-encoding for obvious types (e.g. Signature is serialized not as a 64-byte hex string, but as a struct with two fields serialized as arrays of numbers). Will add this later.
More complex structures like VerifiedTx (with its TxLog, which requires serializing Contract, which requires serializing Values and Predicates) will be dealt with later - we will need special annotations and/or helper types for them to be serialized decently.
Another question is how to serialize witness data. We will probably need more thorough to_opaque() APIs in order to guarantee that we don't accidentally serialize secrets.
This adds serialization support for:
VerificationKey
Signature
Tx
TxID
These do not yet have decent hex-encoding for obvious types (e.g. Signature is serialized not as a 64-byte hex string, but as a struct with two fields serialized as arrays of numbers). Will add this later.
More complex structures like
VerifiedTx
(with itsTxLog
, which requires serializingContract
, which requires serializingValue
s andPredicate
s) will be dealt with later - we will need special annotations and/or helper types for them to be serialized decently.Another question is how to serialize witness data. We will probably need more thorough
to_opaque()
APIs in order to guarantee that we don't accidentally serialize secrets.