Smash out monero-bulletproofs

Removes usage of dalek-ff-group/multiexp for curve25519-dalek.

Makes compiling in the generators an optional feature.

Adds a structured batch verifier which should be notably more performant.

Documentation and clean up still necessary.
This commit is contained in:
Luke Parker
2024-06-15 17:00:11 -04:00
parent 798ffc9b28
commit f7c13fd1ca
32 changed files with 716 additions and 502 deletions

18
Cargo.lock generated
View File

@@ -4751,6 +4751,22 @@ dependencies = [
"zeroize",
]
[[package]]
name = "monero-bulletproofs"
version = "0.1.0"
dependencies = [
"curve25519-dalek",
"hex-literal",
"monero-generators",
"monero-io",
"monero-primitives",
"rand_core",
"std-shims",
"subtle",
"thiserror",
"zeroize",
]
[[package]]
name = "monero-clsag"
version = "0.1.0"
@@ -4819,6 +4835,7 @@ dependencies = [
"hex",
"hex-literal",
"modular-frost",
"monero-bulletproofs",
"monero-clsag",
"monero-generators",
"monero-io",
@@ -8079,6 +8096,7 @@ dependencies = [
"dleq",
"flexible-transcript",
"minimal-ed448",
"monero-bulletproofs",
"monero-clsag",
"monero-generators",
"monero-io",