11个版本
0.1.10 | 2024年5月9日 |
---|---|
0.1.9 | 2024年2月22日 |
0.1.8 | 2023年12月3日 |
0.1.7 | 2023年9月19日 |
0.1.4 | 2023年5月30日 |
#519 in WebAssembly
195KB
1K SLoC
包含(静态库,160KB)wasm-libs/libaes.a
为Rust和WebAssembly提供快速(更快速)的基于AES的结构
- AEGIS-128L
- AEGIS-256
- AES-128-CTR
- AES-256-CTR
- AES-128-OCB
- AES-256-OCB
- AES-128-GCM
- AES-256-GCM
- CMAC-AES-128
这是一套针对WebAssembly应用程序(AEAD,流密码,MAC)的基于AES的结构。
它们易于使用,并且此crate没有依赖项。
基准测试
可以使用cargo wasix bench
命令运行基准测试。
使用Wasmtime 9.0.1在Apple M1上的性能结果
算法 | crate | 吞吐量 |
---|---|---|
aes256-gcm | (aes crate) |
49.63 M/s |
aes256-gcm | 此crate | 98.86 M/s |
aes128-gcm | (aes crate) |
59.87 M/s |
aes128-gcm | 此crate | 115.47 M/s |
aes256-ocb | 此crate | 168.43 M/s |
aes128-ocb | 此crate | 215.23 M/s |
aegis-256 | 此crate | 478.57 M/s |
aegis-128l | (aegis crate) |
533.85 M/s |
aegis-128l | 此crate | 695.85 M/s |
aes128-ctr | (ctr crate) |
104.63 M/s |
aes128-ctr | 此crate | 217.10 M/s |
cmac-aes128 | (cmac crate) |
53.99 M/s |
cmac-aes128 | 此crate | 233.34 M/s |
使用Wasmtime 9.0.1在Ryzen 7上的性能结果
算法 | crate | 吞吐量 |
---|---|---|
aes256-gcm | (aes crate) |
63.79 M/s |
aes256-gcm | 此crate | 129.44 M/s |
aes128-gcm | (aes crate) |
75.09 M/s |
aes128-gcm | 此crate | 149.31 M/s |
aes256-ocb | 此crate | 205.39 M/s |
aes128-ocb | 此crate | 260.56 M/s |
aegis-256 | 此crate | 497.97 M/s |
aegis-128l | (aegis crate) |
537.49 M/s |
aegis-128l | 此crate | 696.61 M/s |
aes128-ctr | (ctr crate) |
151.26 M/s |
aes128-ctr | 此crate | 275.51 M/s |
cmac-aes128 | (cmac crate) |
78.63 M/s |
cmac-aes128 | 此crate | 260.23 M/s |