ed25519-zebra/Cargo.toml

51 lines
1.2 KiB
TOML
Raw Normal View History

2020-01-22 11:31:27 -08:00
[package]
name = "ed25519-zebra"
2020-01-24 13:01:41 -08:00
# Before publishing:
# - update CHANGELOG.md
2022-10-19 07:24:03 -07:00
version = "3.1.0"
2020-01-22 11:31:27 -08:00
authors = ["Henry de Valence <hdevalence@hdevalence.ca>"]
2020-01-22 14:57:26 -08:00
license = "MIT OR Apache-2.0"
2020-01-22 11:31:27 -08:00
edition = "2018"
2020-01-22 14:57:26 -08:00
repository = "https://github.com/ZcashFoundation/ed25519-zebra"
description = "Zcash-flavored Ed25519 for use in Zebra."
2022-05-05 06:40:29 -07:00
resolver = "2"
2020-01-22 14:57:26 -08:00
[package.metadata.docs.rs]
2020-06-17 14:28:12 -07:00
features = ["nightly"]
2020-01-22 11:31:27 -08:00
[dependencies]
# "digest" is exempt from SemVer, so we should always use a specific version
curve25519-dalek = { version = "=4.0.0-pre.5", default-features = false, features = ["alloc", "digest"] }
2022-05-05 06:40:29 -07:00
hashbrown = "0.12.0"
hex = { version = "0.4", default-features = false, features = ["alloc"] }
rand_core = "0.6"
serde = { version = "1", optional = true, features = ["derive"] }
sha2 = { version = "0.10", default-features = false }
zeroize = { version = "1.5", features = [ "zeroize_derive" ] }
2020-01-22 14:57:26 -08:00
2020-01-22 16:58:18 -08:00
[dev-dependencies]
rand = "0.8"
2020-01-23 17:13:48 -08:00
bincode = "1"
criterion = "0.3"
2020-07-06 19:43:29 -07:00
ed25519-zebra-legacy = { package = "ed25519-zebra", version = "1" }
color-eyre = "0.6"
Implement ZIP 215 validation rules. (#24) * Implement ZIP 215 validation rules. These have the effect that batched and singleton verification are now equivalent. * Add ZIP 215 conformance tests. This test constructs signatures on the message "Zcash" using small-order verification keys, some with canonical and some with non-canonical encodings of points. All of these signatures should pass verification under the ZIP 215 rules, but most of them should fail verification under legacy rules. These tests exercise all of the special-case behaviors from the specific version of libsodium used by Zcashd: * the all-zero check for the verification key; * the excluded point encodings for the signature's R value; * the choice to test equality of the encoded bytes of the recomputed R value rather than on the projective coordinates of the two points. Running ``` cargo test -- --nocapture ``` will print a hex-formatted list of the test cases, which can also be found here: https://gist.github.com/hdevalence/93ed42d17ecab8e42138b213812c8cc7 * Update spec links. Thanks to @ebfull for pointing this out. * No ... there is another. @ebfull pointed out that two test cases were duplicates. The cause was that I misread the RFC8032 check was checking for the non-canonical encoding of the identity point that NCC Group apparently brought up. Carefully analyzing all the cases instead of assuming reveals there is another non-canonically encoded point (of order 2). * Change formatting of printed test cases.
2020-07-06 19:40:20 -07:00
once_cell = "1.4"
2020-01-22 16:58:18 -08:00
2020-01-22 14:57:26 -08:00
[features]
nightly = []
2022-05-05 06:40:29 -07:00
default = ["serde", "std"]
std = []
[[test]]
name = "rfc8032"
[[test]]
name = "unit_tests"
[[test]]
name = "batch"
[[bench]]
name = "bench"
harness = false