VAMPIRE

eBACS: ECRYPT Benchmarking of Cryptographic Systems


ECRYPT II
General information:IntroductioneBASHeBASCeBAEADeBATSSUPERCOPXBXComputersArch
How to submit new software:Tipshashstreamaeaddhkemencryptsign
List of primitives measured:lwcsha3hashstreamlwccaesaraeaddhkemencryptsign
Measurements:lwcsha3hashstreamlwccaesaraeaddhkemencryptsign
List of subroutines:verifydecodeencodesortcorehashblocksxofscalarmult

Measurements of public-key signature systems on one machine: armeabi; Cortex-A17 (410fc0d1); 2014 Rockchip RK3288; 4 x 1800MHz; tinker, supercop-20240107

[Page version: 20240726 23:45:48]

eBATS (ECRYPT Benchmarking of Asymmetric Systems) is a project to measure the performance of public-key systems. This page presents benchmark results collected in eBATS for public-key signature systems:

For signature systems that support "message recovery", the space for a signature on a long message is shorter than the space for a signature on a short message.

Each table row lists the first quartile of many speed measurements, the median of many speed measurements, the third quartile of many speed measurements, and the name of the primitive. Measurements with large variance are indicated in red with question marks. The symbol T: (starting with supercop-20200816) means that the SUPERCOP database at the time of benchmarking did not list constant time as a goal for this implementation. The symbol T!!! means that constant time was listed as a goal for this implementation, but that the implementation failed TIMECOP. (TIMECOP failures are not necessarily security issues; they can sometimes be resolved by, e.g., declaring that a rejection-sampling condition is safe to declassify.)

There is a separate page with more information about each signature system and each implementation. Designers and implementors interested in submitting new signature systems and new implementations of existing signature systems should read the call for submissions.


Implementation notes

Graphs: (pkcycles,pkbytes) (smcycles,sbytes) (mcycles,pkbytes) (mcycles,sbytes) (pkbytes,sbytes)

NISTPQC graphs: (pkcycles,pkbytes) (smcycles,sbytes) (mcycles,pkbytes) (mcycles,sbytes) (pkbytes,sbytes)

Measurement failures: ntrumls401x, ntrumls439x, ntrumls593x, ntrumls743x, qtesla128, qtesla192, qtesla256

