The uncompressed representation (both coordinates are present in an affine point's representation) is useful in cases where one would want to avoid paying for the cost of a point decompression (e.g. public parameter caching).
Implement uncompressed encoding for affine representations,
Update Rust toolchain to version 1.60.0 to satisfy the requirements of constant_time_eq & regex,
Add paste dependency at version 1.0.12 in order to give a specific struct for that representation for each of Pallas, Vesta through a macro.
Implement serialization / deserialization for the uncompressed encoding, and test it.
Use case:
Point (de)serialization when caching public parameters (for e.g. a vector Pedersen commitments), where the deserialization can be prohibitively expensive if done with the compressed form of the points. The uncompressed points do not have that flaw.
The uncompressed representation (both coordinates are present in an affine point's representation) is useful in cases where one would want to avoid paying for the cost of a point decompression (e.g. public parameter caching).
paste
dependency at version 1.0.12 in order to give a specific struct for that representation for each of Pallas, Vesta through a macro.Use case: Point (de)serialization when caching public parameters (for e.g. a vector Pedersen commitments), where the deserialization can be prohibitively expensive if done with the compressed form of the points. The uncompressed points do not have that flaw.