セキュリティ

Googleがハッシュ関数「SHA-1」を破ることに成功、90日後に手法を公開予定


TLS/SSLやOpenPGPなどで使われる暗号的ハッシュ関数「SHA-1」を破ることに、GoogleとオランダのCWI研究が成功しました。これまで「理論上は破られる可能性がある」と指摘されていたSHA-1が現実に破られることになったため、より安全なハッシュアルゴリズムへの移行が必須になったようです。

Google Online Security Blog: Announcing the first SHA1 collision
https://security.googleblog.com/2017/02/announcing-first-sha1-collision.html

SHAttered
http://shattered.io/

「SHA-1」破りに成功したのはCWIとGoogle。2年の研究の末に成功したとのこと。


約20年前に実用化されたSHA-1の技術的なアイデアは、デジタルデータの真正を担保するための技術として一般的なハッシュ関数を使うというもの。デジタルデータをハッシュ関数で変換してできるのが「ハッシュ値」で、ハッシュ値からデジタルデータを復元することはできません。データからハッシュ値への一方向のみに変換可能で、データによってハッシュ値は固有の値になるという特長があります。そのため、ハッシュ値が一致していることを確かめることで、データ送信過程で改ざんされたりすり替えられたりしたことを検出できるという仕組みです。

Doc 1とDoc 2で内容が異なる(データが異なる)場合、SHA-1で変換して出てくるハッシュ値はそれぞれ違った固有値になります。ハッシュ値はただ一つの固有値をとるというところがSHA-1などのハッシュアルゴリズムの技術的特長です。


しかし、2005年に異なるデータから同じSHA-1ハッシュ値を算出できるという手法が研究者から報告され、2012年にMarc Stevens氏が理論的アプローチを概説した論文「(PDFファイル)Cryptanalysis of MD5 & SHA-1」を発表するなど、SHA-1には脆弱性があることが指摘されてきました。この攻撃は「SHA-1衝突」攻撃と呼ばれ、SHA-1の信頼性を大きく揺るがすものになりました。

SHA-1衝突を利用すると、特別な処理を施したデータ「bad doc 1」と「bad doc 2」からSHA-1でハッシュ関数を算出すると同じハッシュ値を返すことができます。つまり、同じハッシュ値を返す異なるデータを作り出せるため、データ転送中に内容を改ざんしたり、そっくり別のデータに入れ替えたりすることが可能になるというわけです。


SHA-1衝突を悪用すれば、デジタル文書の署名、SSL、gitのバージョンコントロールシステム、バックアップシステムなど、SHA-1を使ってデータの真正を確認してきた技術は、データの同一性を維持できなくなります。このSHA-1衝突の存在がうたわれたころから、より安全性の高いSHA-256などのハッシュアルゴリズムへの移行が叫ばれており、例えばGoogleは2014年にブラウザGoogle ChromeでSHA-1を使った証明書のサポートを打ち切るなど、対策を進めてきました。


理論上のシステム突破の可能性が叫ばれていましたが、SHA-1を使うコンテンツは世の中にはまだまだあるという現状で、GoogleとCWIは実際にSHA-1衝突を起こすことに世界で初めて成功。しかもGoogleは、誰でもSHA-1衝突を確認できるようにと、SHA-1衝突を利用するための細工が施された2つのPDFデータを公開しています。

一つが青色で「SHAttered」とかかれた文書。なお、画像をクリックするとPDFファイルが表示されます。


もう一つが赤色で「SHAttered」とかかれた文書。この2つのPDFファイルをSHA-1ハッシュ関数で算出するハッシュ値は同じになるとのこと。


Googleによると、SHA-1衝突のために必要だった計算が高い専門的な知識とGoogleクラウドインフラを利用してできるようになったとのこと。計算量がどれほど膨大なものかを示すために、全部で900京回以上の計算が必要で第1段のフェーズでもCPUで行えば6500年、第2弾のフェーズはGPUを使っても110年かかると表現しています。


Googleは脆弱性公開ポリシーどおり、「SHA-1衝突攻撃を利用するためのコードを90日後に公開する」と明言しています。このため、90日後にはSHA-1衝突攻撃の内容を誰もが見られる状態になるということで、SHA-1を利用するすべてのコンテンツにより安全な手法への移行が半ば強制的に押し進められる見込みです。Googleは「SHA-1を実際に突破する方法が公開されることで、SHA-256のようなより安全性の高い手法への移行が急務であると業界に確信させられることを願っています」とコメントを出しています。

この記事のタイトルとURLをコピーする

・関連記事
GoogleがChromeで量子コンピューター時代の暗号化技術のテストを開始 - GIGAZINE

現在の暗号化方式を将来解読し得る能力を持った量子コンピューターが誕生か - GIGAZINE

Dropboxが6800万件超のアカウント情報を流出させていたことが明らかに - GIGAZINE

GoogleがGmailの暗号化に関するレポートを公開、著名ドメインでの暗号化メールの浸透具合が明らかに - GIGAZINE

iOS 10のパスワード保護システムはiOS 9より40倍素早くハッキング可能 - GIGAZINE

中国最大の認証局「WoSign」が証明書発行日改竄などを行っていたとしてFirefoxがブロックの方針 - GIGAZINE

紙と鉛筆と暗算でBitcoinマイニングに挑戦する強者が登場 - GIGAZINE

スマホの強固な暗号を緊急時に強制解読する機能が義務づけされる恐れ - GIGAZINE

サイバーセキュリティになれる頭脳があるか判別できる6つの暗号解読テスト - GIGAZINE

in ソフトウェア,   セキュリティ, Posted by darkhorse_log

You can read the machine translated English article here.