Cycles to generate a key pair
25%50%75%system
239662405424160picnicl1full
240272414024260picnic3l1
336843376033920picnicl3full
336883377333964picnic3l3
432534338543778picnicl5full
432944343243608picnic3l5
464564665047022picnicl1fs
464914668047150picnicl1ur
485034859048866
T:
picnic2l1fs
921329243092767picnicl3ur
923409259092947picnicl3fs
953989551895918
T:
picnic2l3fs
123891124045125218picnicl5ur
124260124530125536picnicl5fs
159660160238160906ed25519
191309191426191710
T:
picnic2l5fs
444802446220452141
T:
ecdonaldp256
177390317841851801577
T:
donald1024
226041122753102302078
T:
ecdonaldk163
236754023893842418088
T:
ecdonaldp160
237998924048962426580
T:
ecdonaldb163
338326434017143423589
T:
ecdonaldp192
379960138274743889518
T:
ecdonaldk233
408257240932884103512
T:
mqdss48
408027041419884212126
T:
ecdonaldb233
463309446488224658324
T:
ecdonaldp224
522993852511145264168
T:
donald2048
677414068422646891616
T:
ecdonaldk283
737304074496467498872
T:
ecdonaldb283
5718292?7796911?13110758?
T:
qtesla1
951131295198849534476
T:
mqdss64
133221681336936613450542
T:
ecdonaldk409
147869141491829015159088
T:
ecdonaldb409
168698301689588416954193
T:
ecdonaldp384
12641174?18506072?24840093?
T:
qtesla3f
233749692338509023419042
T:
sphincs256
22632770?26156568?33671197?
T:
qtesla1p
287880902884791629024867
T:
luov4849242
310738743116618431206063
T:
ecdonaldk571
330337443308792033158106
T:
sphincsf128harakasimple
343380063463196634806198
T:
ecdonaldb571
25356314?37878264?50679793?
T:
qtesla3s
382248323827040738416089
T:
sphincsf128shake256simple
401271594031210840491850
T:
luov863256
418366864225344242371744
T:
ecdonaldp521
39069821?42735942?53469406?
T:
falcon512tree
464483304647639446611310
T:
sphincsf128harakarobust
487669984885060748994927
T:
sphincsf192harakasimple
44948046?52173222?60717482?
T:
falcon512dyn
561671855618740656332480
T:
sphincsf192shake256simple
682052736832194568394054
T:
sphincsf192harakarobust
733670577353502273634526
T:
sphincsf128shake256robust
780557047830416179023832
T:
rainbow1aclassic363232
836004378384265384473920
T:
rainbow1acompres363232
837179788388495384074480
T:
luov6468330
984447439862709399171057
T:
rainbow1acyclicc363232
107816618107938952108047000
T:
sphincsf192shake256robust
129637835129750622129925104
T:
sphincsf256harakasimple
122615270135192607150231954
T:
falcon1024tree
137251968137525560137782248
T:
luov890351
135618702143683686163983744
T:
falcon1024dyn
148662491148756110148858614
T:
sphincsf256shake256simple
127110802?158874307?179906880?
T:
qtesla3p
176085316176453549177081305
T:
luov8086399
184494298184678146184782410
T:
sphincsf256harakarobust
249078961249517853249973341
T:
luov8117404
285765141285973408286223370
T:
sphincsf256shake256robust
457745255458066272458436146
T:
sflashv2
792857061793831520795581830
T:
rainbow3cclassic683248
872523793873566775875489515
T:
rainbow3ccyclicc683248
872975932875170959878401198
T:
rainbow3ccompres683248
105373914010542798401054767239
T:
sphincss128harakasimple
122836092312287101061229179833
T:
sphincss128shake256simple
146458828914653499641466294525
T:
sphincss128harakarobust
155207918915525051221553502344
T:
sphincss192harakasimple
180064950218017427041802532709
T:
sphincss192shake256simple
207329803420744274632075492684
T:
sphincss256harakasimple
214670152521520254732154756419
T:
rainbow5cclassic963664
235415981223547426882355496186
T:
sphincss128shake256robust
238077076523814076092381725041
T:
sphincss256shake256simple
238365305123854071202389024389
T:
rainbow5ccyclicc963664
238508266923878570602392523808
T:
rainbow5ccompres963664
295335149629542221182954917743
T:
sphincss256harakarobust
552946823255296563775530524130
T:
redgemss128v2
568359958756840246665684585410
T:
bluegemss128v2
155096075171591498191816352938684
T:
pqrsa15
273599408032736183439527363526533
T:
redgemss192v2
795364051127957415443679614170123
T:
redgemss256v2
Cycles to sign 59 bytes
25%50%75%system
180932181383181839ed25519
226018226802227806
T:
sflashv2
655351657932713798
T:
rainbow1aclassic363232
698770699846700904
T:
ecdonaldp256
899156901100952462
T:
rainbow1acyclicc363232
143260414389141451762
T:
donald1024
164446416630371680980
T:
falcon512tree
1008204?1835576?4384438?
T:
qtesla1
244299424559822471848
T:
ecdonaldk163
251833025236542539138
T:
falcon512dyn
254446225647642585278
T:
ecdonaldp160
256188025745922597180
T:
ecdonaldb163
2239748?3292484?5411742?
T:
qtesla3f
330909433357623355616
T:
falcon1024tree
358042435897343609978
T:
donald2048
357365435928563624650
T:
ecdonaldp192
399067440303944068938
T:
ecdonaldk233
425660643176224363574
T:
ecdonaldb233
470123047430164753943
T:
rainbow3ccyclicc683248
471847447465784760890
T:
rainbow3cclassic683248
488068049117044929558
T:
ecdonaldp224
513450851532345173648
T:
falcon1024dyn
4206768?5897176?8653878?
T:
qtesla1p
719894872575527319312
T:
ecdonaldk283
780793078566347933966
T:
ecdonaldb283
5397006?9149854?14690054?
T:
qtesla3s
99928891001018310045930
T:
rainbow5cclassic963664
99943501001717610046278
T:
rainbow5ccyclicc963664
143250401442490214473274
T:
ecdonaldk409
156090141586589615928038
T:
ecdonaldb409
177421041776512817793420
T:
ecdonaldp384
197688641980394819818612
T:
luov863256
216039502163988221665334picnicl1full
14001368?30655080?43813292?
T:
qtesla3p
306361393067401630754920picnicl1fs
333752923368615633744158
T:
ecdonaldk571
358640943591764236063868picnicl1ur
369113103743729037498232
T:
ecdonaldb571
425822364262375442749212picnicl3full
431166544446696644603770
T:
ecdonaldp521
563172895654719856991196
T:
rainbow1acompres363232
635683386368194063805972
T:
luov890351
645039886463063264900301
T:
luov4849242
645040026466982864827798
T:
mqdss48
703828997048482270657989picnicl5full
791046647931071079412507picnic3l1
814715738166350481717750picnicl3fs
965915999669437396808102picnicl3ur
106414932106595044106721690
T:
luov8117404
144086406144175500144258681picnicl5fs
166926170167066884167174498picnicl5ur
174068526174231996174377899picnic3l3
202342725202511825202668522
T:
mqdss64
227664330230755634231697232
T:
luov6468330
301701492302079608302385904picnic3l5
230436981?321032410?430587729?
T:
redgemss128v2
439940358440022262440164892
T:
sphincs256
493869032495230920496343427
T:
luov8086399
514356926515114682515621550
T:
rainbow3ccompres683248
568461696569446205570370764
T:
pqrsa15
103886332010400825481040539172
T:
picnic2l1fs
118630274011872978471187860844
T:
sphincsf128harakasimple
120669973412085198311209349244
T:
sphincsf128shake256simple
135136628713538267641355661616
T:
rainbow5ccompres963664
140395551214047776761405690783
T:
sphincsf192harakasimple
153268966015333567041534071142
T:
sphincsf192shake256simple
1310724168?1578438118?1858358455?
T:
redgemss192v2
173221409617335379621734855909
T:
sphincsf128harakarobust
205633264320571566232058093181
T:
sphincsf192harakarobust
220911754622106737132211827069
T:
sphincsf128shake256robust
2357827002?2760130713?3681731657?
T:
redgemss256v2
288149369328835814042884660005
T:
sphincsf192shake256robust
336765374033684984743369307233
T:
picnic2l3fs
340252998534045343163407764466
T:
sphincsf256shake256simple
346568824434668794333467901900
T:
sphincsf256harakasimple
516949448751711345485173853150
T:
sphincsf256harakarobust
632538837463273395656329930028
T:
sphincsf256shake256robust
737741832273780739857379537912
T:
picnic2l5fs
12228494415?14674849760?17117363565?
T:
bluegemss128v2
182428993181824544496518253679108
T:
sphincss128shake256simple
189431680951894549148018949282146
T:
sphincss128harakasimple
278182686452782132684027830920499
T:
sphincss128harakarobust
283773092842838128716028385930654
T:
sphincss256shake256simple
307006053393071400834530719287669
T:
sphincss256harakasimple
327147866183272549332532731205493
T:
sphincss128shake256robust
380457369923806120090038077303253
T:
sphincss192shake256simple
418470934884187965947141883950076
T:
sphincss192harakasimple
464982211444653343148546536485356
T:
sphincss256harakarobust
Cycles to verify 59 bytes
25%50%75%system
116884119093121616
T:
rainbow1aclassic363232
222134224764230252
T:
sflashv2
246373254442255340
T:
falcon512tree
249676257942258637
T:
falcon512dyn
467512467980468802
T:
qtesla1
468552470462472924ed25519
513678516479521966
T:
falcon1024dyn
515572517068517661
T:
falcon1024tree
782480786780791126
T:
rainbow3cclassic683248
823231837997856981
T:
redgemss128v2
825474840744869178
T:
bluegemss128v2
9984099992191000608
T:
qtesla3s
9987769994321004130
T:
qtesla3f
109818011058681116978
T:
donald1024
171230117303271746878
T:
rainbow5cclassic963664
188460218859621902314
T:
ecdonaldp256
223409022550402268320
T:
ecdonaldp160
244899824618782475802
T:
qtesla1p
306044030803523108144
T:
ecdonaldp192
304535930865413103154
T:
donald2048
402748440661344087984
T:
ecdonaldp224
462008846423444661659
T:
ecdonaldk163
484289248746664916328
T:
ecdonaldb163
551203855821485637384
T:
sphincs256
769383477542577839862
T:
ecdonaldk233
749787177775208158640
T:
redgemss192v2
826146283395648414068
T:
ecdonaldb233
855163286522008846172
T:
redgemss256v2
130999311315011813186606
T:
qtesla3p
134170101349323213545950
T:
ecdonaldp384
139847841405022014099598
T:
ecdonaldk283
146929681469991814731326
T:
luov863256
151327611521002015279170
T:
ecdonaldb283
170495641707468617095290picnicl1full
198642622038763220749493
T:
sphincss128shake256simple
212296442152661122021848
T:
sphincss128harakasimple
264591642648195626511918picnicl1fs
275770242785730428023508
T:
ecdonaldk409
297731273039726630649795
T:
sphincss192shake256simple
304265173045169030507736picnicl1ur
303198723061339231017962
T:
ecdonaldb409
314955133185913432267516
T:
sphincss192harakasimple
319203283203342832270918
T:
rainbow1acompres363232
313385503207250932430531
T:
sphincss128harakarobust
320832483223224232451658
T:
rainbow1acyclicc363232
321896063254370232685566
T:
ecdonaldp521
346939243476743434830794picnicl3full
386731203912839139690221
T:
sphincss256shake256simple
393650674019498641263061
T:
sphincss128shake256robust
421345604216750242366929
T:
luov4849242
440901604456579445101054
T:
sphincss256harakasimple
454100104638391246692620
T:
mqdss48
471098664716118647444450
T:
luov890351
483133914914390050265482
T:
sphincsf128shake256simple
491260164959987050301136
T:
sphincsf128harakasimple
559834475608777656271624picnic3l1
581837355828457158482858picnicl5full
644342046473372464998342
T:
ecdonaldk571
680095456871621869794353
T:
sphincss256harakarobust
713674887156856571719490
T:
pqrsa15
714612227191979472185808
T:
ecdonaldb571
715127677253080873772034
T:
sphincsf128harakarobust
725798547274423272866552picnicl3fs
764023427708189977830904
T:
sphincsf192harakasimple
776067167841018278948643
T:
sphincsf192shake256simple
790492387959667180554598
T:
sphincsf256shake256simple
817831268187891682016298
T:
luov8117404
822945538301513283570500
T:
sphincsf256harakasimple
839184698407583184200908picnicl3ur
962076989736967298978804
T:
sphincsf128shake256robust
113813257114611452115252962
T:
sphincsf192harakarobust
123038250123771252125122038
T:
sphincsf256harakarobust
124170938124327036124504529
T:
luov6468330
124939434125157070125265446picnic3l3
129358870129460041129562268picnicl5fs
145664052145783417145924946picnicl5ur
146397120147398150149249218
T:
mqdss64
152439619154202567155414278
T:
sphincsf192shake256robust
155673502156906456158612470
T:
sphincsf256shake256robust
193843968194866390195516133
T:
rainbow3ccompres683248
193177385196132129197094157
T:
rainbow3ccyclicc683248
199214260199474856199649292picnic3l5
232822628232947674233124405
T:
luov8086399
329972806330183574330369787
T:
picnic2l1fs
433752866434361450436126039
T:
rainbow5ccyclicc963664
436141094437311978438247457
T:
rainbow5ccompres963664
803856962804066100804437204
T:
picnic2l3fs
153348497215340756121534741318
T:
picnic2l5fs