9 Commits

Author SHA1 Message Date
Balazs Komuves
f5835d5fdc add domain separation for the sponge construction 2023-11-13 11:40:01 +01:00
Balazs Komuves
01aa256970 minor improvements 2023-11-13 11:40:01 +01:00
Balazs Komuves
929793b9ad add sponge construction 2023-11-13 11:40:01 +01:00
Mark Spanbroek
573a77f14f Export conversion of field elements to bytes on main API 2023-11-08 11:13:45 +01:00
Mark Spanbroek
dbe3d8a692 Rename marshal -> toBytes, unmarshal -> fromBytes
For two reasons:
- to distinguish them from the marshalling functions
  from constantine
- they do not follow the convention that something
  that is marshalled can be unmarshalled, because
  they take in 31 bytes but produce 32 bytes
2023-11-08 11:13:45 +01:00
Mark Spanbroek
1c7c5d4ec4 Conversion of field elements into bytes 2023-11-08 11:13:45 +01:00
Mark Spanbroek
03ed357ca4 Only support unmarshalling of little-endian bytes
Big-endian bytes had weird padding; 0's to the right,
then a single 0 to the left.
2023-11-02 09:31:10 +01:00
Mark Spanbroek
10b4a3659a Pad big endian bytes with 0's to the right 2023-11-02 09:31:10 +01:00
Mark Spanbroek
43c2aab913 move unmarshal into its own module called 'io'
Includes separate tests for unmarshalling that
were previously tested as part of the merkleRoot
calculation.

Includes tests for unmarshalling little endian
and big endian byte arrays.
2023-11-02 09:31:10 +01:00