Poly1305とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > Poly1305の意味・解説 

Poly1305

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/03/05 05:48 UTC 版)

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

概略

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

NaClではAESではなくSalsa20が、TLSおよびSSHではChaCha20が用いられる。

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

GoogleによるTLSでの採用に続き、ChaCha20とPoly1305の組み合わせはchacha20-poly1305@openssh.comとしてOpenSSHに採用された[2][3]。これにより、OpenSSHがOpenSSLに依存する必要がなくなった[4]

セキュリティ

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

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

スピード

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

実装ライブラリ

Poly1305をサポートしている暗号ライブラリは以下の通り。

脚注

  1. ^ Google Swaps Out Crypto Ciphers in OpenSSL, InfoSecurity, April 24, 2014
  2. ^ Miller, Damien (2013年12月2日). “ssh/PROTOCOL.chacha20poly1305”. BSD Cross Reference, OpenBSD src/usr.bin/. 2014年12月27日閲覧。
  3. ^ Murenin, Constantine A. (2013年12月11日). Unknown Lamer: “OpenSSH Has a New Cipher — Chacha20-poly1305 — from D.J. Bernstein”. Slashdot. 2014年12月27日閲覧。
  4. ^ Murenin, Constantine A. (2014年4月30日). Soulskill: “OpenSSH No Longer Has To Depend On OpenSSL”. Slashdot. 2014年12月26日閲覧。
  5. ^ Bernstein, Daniel J.. “The Poly1305-AES message-authentication code”. 2013年12月30日閲覧。

外部リンク




英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Poly1305」の関連用語

Poly1305のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Poly1305のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのPoly1305 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS