Skip to content

Zebra v1.0.0-alpha.6

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 09 Apr 00:37
· 3116 commits to main since this release
24bf952

Zebra's latest alpha includes more validation of pre-NU5 consensus rules, continues our work on NU5/Orchard, and fixes some security and protocol correctness issues.

The Zebra project now has a Code of Conduct.

Added

  • Design for Transaction V5 (#1886)
    • Make shielded data and spends generic over Transaction V4 and V5 (#1946, #1989)
  • Async batching for:
    • Sprout JoinSplit signatures (#1952)
    • Sapling Spend and Output Groth16 proofs (#1713)
  • Enable Joinsplit and Spend spend auth sighash verification (#1940)
  • Randomised property tests for InventoryHash and MetaAddr (#1985)

Documentation

  • Update the RFC process to include draft RFCs (#1962)
  • Add a fast start option to the Zebra Client RFC (#1969)
  • Document that Zebra's mandatory checkpoint can change (#1935)

Changed

  • Refactor the Block Commitment field based on ZIP-244 (#1957, #1978, #1988)

Fixed

  • Stop ignoring inbound message errors and handshake timeouts (#1950)
  • Don't send a useless heartbeat when the peer connection is already closing (#1950)

Security

  • Reduce deserialized memory usage for malicious blocks (#1920, #1977)
  • Ensure that new MetaAddr fields are sanitized (#1942)
  • Fix a deadlock between the peer address crawler and peer dialer when all connections fail (#1950)
  • Avoid starvation of handshakes and crawling under heavy syncer load (#1950)
  • Avoid starvation of request cancellations and timeouts under heavy peer response load (#1950)
  • Async network code correctness documentation (#1954, #1972)