ML-KEM(Module-Lattice Key Encapsulation Mechanism)と HQC(Hamming Quasi-Cyclic)は、いずれも量子コンピュータの存在下で安全な鍵交換を提供するように設計された耐量子暗号鍵カプセル化メカニズム(KEM)です。
ML-KEM はModule Learning With Errors(M-LWE)問題に基づいており、これは格子と呼ばれる特別な点を持つ高次元ベクトル空間において、2 点間の小さなベクトルを見つけることを含みます。
HQC はランダム準循環符号の復号の困難さに基づいています。これは、いくつかの修正を加えて最初の列のシフトである列を持つ行列を意味します。
これらの数学領域は、どちらも現代においてよく研究されていると考えられています。
同一のセキュリティレベルにおいて、ML-KEM は HQCよりも小さな鍵サイズと暗号文サイズで動作します。また、すべての KEM 操作(鍵生成、カプセル化、デカプセル化)において、ML-KEM は HQC よりも高速です。
ML-KEM はすでに NIST によって標準化されており、TLS 1.3 のコードポイントは IETF のドラフト標準にすでに含まれています。一方、HQC は最近 NIST によって標準化に向けて選定されました。NIST はまだそれを規定し標準化する FIPS 文書を発行していません。
wolfSSL/wolfCryptは現在、ML-KEM/ML-DSAに対応しています。まずはすでに標準化されたアルゴリズムをぜひお試しください。
ML-KEMとML-DSAの違いについてはこちらをご参照ください。
HQCの使用にご関心がおありでしたら、ぜひ info@wolfssl.jp までお問い合わせください。