Poly1305-AES

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索

Poly1305-AESは、ダニエル・バーンスタインによって設計されたメッセージ認証符号である。メッセージのデータ完全性の検証および認証に用いられる。

概略[編集]

Poly1305-AESは、128ビットのAES鍵、106ビットの追加鍵、128ビットの1回だけ使われる値 (nonce)を用いて、可変長のメッセージから128ビット(16バイト)の認証子を生成する。素数である 2130−5 およびAdvanced Encryption Standard (AES)を用いていることからその名が付けられた。

Googleは、共通鍵暗号としてChaCha20、メッセージ認証符号としてPoly1305を組み合わせたものを、RC4に代わるインターネットセキュリティで利用可能なストリーム暗号として提唱している[1]Google ChromeおよびGoogleのウェブサービスにおいて、ChaCha20-Poly1305が実装されている[2]

セキュリティ[編集]

Poly1305-AESのセキュリティは、基となるAESに類似するものとなる。そのため、Poly1305-AESを破るためにはAESを破る必要がある[3]

Poly1305-AESでは、AESを他の暗号アルゴリズムに置き換えることも可能である。AESに何か問題が起きた場合でも、他のアルゴリズムに置き換えることでセキュリティを保つことができる。

スピード[編集]

Poly1305-AESは様々なCPUで高速に計算可能である。設計者によって、C言語およびC++でのレファレンス実装だけでなく、AthlonPentiumPowerPCUltraSPARC向けの最適化実装も公開されている。

脚注[編集]

外部リンク[編集]