Skip to content

Commit

Permalink
Merge pull request #79 from cryptoeng/gemss
Browse files Browse the repository at this point in the history
Add GeMSS
  • Loading branch information
dingens committed Jul 17, 2020
2 parents 80f73e5 + 4110fcc commit 99f32a9
Show file tree
Hide file tree
Showing 51 changed files with 354 additions and 0 deletions.
20 changes: 20 additions & 0 deletions signatures/gemss/gemss.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: GeMSS
type: sig
category: multivariate
year:
paper: 2017
candidate: 2017
problems:
- assumption: HFE
stateful: false
nist round: 2
authors:
- A. Casanova
- J.-C. Faugère
- G. Macario-Rat
- J. Patarin
- L. Perret
- J. Ryckeghem
sources:
- NIST Submission Paper (https://www-polsys.lip6.fr/Links/NIST/GeMSS_specification_round2.pdf)
- Changes for 2nd round (https://www-polsys.lip6.fr/Links/NIST/changes_round2_V2.pdf)
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/additional_128_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 52600000
enc|sign: 1040000000
dec|vrfy: 164000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/additional_192_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 275000000
enc|sign: 2960000000
dec|vrfy: 501000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/additional_256_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 916000000
enc|sign: 4940000000
dec|vrfy: 1120000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/additional_blue128_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 53800000
enc|sign: 164000000
dec|vrfy: 176000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/additional_blue192_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 278000000
enc|sign: 448000000
dec|vrfy: 512000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/additional_blue256_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 923000000
enc|sign: 6530000000
dec|vrfy: 1140000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/additional_red128_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 54300000
enc|sign: 5240000
dec|vrfy: 185000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/additional_red192_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 277000000
enc|sign: 13100000
dec|vrfy: 518000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/additional_red256_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 921000000
enc|sign: 21400000
dec|vrfy: 1170000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/mqsoft_128_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 38700000
enc|sign: 531000000
dec|vrfy: 106000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/mqsoft_192_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 175000000
enc|sign: 1800000000
dec|vrfy: 304000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/mqsoft_256_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 530000000
enc|sign: 3020000000
dec|vrfy: 678000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/mqsoft_blue128_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 39200000
enc|sign: 81300000
dec|vrfy: 136000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/mqsoft_blue192_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 174000000
enc|sign: 252000000
dec|vrfy: 325000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/mqsoft_blue256_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 530000000
enc|sign: 399000000
dec|vrfy: 684000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/mqsoft_red128_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 39500000
enc|sign: 2330000
dec|vrfy: 141000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/mqsoft_red192_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 173000000
enc|sign: 5970000
dec|vrfy: 334000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/mqsoft_red256_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 534000000
enc|sign: 399000000
dec|vrfy: 704000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/opt_128_haswell.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Xeon E3-1275 v3 (Haswell) 3.5 GHz (Turboboost off), 32GB RAM, CentOS Linux 7 (Core), gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 51600000
enc|sign: 1240000000
dec|vrfy: 163000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/opt_192_haswell.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Xeon E3-1275 v3 (Haswell) 3.5 GHz (Turboboost off), 32GB RAM, CentOS Linux 7 (Core), gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 270000000
enc|sign: 3320000000
dec|vrfy: 459000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/opt_256_haswell.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Xeon E3-1275 v3 (Haswell) 3.5 GHz (Turboboost off), 32GB RAM, CentOS Linux 7 (Core), gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 814000000
enc|sign: 5380000000
dec|vrfy: 973000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/opt_blue128_haswell.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Xeon E3-1275 v3 (Haswell) 3.5 GHz (Turboboost off), 32GB RAM, CentOS Linux 7 (Core), gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 52100000
enc|sign: 198000000
dec|vrfy: 170000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/opt_blue192_haswell.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Xeon E3-1275 v3 (Haswell) 3.5 GHz (Turboboost off), 32GB RAM, CentOS Linux 7 (Core), gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 268000000
enc|sign: 481000000
dec|vrfy: 468000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/opt_blue256_haswell.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Xeon E3-1275 v3 (Haswell) 3.5 GHz (Turboboost off), 32GB RAM, CentOS Linux 7 (Core), gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 810000000
enc|sign: 733000000
dec|vrfy: 989000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/opt_red128_haswell.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Xeon E3-1275 v3 (Haswell) 3.5 GHz (Turboboost off), 32GB RAM, CentOS Linux 7 (Core), gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 52400000
enc|sign: 5720000
dec|vrfy: 178000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/opt_red192_haswell.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Xeon E3-1275 v3 (Haswell) 3.5 GHz (Turboboost off), 32GB RAM, CentOS Linux 7 (Core), gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 264000000
enc|sign: 13700000
dec|vrfy: 474000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/opt_red256_haswell.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Xeon E3-1275 v3 (Haswell) 3.5 GHz (Turboboost off), 32GB RAM, CentOS Linux 7 (Core), gcc -O4 -mavx2 -mpclmul -mpopcnt -funroll-loops
timings:
unit: cycles
gen: 805000000
enc|sign: 22100000
dec|vrfy: 1010000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/ref_128_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O2 -msse2 -msse3 -mssse3 -msse4.1 -mpclmul
timings:
unit: cycles
gen: 145000000
enc|sign: 2730000000
dec|vrfy: 211000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/ref_192_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O2 -msse2 -msse3 -mssse3 -msse4.1 -mpclmul
timings:
unit: cycles
gen: 619000000
enc|sign: 6510000000
dec|vrfy: 585000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/ref_256_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O2 -msse2 -msse3 -mssse3 -msse4.1 -mpclmul
timings:
unit: cycles
gen: 1660000000
enc|sign: 10500000000
dec|vrfy: 1160000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/ref_blue128_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O2 -msse2 -msse3 -mssse3 -msse4.1 -mpclmul
timings:
unit: cycles
gen: 118000000
enc|sign: 530000000
dec|vrfy: 228000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/ref_blue192_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O2 -msse2 -msse3 -mssse3 -msse4.1 -mpclmul
timings:
unit: cycles
gen: 520000000
enc|sign: 1290000000
dec|vrfy: 592000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/ref_blue256_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O2 -msse2 -msse3 -mssse3 -msse4.1 -mpclmul
timings:
unit: cycles
gen: 1510000000
enc|sign: 2080000000
dec|vrfy: 1190000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/ref_red128_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O2 -msse2 -msse3 -mssse3 -msse4.1 -mpclmul
timings:
unit: cycles
gen: 91100000
enc|sign: 52000000
dec|vrfy: 239000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/ref_red192_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O2 -msse2 -msse3 -mssse3 -msse4.1 -mpclmul
timings:
unit: cycles
gen: 423000000
enc|sign: 126000000
dec|vrfy: 627000
6 changes: 6 additions & 0 deletions signatures/gemss/gemss/bench/ref_red256_skylake.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
platform: Intel Core i7-6600U (Skylake) 2.6 GHz (Turboboost off), 32GB RAM, Ubuntu 16.04.5 LTS, gcc -O2 -msse2 -msse3 -mssse3 -msse4.1 -mpclmul
timings:
unit: cycles
gen: 1310000000
enc|sign: 203000000
dec|vrfy: 1190000
3 changes: 3 additions & 0 deletions signatures/gemss/gemss/gemss.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
name: GeMSS
type: SIG
security notion: EUF-CMA
3 changes: 3 additions & 0 deletions signatures/gemss/gemss/impl/additional.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
name: Skylake
type: optimized
platform: c
7 changes: 7 additions & 0 deletions signatures/gemss/gemss/impl/mqsoft.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: MQsoft
type: optimized
platform: c
hardware features:
- avx2
- sse2
- ssse3
3 changes: 3 additions & 0 deletions signatures/gemss/gemss/impl/opt.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
name: Optimized
type: optimized
platform: c
3 changes: 3 additions & 0 deletions signatures/gemss/gemss/impl/ref.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
name: Reference
type: reference
platform: c
11 changes: 11 additions & 0 deletions signatures/gemss/gemss/param/128.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: GeMSS128
security level:
classical: 128
quantum: 74
nist category: 1
failure probability: -24204404
number of operations: inf
sizes:
sk: 16
pk: 352188
ct|sig: 33
11 changes: 11 additions & 0 deletions signatures/gemss/gemss/param/192.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: GeMSS192
security level:
classical: 192
quantum: 112
nist category: 3
failure probability: -6345039891167
number of operations: inf
sizes:
sk: 24
pk: 1237964
ct|sig: 52
11 changes: 11 additions & 0 deletions signatures/gemss/gemss/param/256.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: GeMSS256
security level:
classical: 256
quantum: 149
nist category: 5
failure probability: -1.3306513097844322e+19
number of operations: inf
sizes:
sk: 32
pk: 3040700
ct|sig: 72
11 changes: 11 additions & 0 deletions signatures/gemss/gemss/param/blue128.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: BlueGeMSS128
security level:
classical: 128
quantum: 74
nist category: 1
failure probability: -24204404
number of operations: inf
sizes:
sk: 16
pk: 363609
ct|sig: 34
11 changes: 11 additions & 0 deletions signatures/gemss/gemss/param/blue192.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: BlueGeMSS192
security level:
classical: 192
quantum: 112
nist category: 3
failure probability: -6345039891167
number of operations: inf
sizes:
sk: 24
pk: 1264116
ct|sig: 53
11 changes: 11 additions & 0 deletions signatures/gemss/gemss/param/blue256.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: BlueGeMSS256
security level:
classical: 256
quantum: 149
nist category: 5
failure probability: -1.3306513097844322e+19
number of operations: inf
sizes:
sk: 32
pk: 3087963
ct|sig: 74
11 changes: 11 additions & 0 deletions signatures/gemss/gemss/param/red128.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: RedGeMSS128
security level:
classical: 128
quantum: 74
nist category: 1
failure probability: -24204404
number of operations: inf
sizes:
sk: 16
pk: 375212
ct|sig: 36
11 changes: 11 additions & 0 deletions signatures/gemss/gemss/param/red192.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: RedGeMSS192
security level:
classical: 192
quantum: 112
nist category: 3
failure probability: -6345039891167
number of operations: inf
sizes:
sk: 24
pk: 1290543
ct|sig: 55
Loading

0 comments on commit 99f32a9

Please sign in to comment.