cloudflare / circl

CIRCL: Cloudflare Interoperable Reusable Cryptographic Library
http://blog.cloudflare.com/introducing-circl
Other
1.23k stars 136 forks source link

Adding Ascon, an AEAD lightweight cipher. #400

Closed armfazh closed 1 year ago

armfazh commented 1 year ago

Reference: https://ascon.iaik.tugraz.at/index.html

Benchmarks: old= naive substitution layer new= 64-bit operations (constant-time)

benchmark Operation old MB/s new MB/s speedup
Ascon128 Open-64-8 1.71 125.59 73.44x
Ascon128 Seal-64-8 1.58 123.48 78.15x
Ascon128 Open-1350-8 2.86 211.97 74.12x
Ascon128 Seal-1350-8 2.72 210.11 77.25x
Ascon128 Open-8192-8 3.06 203.36 66.46x
Ascon128 Seal-8192-8 2.91 209.82 72.10x
Ascon128a Open-64-8 2.19 157.34 71.84x
Ascon128a Seal-64-8 2.09 155.94 74.61x
Ascon128a Open-1350-8 3.94 309.84 78.64x
Ascon128a Seal-1350-8 4.15 290.40 69.98x
Ascon128a Open-8192-8 4.14 308.30 74.47x
Ascon128a Seal-8192-8 4.17 301.98 72.42x
bwesterb commented 1 year ago

Nice moving to int64. How does the performance improve? The substitution table still isn't constant time.