VAMPIRE
eBACS: ECRYPT Benchmarking of Cryptographic Systems
ECRYPT II
General information:
Introduction
eBASH
eBASC
eBAEAD
eBATS
SUPERCOP
XBX
Computers
Arch
How to submit new software:
Tips
hash
stream
aead
dh
kem
encrypt
sign
List of primitives measured:
lwc
sha3
hash
stream
lwc
caesar
aead
dh
kem
encrypt
sign
Measurements:
lwc
sha3
hash
stream
lwc
caesar
aead
dh
kem
encrypt
sign
List of subroutines:
verify
decode
encode
sort
core
hashblocks
xof
scalarmult
List of core subroutines
Primitive
Description
Designers
aes128decrypt
Vincent Rijmen
Joan Daemen
aes128encrypt
Vincent Rijmen
Joan Daemen
aes256decrypt
Vincent Rijmen
Joan Daemen
aes256encrypt
Vincent Rijmen
Joan Daemen
hsalsa20
HSalsa20 producing 32 bytes of output from 16 bytes of input, 32 bytes of key, 16 bytes of constants
Daniel J. Bernstein
inv3sntrup653
inv3sntrup761
inv3sntrup857
inv3sntrup953
inv3sntrup1013
inv3sntrup1277
invhrss701
invsntrup653
invsntrup761
invsntrup857
invsntrup953
invsntrup1013
invsntrup1277
keccakf160032bits
keccakf160064bits
mult3sntrup653
mult3sntrup761
mult3sntrup857
mult3sntrup953
mult3sntrup1013
mult3sntrup1277
multsntrup653
multsntrup761
multsntrup857
multsntrup953
multsntrup1013
multsntrup1277
rainbowcalsecret363232
rainbowcalsecret683248
rainbowcalsecret963664
salsa20
Salsa20 core producing 64 bytes of output from 16 bytes of input, 32 bytes of key, 16 bytes of constants
Daniel J. Bernstein
salsa208
Salsa20/8 core producing 64 bytes of output from 16 bytes of input, 32 bytes of key, 16 bytes of constants
Daniel J. Bernstein
salsa2012
Salsa20/12 core producing 64 bytes of output from 16 bytes of input, 32 bytes of key, 16 bytes of constants
Daniel J. Bernstein
scale3sntrup653
scale3sntrup761
scale3sntrup857
scale3sntrup953
scale3sntrup1013
scale3sntrup1277
weightsntrup653
weightsntrup761
weightsntrup857
weightsntrup953
weightsntrup1013
weightsntrup1277
wforcesntrup653
wforcesntrup761
wforcesntrup857
wforcesntrup953
wforcesntrup1013
wforcesntrup1277
Implementations
Primitive
Implementation
Authors
aes128decrypt
dolbeau/aesenc-int
Romain Dolbeau
aes128decrypt
dolbeau/armv8crypto
Romain Dolbeau
aes128decrypt
dolbeau/std-1rt-nodk
Romain Dolbeau
aes128decrypt
dolbeau/std-2rt-nodk
Romain Dolbeau
aes128decrypt
dolbeau/std-4rt-nodk
Romain Dolbeau
aes128decrypt
openssl
Daniel J. Bernstein (wrapper around OpenSSL)
aes128decrypt
ref
Daniel J. Bernstein
aes128encrypt
dolbeau/aesenc-int
Romain Dolbeau
aes128encrypt
dolbeau/armv8crypto
Romain Dolbeau
aes128encrypt
dolbeau/std-1ft
Romain Dolbeau
aes128encrypt
dolbeau/std-2ft
Romain Dolbeau
aes128encrypt
dolbeau/std-4ft
Romain Dolbeau
aes128encrypt
openssl
Daniel J. Bernstein (wrapper around OpenSSL)
aes128encrypt
ref
Daniel J. Bernstein
aes256decrypt
dolbeau/aesenc-int
Romain Dolbeau
aes256decrypt
dolbeau/armv8crypto
Romain Dolbeau
aes256decrypt
dolbeau/std-1rt-nodk
Romain Dolbeau
aes256decrypt
dolbeau/std-2rt-nodk
Romain Dolbeau
aes256decrypt
dolbeau/std-4rt-nodk
Romain Dolbeau
aes256decrypt
openssl
Daniel J. Bernstein (wrapper around OpenSSL)
aes256decrypt
ref
Daniel J. Bernstein
aes256encrypt
dolbeau/aesenc-int
Romain Dolbeau
aes256encrypt
dolbeau/armv8crypto
Romain Dolbeau
aes256encrypt
dolbeau/std-1ft
Romain Dolbeau
aes256encrypt
dolbeau/std-2ft
Romain Dolbeau
aes256encrypt
dolbeau/std-4ft
Romain Dolbeau
aes256encrypt
openssl
Daniel J. Bernstein (wrapper around OpenSSL)
aes256encrypt
ref
Daniel J. Bernstein
hsalsa20
ref2
Daniel J. Bernstein
hsalsa20
ref
Daniel J. Bernstein
inv3sntrup653
avx
inv3sntrup653
bits64
inv3sntrup653
bits
inv3sntrup653
ref
inv3sntrup761
avx
inv3sntrup761
bits64
inv3sntrup761
bits
inv3sntrup761
ref
inv3sntrup857
avx
inv3sntrup857
bits64
inv3sntrup857
bits
inv3sntrup857
ref
inv3sntrup953
avx
inv3sntrup953
bits64
inv3sntrup953
bits
inv3sntrup953
ref
inv3sntrup1013
avx
inv3sntrup1013
bits64
inv3sntrup1013
bits
inv3sntrup1013
ref
inv3sntrup1277
avx
inv3sntrup1277
bits64
inv3sntrup1277
bits
inv3sntrup1277
ref
invhrss701
avx2
invhrss701
faster921
invhrss701
faster
invhrss701
ref
invhrss701
simpler
invsntrup653
avx
invsntrup653
portable
invsntrup653
ref
invsntrup761
avx
invsntrup761
jumpdivsteps
Daniel J. Bernstein
Ming-Shing Chen
Gregor Seiler
Bo-Yin Yang
invsntrup761
portable
invsntrup761
ref
invsntrup857
avx
invsntrup857
portable
invsntrup857
ref
invsntrup953
avx
invsntrup953
portable
invsntrup953
ref
invsntrup1013
avx
invsntrup1013
portable
invsntrup1013
ref
invsntrup1277
avx
invsntrup1277
portable
invsntrup1277
ref
keccakf160032bits
inplace1600ARMv6M
keccakf160032bits
inplace1600ARMv7A
keccakf160032bits
inplace1600ARMv7M
keccakf160032bits
inplace1600bi
keccakf160032bits
optimized1600ARMv6Mu1
keccakf160032bits
optimized1600ARMv6Mu2
keccakf160032bits
reference1600-32bits
keccakf160064bits
compact1600
keccakf160064bits
optimized1600AsmX86-64
keccakf160064bits
optimized1600AsmX86-64Apple
keccakf160064bits
optimized1600AsmX86-64shld
keccakf160064bits
optimized1600lcu6
keccakf160064bits
optimized1600lcufull
keccakf160064bits
optimized1600lcufullshld
keccakf160064bits
optimized1600u6
keccakf160064bits
optimized1600ufull
keccakf160064bits
optimized1600XOPu6
keccakf160064bits
optimized1600XOPufull
keccakf160064bits
reference1600
mult3sntrup653
avx800
mult3sntrup653
avx
mult3sntrup653
compact
mult3sntrup653
ref
mult3sntrup653
round2
mult3sntrup761
32
mult3sntrup761
avx2unsigned
Ming-Shing Chen
mult3sntrup761
avx800
mult3sntrup761
avx
mult3sntrup761
compact
mult3sntrup761
ref
mult3sntrup761
round1
mult3sntrup761
round2
mult3sntrup857
avx800
mult3sntrup857
avx
mult3sntrup857
compact
mult3sntrup857
ref
mult3sntrup857
round2
mult3sntrup953
avx800
mult3sntrup953
avx
mult3sntrup953
compact
mult3sntrup953
ref
mult3sntrup1013
avx800
mult3sntrup1013
avx
mult3sntrup1013
compact
mult3sntrup1013
ref
mult3sntrup1277
avx800
mult3sntrup1277
avx
mult3sntrup1277
compact
mult3sntrup1277
ref
multsntrup653
avx800
multsntrup653
avx
multsntrup653
compact
multsntrup653
ref
multsntrup653
round2
multsntrup761
avx800
multsntrup761
avx
multsntrup761
compact
multsntrup761
ref
multsntrup761
round1
multsntrup761
round2
multsntrup857
avx800
multsntrup857
avx
multsntrup857
compact
multsntrup857
ref
multsntrup857
round2
multsntrup953
avx800
multsntrup953
avx
multsntrup953
compact
multsntrup953
ref
multsntrup1013
avx800
multsntrup1013
avx
multsntrup1013
compact
multsntrup1013
ref
multsntrup1277
avx800
multsntrup1277
avx
multsntrup1277
compact
multsntrup1277
ref
rainbowcalsecret363232
amd64
rainbowcalsecret363232
avx2
rainbowcalsecret363232
ref
rainbowcalsecret363232
ssse3
rainbowcalsecret683248
amd64
rainbowcalsecret683248
avx2
rainbowcalsecret683248
ref
rainbowcalsecret683248
ssse3
rainbowcalsecret963664
amd64
rainbowcalsecret963664
avx2
rainbowcalsecret963664
ref
rainbowcalsecret963664
ssse3
salsa20
armneon2
Daniel J. Bernstein
salsa20
armneon
Daniel J. Bernstein
salsa20
ref
Daniel J. Bernstein
salsa208
armneon2
Daniel J. Bernstein
salsa208
armneon
Daniel J. Bernstein
salsa208
ref
Daniel J. Bernstein
salsa2012
armneon2
Daniel J. Bernstein
salsa2012
armneon
Daniel J. Bernstein
salsa2012
ref
Daniel J. Bernstein
scale3sntrup653
avx
scale3sntrup653
ref
scale3sntrup761
avx
scale3sntrup761
ref
scale3sntrup857
avx
scale3sntrup857
ref
scale3sntrup953
avx
scale3sntrup953
ref
scale3sntrup1013
avx
scale3sntrup1013
ref
scale3sntrup1277
avx
scale3sntrup1277
ref
weightsntrup653
avx
weightsntrup653
ref
weightsntrup761
avx
weightsntrup761
ref
weightsntrup857
avx
weightsntrup857
ref
weightsntrup953
avx
weightsntrup953
ref
weightsntrup1013
avx
weightsntrup1013
ref
weightsntrup1277
avx
weightsntrup1277
ref
wforcesntrup653
avx
wforcesntrup653
ref2
wforcesntrup653
ref
wforcesntrup653
simpler
wforcesntrup761
avx
wforcesntrup761
ref2
wforcesntrup761
ref
wforcesntrup761
simpler
wforcesntrup857
avx
wforcesntrup857
ref2
wforcesntrup857
ref
wforcesntrup857
simpler
wforcesntrup953
avx
wforcesntrup953
ref2
wforcesntrup953
ref
wforcesntrup953
simpler
wforcesntrup1013
avx
wforcesntrup1013
ref2
wforcesntrup1013
ref
wforcesntrup1013
simpler
wforcesntrup1277
avx
wforcesntrup1277
ref2
wforcesntrup1277
ref
wforcesntrup1277
simpler
Version
This is version 2024.11.20 of the primitives-core.html web page. This web page is in the public domain.