This modernizes the ChaCha20 and ChaCha20Aligned interfaces to be Span<std::byte>
based, and other improvements.
- Modifies all functions and constructors of
ChaCha20
andChaCha20Aligned
to beSpan<std::byte>
based (aligning them withFSChaCha20
,AEADChaCha20Poly1305
, andFSChaCha20Poly1305
) - Remove default constructors, to make sure all call sites provide a key (suggested in #26153 (review))
- Wipe key material on rekey for security (suggested in #26153 (review))
- Use
HexStr
on byte vectors in tests (suggested in #27993 (review)) - Support
std::byte
vectors inConsumeRandomLengthByteVector
andConsumeFixedLengthByteVector
, and use it (suggested in #27993 (review)) - And a few more.
While related, I don’t see this as a necessary for BIP324.