Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jedisct1/zig-rocca-s
An implementation of the ROCCA-S encryption scheme.
https://github.com/jedisct1/zig-rocca-s
aead cipher rocca rocca-s zig zig-package
Last synced: 4 months ago
JSON representation
An implementation of the ROCCA-S encryption scheme.
- Host: GitHub
- URL: https://github.com/jedisct1/zig-rocca-s
- Owner: jedisct1
- License: mit
- Created: 2021-10-19T23:02:17.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-09-09T13:55:31.000Z (5 months ago)
- Last Synced: 2024-10-05T04:32:34.364Z (4 months ago)
- Topics: aead, cipher, rocca, rocca-s, zig, zig-package
- Language: Zig
- Homepage:
- Size: 21.5 KB
- Stars: 19
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ROCCA-S: an efficient AES-based encryption scheme
This is an implementation of [ROCCA-S: an efficient AES-based encryption scheme for beyond 5G](https://www.ietf.org/archive/id/draft-nakano-rocca-s-05.html), a very fast authenticated encryption scheme optimized for platforms with AES-NI or ARM crypto extensions.
ROCCA-S claims to be key committing, has a 256 bit key size, a 128 bit nonce, processes 256 bit message blocks and outputs a 256 bit authentication tag.
Benchmark results on x86_64 (Macbook Pro, 2,4 GHz Core i9, single core):
```text
aes256-ocb: 4681 MiB/s
aes128-ocb: 6040 MiB/s
aegis-256: 9297 MiB/s
aegis-128l: 14084 MiB/s
rocca: 16284 MiB/s (130 Gb/s)
```Benchmark results on aarch64 (VM on a Freebox Delta home router)
```text
aes128-ocb: 774 MiB/s
aes256-ocb: 579 MiB/s
aegis-256: 1197 MiB/s
aegis-128l: 1763 MiB/s
rocca: 2291 MiB/s (18 Gb/s)
```On Rocket Lake (Xeon E-2386G), AEGIS-128L still outperforms ROCCA:
Zig benchmarks:
```text
aes128-ocb: 10173 MiB/s
aes256-ocb: 7792 MiB/s
aegis-256: 11775 MiB/s
rocca: 16274 MiB/s
aegis-128l: 21206 MiB/s (170 Gb/s)
```OpenSSL 3.0.0 AES-GCM benchmark on the same machine:
```text
aes128-gcm: 8772 MiB/s
aes256-gcm: 7483 MiB/s
```**Warning:** this implementation is for benchmarking and testing purposes only.
ROCCA-S is a newly proposed scheme, and hasn't received any serious attention yet.
AEGIS should always be preferred over ROCCA-S for any actual use.