主な機能

以下の機能を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 等を実現するためのラッパ