This PR adds serialization and deserialization support for the Block
struct using Serde, while maintaining compatibility with Arkworks' canonical serialization.
This implementation enables compatibility with ecosystem dependencies like libp2p that rely on Serde for network serialization and data exchange when using predefined codecs (like cbor or json), improving interoperability of our cryptographic primitives across different libraries and network protocols.
Changes:
Visitor
to serialize and deserialize the bytes returned by ark_serialize
Implementation Details:
CanonicalSerialize
traitCanonicalDeserialize
traitAdded a test that: