主な機能
以下の機能をC#で実装しています。また、一部は速度を重視するためにunsafeコードを利用しています。
- 多倍長演算クラス
- 古典的な還元
- モンゴメリ(Montgomery)還元
- 特定の一般化メルセンヌ素数が法の場合の高速な還元
- 共通鍵暗号
- Rijndael (AES)
- Camellia
- CTRモードに対応
- ブロック暗号モードを利用した並列処理 (ECB, CTR, CBCの復号時)
- 楕円曲線暗号
- ECDSA (Elliptic Curve Digital Signature Algorithm)
- ECDH (Elliptic Curve Diffie-Hellman)
- ECMQV (Elliptic Curve Menezes-Qu-Vanstone)
- ECIES (Elliptic Curve Integrated Encryption Scheme, 旧ECAES?)
- ハッシュ関数
- MAC
- CMAC (Cipher-based MAC) / OMAC (One-key MAC)
- HMAC-SHA-1-96 等を実現するためのラッパ
