Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement simple tDec decryption share verification #46

Merged
merged 5 commits into from
Feb 6, 2023

Conversation

piotr-roslaniec
Copy link

@piotr-roslaniec piotr-roslaniec commented Jan 23, 2023

Benchmark Results

Decryption Share Verification

lines

@piotr-roslaniec piotr-roslaniec mentioned this pull request Jan 23, 2023
1 task
@github-actions
Copy link

Benchmark for 005dbf5

Click to view benchmark
Test Base PR %
ENCRYPT DECRYPT/decrypt/1024 5.8±0.00ms 5.8±0.00ms 0.00%
ENCRYPT DECRYPT/decrypt/16384 6.0±0.01ms 6.0±0.00ms 0.00%
ENCRYPT DECRYPT/decrypt/2048 5.8±0.00ms 5.8±0.00ms 0.00%
ENCRYPT DECRYPT/decrypt/256 5.8±0.00ms 5.8±0.00ms 0.00%
ENCRYPT DECRYPT/decrypt/4096 5.9±0.00ms 5.9±0.02ms 0.00%
ENCRYPT DECRYPT/decrypt/512 5.8±0.00ms 5.8±0.00ms 0.00%
ENCRYPT DECRYPT/decrypt/8192 5.9±0.00ms 5.9±0.01ms 0.00%
ENCRYPT DECRYPT/encrypt/1024 6.8±0.09ms 6.8±0.02ms 0.00%
ENCRYPT DECRYPT/encrypt/16384 7.0±0.04ms 7.0±0.01ms 0.00%
ENCRYPT DECRYPT/encrypt/2048 6.8±0.00ms 6.8±0.00ms 0.00%
ENCRYPT DECRYPT/encrypt/256 6.8±0.01ms 6.8±0.00ms 0.00%
ENCRYPT DECRYPT/encrypt/4096 6.8±0.01ms 6.8±0.01ms 0.00%
ENCRYPT DECRYPT/encrypt/512 6.8±0.01ms 6.8±0.01ms 0.00%
ENCRYPT DECRYPT/encrypt/8192 6.9±0.01ms 6.9±0.02ms 0.00%
SHARE COMBINE/share_combine_fast/16 7.1±0.00ms 7.1±0.00ms 0.00%
SHARE COMBINE/share_combine_fast/32 12.8±0.00ms 12.8±0.00ms 0.00%
SHARE COMBINE/share_combine_fast/4 2.9±0.00ms 2.9±0.00ms 0.00%
SHARE COMBINE/share_combine_fast/64 24.1±0.01ms 24.1±0.01ms 0.00%
SHARE COMBINE/share_combine_fast/8 4.3±0.00ms 4.3±0.00ms 0.00%
SHARE COMBINE/share_combine_simple/16 36.3±0.00ms 36.1±0.01ms -0.55%
SHARE COMBINE/share_combine_simple/32 69.6±0.02ms 69.2±0.01ms -0.57%
SHARE COMBINE/share_combine_simple/4 9.3±0.08ms 9.2±0.00ms -1.08%
SHARE COMBINE/share_combine_simple/64 146.5±0.07ms 145.6±0.26ms -0.61%
SHARE COMBINE/share_combine_simple/8 18.1±0.00ms 18.0±0.00ms -0.55%
SHARE CREATE/share_create_fast/16 98.3±0.02ms 98.3±0.02ms 0.00%
SHARE CREATE/share_create_fast/32 197.3±2.41ms 196.8±0.51ms -0.25%
SHARE CREATE/share_create_fast/4 24.6±0.02ms 24.6±0.01ms 0.00%
SHARE CREATE/share_create_fast/64 393.0±0.07ms 392.9±0.06ms -0.03%
SHARE CREATE/share_create_fast/8 49.1±0.08ms 49.5±1.19ms +0.81%
SHARE CREATE/share_create_simple/16 127.2±0.01ms 132.3±0.04ms +4.01%
SHARE CREATE/share_create_simple/32 254.8±0.04ms 264.9±0.08ms +3.96%
SHARE CREATE/share_create_simple/4 31.9±0.28ms 33.1±0.01ms +3.76%
SHARE CREATE/share_create_simple/64 508.9±0.11ms 529.4±0.08ms +4.03%
SHARE CREATE/share_create_simple/8 63.7±0.07ms 66.4±0.57ms +4.24%
SHARE PREPARE/share_prepare_fast/16 19.4±0.01ms 19.4±0.00ms 0.00%
SHARE PREPARE/share_prepare_fast/32 39.9±0.01ms 39.9±0.01ms 0.00%
SHARE PREPARE/share_prepare_fast/4 4.5±0.00ms 4.5±0.00ms 0.00%
SHARE PREPARE/share_prepare_fast/64 82.2±0.04ms 82.2±0.03ms 0.00%
SHARE PREPARE/share_prepare_fast/8 9.5±0.01ms 9.5±0.00ms 0.00%
SHARE PREPARE/share_prepare_simple/16 1679.0±10.05µs 1686.5±7.23µs +0.45%
SHARE PREPARE/share_prepare_simple/32 7.4±0.03ms 7.4±0.03ms 0.00%
SHARE PREPARE/share_prepare_simple/4 29.1±0.01µs 29.1±0.01µs 0.00%
SHARE PREPARE/share_prepare_simple/64 30.5±0.07ms 30.4±0.04ms -0.33%
SHARE PREPARE/share_prepare_simple/8 310.0±0.29µs 308.7±0.20µs -0.42%
final_exponentiation/BLS12-381 final_exponentiation/1 1149.2±9.06µs 1146.8±3.69µs -0.21%
final_exponentiation/BLS12-381 final_exponentiation/16 1153.7±5.58µs 1153.2±4.03µs -0.04%
final_exponentiation/BLS12-381 final_exponentiation/2 1157.1±38.46µs 1149.5±4.50µs -0.66%
final_exponentiation/BLS12-381 final_exponentiation/32 1150.3±4.06µs 1151.7±3.67µs +0.12%
final_exponentiation/BLS12-381 final_exponentiation/4 1150.5±4.46µs 1150.7±4.40µs +0.02%
final_exponentiation/BLS12-381 final_exponentiation/64 1152.2±6.19µs 1149.3±3.97µs -0.25%
final_exponentiation/BLS12-381 final_exponentiation/8 1149.6±4.81µs 1149.7±5.07µs +0.01%
into_affine/G1Projective 7.0±0.02µs 6.9±0.00µs -1.43%
into_affine/G2Projective 8.3±0.01µs 8.1±0.05µs -2.41%
into_projective/G1Affine 8.2±0.00ns 8.2±0.01ns 0.00%
into_projective/G2Affine 19.3±0.24ns 19.7±0.01ns +2.07%
miller_loop/BLS12-381 miller_loop/1 592.4±2.05µs 591.5±2.07µs -0.15%
miller_loop/BLS12-381 miller_loop/16 6.0±0.01ms 6.0±0.00ms 0.00%
miller_loop/BLS12-381 miller_loop/2 954.3±13.47µs 952.9±1.73µs -0.15%
miller_loop/BLS12-381 miller_loop/32 11.6±0.02ms 11.6±0.01ms 0.00%
miller_loop/BLS12-381 miller_loop/4 1672.4±5.73µs 1672.0±5.41µs -0.02%
miller_loop/BLS12-381 miller_loop/64 23.0±0.01ms 23.0±0.15ms 0.00%
miller_loop/BLS12-381 miller_loop/8 3.1±0.00ms 3.1±0.00ms 0.00%
mul/G1Affine 258.9±0.18µs 258.7±0.39µs -0.08%
mul/G1Projective 307.3±2.41µs 307.1±0.18µs -0.07%
mul/G2Affine 807.5±13.56µs 806.5±4.91µs -0.12%
mul/G2Projective 969.5±1.50µs 971.5±7.43µs +0.21%
pairing/BLS12-381 pairing 2.1±0.01ms 2.1±0.00ms 0.00%
pow/Fqk 2.3±0.00ms 2.3±0.00ms 0.00%
prepare_gx/G1Affine 6.4±0.01ns 6.4±0.03ns 0.00%
prepare_gx/G2Affine 197.7±0.53µs 197.4±0.13µs -0.15%
product_of_pairings/BLS12-381 product_of_pairings/1 1846.1±1.48µs 1847.9±1.87µs +0.10%
product_of_pairings/BLS12-381 product_of_pairings/16 7.2±0.00ms 7.2±0.00ms 0.00%
product_of_pairings/BLS12-381 product_of_pairings/2 2.2±0.00ms 2.2±0.00ms 0.00%
product_of_pairings/BLS12-381 product_of_pairings/32 12.9±0.00ms 12.9±0.02ms 0.00%
product_of_pairings/BLS12-381 product_of_pairings/4 2.9±0.00ms 2.9±0.00ms 0.00%
product_of_pairings/BLS12-381 product_of_pairings/64 24.3±0.01ms 24.3±0.01ms 0.00%
product_of_pairings/BLS12-381 product_of_pairings/8 4.4±0.00ms 4.4±0.00ms 0.00%
random_polynomial_evaluation/random_polynomial_ark/16 605.8±0.13ns 574.8±0.20ns -5.12%
random_polynomial_evaluation/random_polynomial_ark/2 89.4±0.09ns 87.5±0.05ns -2.13%
random_polynomial_evaluation/random_polynomial_ark/32 1045.3±0.13ns 1071.8±0.21ns +2.54%
random_polynomial_evaluation/random_polynomial_ark/4 142.5±0.07ns 141.2±2.15ns -0.91%
random_polynomial_evaluation/random_polynomial_ark/64 2.0±0.00µs 1999.3±0.89ns -0.03%
random_polynomial_evaluation/random_polynomial_ark/8 319.7±0.07ns 301.0±0.18ns -5.85%
random_polynomial_evaluation/random_polynomial_naive/16 3.0±0.00µs 3.0±0.00µs 0.00%
random_polynomial_evaluation/random_polynomial_naive/2 462.0±9.82ns 448.5±0.13ns -2.92%
random_polynomial_evaluation/random_polynomial_naive/32 5.8±0.00µs 5.8±0.02µs 0.00%
random_polynomial_evaluation/random_polynomial_naive/4 825.2±2.67ns 814.5±0.52ns -1.30%
random_polynomial_evaluation/random_polynomial_naive/64 11.5±0.00µs 11.5±0.00µs 0.00%
random_polynomial_evaluation/random_polynomial_naive/8 1538.6±0.17ns 1536.3±0.93ns -0.15%

@piotr-roslaniec piotr-roslaniec marked this pull request as ready for review January 23, 2023 18:55
Base automatically changed from validity-checks to main February 1, 2023 16:21
@piotr-roslaniec piotr-roslaniec merged commit 530de97 into main Feb 6, 2023
@piotr-roslaniec piotr-roslaniec deleted the verify-simple-tdec-shares branch February 6, 2023 17:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Completed
Development

Successfully merging this pull request may close these issues.

Research and implement decryption share verification for simple tDec
2 participants