0000039165 00000 n 0000211890 00000 n %%EOF SHA-2は、Secure Hash Algorithmシリーズの暗号学的ハッシュ関数で、SHA-1の改良版である。アメリカ国家安全保障局によって設計され、2001年にアメリカ国立標準技術研究所によって連邦情報処理標準 PUB 180-4として標準化された。, SHA-2には、前身のSHA-1から多くの改良が加えられている。それ以前のハッシュ関数は出力が固定長で強度もその長さによって決まる値に固定されていたが、SHA-2はSHA-224、SHA-256、SHA-384、SHA-512、SHA-512/224、SHA-512/256の6つのバリエーションを持ち、ハッシュ長は224、256、384、512ビットのいずれかである。, SHA-256とSHA-512は、それぞれ32ビット、64ビットのワード長から計算されるハッシュ関数である。シフト量と追加定数が異なるが、構造自体は本質的に同一であり、ラウンド数のみが異なる。SHA-224とSHA-384は、それぞれSHA-256とSHA-512を単純に切り詰めたバージョンであり、初期値のみが異なる。SHA-512/224とSHA-512/256は、SHA-256ではなくSHA-512を切り詰めたバージョンである。SHA-2シリーズは US 6829355  によってカバーされているが、アメリカ合衆国は、この特許をロイヤリティフリーで開放している[3]。, 2004年にMD5とSHA-0の強衝突耐性が突破され、SHA-1も攻撃法の研究が進む、といった事態が起きたため、それら強度が低下した関数の非推奨化といった「過去を向いた対策」と同時に、新たな構造を持つようなSHA-3の公募などといった「未来を向いた対策」も進められたが、SHA-2にはSHA-1と類似する点もあるものの、後述するように当時憂慮されたような事態にはなっていない(2015年6月現在)ため、SHA-3をSHA-2の代替とするような動きは無い。, 2014年1月現在、SHA-1に有効な攻撃をSHA-2に拡張することは達成されていない。原像攻撃ではSHA-256にて52ラウンドまで、SHA-512にて57ラウンドまで、衝突攻撃ではSHA-256の46ラウンドまでが最良の攻撃法である[1][2]。, SHA-2は、日本のCRYPTRECおよびヨーロッパのNESSIEにおいて、推奨暗号として採用されている。, FIPS PUB 180-2において、3つのハッシュ関数がSHAシリーズに追加された。これらは出力されるハッシュ長のビット数からそれぞれSHA-256、SHA-384、SHA-512と呼ばれ、SHA-2と総称される。, アルゴリズムは2001年のFIPS PUB 180-2の草稿にて発表され、レビューやコメントが寄せられた。2002年8月、FIPS PUB 180-2は新たな標準 "Secure Hash Standard" として認定され、1995年に制定されたFIPS PUB 180-1を置き換えた。FIPS PUB 180-2には、180-1で規定されたSHA-1も含まれている[4]。, 2004年2月、FIPS PUB 180-2のChange Noticeとして、鍵を2つ用いるトリプルDESの鍵長に合うように定義されたSHA-224が追加された[5]。2008年10月、FIPS PUB 180-3が制定されたが、これはSHA-224をChange Noticeから標準自体に取り込むほかには本質的な変化はなかった。この更新は、ハッシュ関数のセキュリティ情報の更新と、これらSHA-2をSpecial Publications 800-107および800-57において使用することを推奨するためのものであった[6][7][8]。詳細なテストデータとハッシュの例が標準から除去され、別文書とされた[9]。, 2011年1月、NISTはSP800-131Aを発表した。これは、連邦政府組織におけるセキュリティ強度の下限について、それまでの80ビット(SHA-1によって得られる強度)の使用を2013年末までに限定し、それ以降は112ビット(SHA-224によって得られる強度)を下限とするものである[10]。, 2012年3月、FIPS PUB 180-4が制定され、SHA-512を切り詰めたバージョンとしてSHA-512/224とSHA-512/256が追加された。また、入力データのパディングをハッシュ計算の前に行なうこととしていた制限が撤廃され、リアルタイムでの音声や映像などにおけるハッシュ計算をコンテンツ生成と同時に行うことが可能となった。最終ブロックのパディングのみは、引き続きハッシュ出力の前に行なうこととされている[11]。, 2012年7月、NISTは暗号鍵管理に関するガイドラインであるSP800-57を改訂した。これは、2007年版において112ビット未満の電子署名の生成を2010年末までとしていたものを2013年までに変更するものである[8]。2012年8月にはSP800-107にも同様の変更がなされた[7]。, NISTは2012年に、かねてからコンペティションを進行させていたSHA-3の選出を行った[12]。コンペティションの趣旨により(詳細はSHA-3の記事などを参照)SHA-3はSHA-2(およびそれ以前の関数)とは類似しないものになっている。, SHA-2ハッシュ関数は、TLS/SSL、OpenPGP、SSH、S/MIME、IPsec、Bitcoinといった広く使われているアプリケーションやプロトコルで利用されている。SHA-256は、Debian GNU/Linuxのソフトウェアパッケージの認証[13]や、DKIMにおけるメッセージ署名標準として利用されている。SHA-512は、ルワンダ国際戦犯法廷におけるビデオアーカイブの認証に用いられている[14]。SHA-256およびSHA-512は、DNSSECでの利用が提唱されている[15]。UnixやLinuxのベンダーでは、パスワードの安全なハッシュ法としてSHA-256やSHA-512への移行を始めている[16]。, SHA-1とSHA-2は、アメリカ合衆国において機密情報を扱う際に法律によって要求されるハッシュアルゴリズムの一つである。FIPS 180-1では、SHA-1を私的にあるいは商業で用いることも推奨している。SHA-1は合衆国政府での利用はほぼ終了しており、NISTでは「連邦組織は、電子署名、タイムスタンプ、衝突への耐性を必要とするアプリケーションでのSHA-1の利用を可及的速やかに中止すべきである。2010以降はSHA-2を利用すべきである」としている[17]。, SHA-2はセキュリティ的にSHA-1より優れているものの、SHA-1ほど広くは用いられていない。その理由として、Microsoft Windows XPのSP2以前がSHA-2をサポートしていないこと[18]や、SHA-1において実際の衝突が発見されていなかったために緊迫感に欠けたことが挙げられる。ただし後者については、2017年に2月23日にGoogleとオランダの研究機関CWI Instituteが共同で2つの異なるファイルから同じSHA-1ハッシュ値を生成する衝突に成功した。[19], また、Windows XPのサポート終了などの背景から、公的機関でのSHA-1の使用を原則的に終了する動きがあり、民間のウェブサイトでもSHA-2へ移行するケースが出始めた(詳細はSHA-1#概要を参照)。, ハッシュ長が L ビットであるハッシュ関数において、与えられた特定のハッシュに対応する元のメッセージを見つけることは、総当たり攻撃では 2L の試行で可能である。これは原像攻撃と呼ばれる。一方、同じハッシュを与える2つの異なるメッセージを見つけることは衝突攻撃と呼ばれ、およそ 2L / 2 の試行で可能である。, SHA-3選定におけるハッシュ関数の解析への興味の増加によって、SHA-2への新しい攻撃が報告されている。最良の攻撃法を下のテーブルに示す。現時点では衝突攻撃のみが現実的な可能性を有しているが、フルバージョンのSHA-2に対する攻撃は成功していない。 0000254844 00000 n endstream endobj 73 0 obj <> endobj 74 0 obj <> endobj 75 0 obj <>/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>> endobj 76 0 obj <> endobj 77 0 obj <> endobj 78 0 obj <> endobj 79 0 obj [685 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 389 389 0 0 278 333 278 278 574 574 574 574 574 574 574 574 0 0 0 0 0 0 0 0 0 759 778 778 833 0 722 833 870 444 648 0 722 981 833 833 759 0 815 667 722 833 759 0 0 722 0 389 0 389 0 0 0 611 648 556 667 574 389 611 685 370 352 667 352 963 685 611 667 648 519 500 426 685 611 889 611 611 537] endobj 80 0 obj <> endobj 81 0 obj <>stream ロック分割とハッシュ結合を導入する事でデータベース演算とし ての能力を強化することを目指す. w3c/webrtc-pc, https://github.com/w3c/webrtc-pc/issues/1663, https://w3c.github.io/websub/#recognized-algorithm-names. 0000032793 00000 n 0000257429 00000 n 0000017301 00000 n h�b```f``�g`g``�� ̀ �@1v����?;�Q. Henri Gilbert, Helena Handschuh: Security Analysis of SHA-256 and Sisters. ご使用のブラウザは、JAVASCRIPTの設定がOFFになっているため一部の機能が制限されてます。, [1]  2020/10/13 04:50   男 / 20歳代 / 高校・専門・大学生・大学院生 / 非常に役に立った /, [2]  2020/09/29 00:02   男 / 20歳未満 / 高校・専門・大学生・大学院生 / 非常に役に立った /, [3]  2020/08/19 02:37   男 / 20歳未満 / 小・中学生 / 非常に役に立った /, [4]  2020/08/16 11:31   男 / 20歳未満 / 高校・専門・大学生・大学院生 / 非常に役に立った /, [5]  2020/08/12 10:02   男 / 20歳未満 / 小・中学生 / 役に立った /, [6]  2020/08/09 16:51   男 / 20歳未満 / 高校・専門・大学生・大学院生 / 役に立った /, [7]  2020/08/04 19:24   男 / 20歳未満 / 高校・専門・大学生・大学院生 / 役に立った /, [8]  2020/07/29 18:41   男 / 20歳未満 / 高校・専門・大学生・大学院生 / 非常に役に立った /, [9]  2020/05/21 21:18   男 / 20歳未満 / その他 / 非常に役に立った /, [10]  2020/04/19 14:23   男 / 20歳代 / 高校・専門・大学生・大学院生 / 非常に役に立った /. 0000028580 00000 n 0000049886 00000 n 0000254571 00000 n そして,特にR-S ジョインの 場合にこの方針が有効なことを示し,その具体的算法L2AP/HJ を提案する. 0000003512 00000 n 0x cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e, SHA512/224("") 0000211299 00000 n 0x 6ed0dd02806fa89e25de060c19d3ac86cabb87d6a0ddd05c333b84f4, SHA512/256("") {\displaystyle \pi } 0000002541 00000 n 用語「sha-2」の説明です。正確ではないけど何となく分かる、it用語の意味を「ざっくりと」理解するためのit用語辞典です。専門外の方でも理解しやすいように、初心者が分かりやすい表現を使うように心 … 0x c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a, SHA224("The quick brown fox jumps over the lazy dog") excel関数の使用方法を解説しています。asc関数,jis関数,upper関数,lower関数,proper関数の使用例を解説しています。 72 0 obj <> endobj 0000031022 00000 n 0000039082 00000 n 0000003193 00000 n 0000017101 00000 n 0000029321 00000 n 0000030679 00000 n 0x d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42f, SHA256("") 0000002604 00000 n 0000017860 00000 n ]c,|���"��_��z��H�+�Ř��8*%;��t&�\d3�(ؕ�_&�i���5F�\��ɧ&�|���������D�����j 0000014570 00000 n 0000035517 00000 n 0000038460 00000 n 0000211473 00000 n 0000016504 00000 n 0000025895 00000 n All digest-algorithm values are case-insensitive. の16進数の少数点数部分を設定したものである。, ExpandKey(state, 0, key) は通常のBlowfishのkey scheduleと同じため、すべてゼロのソルト値とのXORをとるのは意味がない。ExpandKey(state, 0, salt)も同様だが、ソルトを128ビットの鍵として扱っている。, 多くのbcrypt実装はパスワードを最初の72バイトだけ切り出して利用する実装になっている。, 算術アルゴリズムが18個の32ビットサブキー(72オクテット/バイトと同じ)に初期化することを要求しているからである。bcryptのオリジナル仕様[1] はユーザーランドのテキストベースのパスワードをこのアルゴルズムの数値とどのようにマッピングするべきかを強制するものはなかった。テキストで書かれた短いコメントで文字列のASCIIエンコードされた文字をシンプルに利用する可能性があると書かれているが、強制するものではない: 「最後に、key引数は秘密暗号鍵であり、ユーザーが選んだ56バイトまでのパスワードである可能性がある(文字列がASCII文字列の場合はゼロのバイトの終端も含む)」, アルゴリズムは初期値として72バイトの入力を扱うが、上記に引用文が「56バイトまで」のパスワードに言及している点は注目に値する。ProvosもMazièresも制約を短くした理由については表明していないが、Bruce SchneierによるBlowfishのオリジナルの仕様[18]を見て決定した可能性がある: 「鍵サイズの448ビット制限によりすべてのサブキーのすべてのビットは、鍵のすべてのビットに依存していることが保証される」, パスワードを初期の数値の値に変換する方法は実装によって異なる可能性があるため、非ASCII文字を含んだパスワードの強度が低下する可能性がある[19]。, //key setup algorithmを使って、Blowfishの状態を初期化, //"OrpheanBeholderScryDoubt"という文字列を64回繰り返し暗号化, http://www.usenix.org/events/usenix99/provos/provos_html/node1.html, SUSE Security Announcement: (SUSE-SA:2011:035), jBCrypt - strong password hashing for Java, bcrypt - A Java standalone implementation of the bcrypt password hash function.

.

水溜りボンド 登録者数 減った 4, ワイルドスワンズ ナチュラル 飴色 6, ディビジョン2 ビルド Tu10 48, Zip 動画 2020 13, Sqlite Vacuum 遅い 5, Ntt 電話番号 取得 5, めちゃイケ 27時間テレビ 動画 4,