dfns / cggmp21

State-of-art threshold ECDSA in Rust
Apache License 2.0
43 stars 6 forks source link

Align protocol with specs #5

Closed survived closed 1 year ago

github-actions[bot] commented 1 year ago

Benchmark Result

Benchmarks ```text Tests seed: 86454ad38f2e65e4bff063b053ee96b90f27ad40fa4f1ed01aeed6cbb3c3e587 n = 3 Protocol Performance: - Protocol took 2.21s to complete In particular: - Setup: 28.49ms - Validate security level: 5.70µs (0.0%) - Retrieve auxiliary data: 28.47ms (99.9%) - Precompute execution id and security params: 6.10µs (0.0%) - Setup networking: 3.80µs (0.0%) - Unstaged: 500.00ns (0.0%) - Round 1: 178.86ms - Generate local ephemeral secrets (k_i, y_i, p_i, v_i): 46.20µs (0.0%) - Encrypt G_i and K_i: 52.28ms (29.2%) - Prove ψ0_j: 126.53ms (70.7%) - Unstaged: 1.30µs (0.0%) - Round 2: 1.05s - Hash received msgs (reliability check): 60.80µs (0.0%) - Verify ψ0 proofs: 112.77ms (10.8%) - Sample random r, rˆ, s, sˆ, β, βˆ: 93.40µs (0.0%) - Encrypt D_ji: 73.27ms (7.0%) - Encrypt F_ji: 67.24ms (6.4%) - Encrypt Dˆ_ji: 73.98ms (7.1%) - Encrypt Fˆ_ji: 67.91ms (6.5%) - Prove ψ_ji: 262.48ms (25.1%) - Prove ψˆ_ji: 262.81ms (25.1%) - Prove ψ_prime_ji : 125.53ms (12.0%) - Unstaged: 1.70µs (0.0%) - Round 3: 835.72ms - Assert other parties hashed messages (reliability check): 400.00ns (0.0%) - Retrieve auxiliary data: 6.30µs (0.0%) - Validate ψ: 253.93ms (30.4%) - Validate ψˆ: 251.17ms (30.1%) - Validate ψ_prime: 114.98ms (13.8%) - Compute Γ, Delta_i, delta_i, chi_i: 90.70ms (10.9%) - Prove ψ_prime_prime: 124.92ms (14.9%) - Unstaged: 900.00ns (0.0%) - Presig output: 115.45ms - Validate ψ_prime_prime: 115.01ms (99.6%) - Calculate presignature: 434.82µs (0.4%) - Unstaged: 300.00ns (0.0%) - Partial signing: 21.40µs - Signature reconstruction: 599.82µs ```
survived commented 1 year ago

@d86leader can't merge this one before #4, I need your approval there too

survived commented 1 year ago

Rebased onto m