Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SHA-1ハッシュ値の衝突
Search
Akira Miyata(seraph)
April 23, 2017
Technology
1
1.2k
SHA-1ハッシュ値の衝突
第32回まっちゃ139でのLT講演資料です。
http://www.matcha139.jp/workshop/32thworkshop
Akira Miyata(seraph)
April 23, 2017
Tweet
Share
More Decks by Akira Miyata(seraph)
See All by Akira Miyata(seraph)
関西のセキュリティ業界を盛り上げていこう!
seraph
0
380
攻撃者グループ名をつけてみよう!
seraph
1
1.9k
OSINTによる標的型攻撃に関する情報収集
seraph
1
1.1k
Collecting information of targeted attacks by OSINT
seraph
0
170
Let's name an APT group name!
seraph
0
150
Other Decks in Technology
See All in Technology
Android Audio: Beyond Winning On It
atsushieno
0
110
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
160
ガチな登山用デバイスからこんにちは
halka
1
240
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.4k
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
440
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
400
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
220
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
150
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.2k
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
190
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Being A Developer After 40
akosma
90
590k
Designing for humans not robots
tammielis
253
25k
Building Applications with DynamoDB
mza
96
6.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
The Invisible Side of Design
smashingmag
301
51k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Transcript
SHA-1ハッシュ値の衝突 2017/4/23 第32回まっちゃ139勉強会 seraph(@Seraph39)
今⽇のお話 § 定型PDFを使えば、誰でも衝突PDFを作成可能 § 影響は限定的
ハッシュ値 § SHA-1(Secure Hash Algorithm) § 1bitでも異なれば異なる値 ファイルA ハッシュ関数 ファイルB SHA-1なら 160bit
SHAttered attack § SHA-1の衝突を意図的に起こしたもの
SHAttered attack § 内容:PDFとJPGの機能を⽤いた衝突 § 発表:2017年2⽉23⽇ § 実現:GoogleとオランダCWI Institute § ⽅法:⼤規模な演算で発⾒(1CPU = 6,500年) § 公開:⽣成コード(発表から90⽇後,
5⽉24⽇)
衝突PDF(shattered-1.pdf)
衝突PDF(shattered-2.pdf)
ハッシュ値(MD5)の⽐較 異なるハッシュ値
ハッシュ値(SHA-1)の⽐較 同⼀ハッシュ値
バイナリの⽐較 ここだけ異なる
ヘッダ 同じ ヘッダ PDFの構造 Near-collision Pair FF FE • •(コメント)
Skip Skip 違う Near-collision Pair FF FE ▲ ▲(コメント) shattered-1.pdf shattered-2.pdf
JPEGの簡単な構造 § FF D8:JPEGデータの開始 § FF FE • •:コメントサイズ § 2バイト(••) ー 2
§ FF D9:JPEGデータの終了
PDFの構造 Near-collision Pair FF FE • •(コメント) Skip Skip 違う
Near-collision Pair FF FE ▲ ▲(コメント) ヘッダ 同じ shattered-1.pdf shattered-2.pdf 先頭320バイトのハッシュ値が同⼀ 先頭320バイトのハッシュ値が同⼀ ヘッダ
先頭320バイトの⽐較 この部分が同⼀ハッシュ値
先頭320バイトの⽐較(SHA-1) shattered-1.pdf shattered-2.pdf ハッシュ値が同⼀
ヘッダ 同じ ヘッダ 衝突PDFの作成 Near-collision Pair FF FE • •(コメント)
Skip Skip 違う Near-collision Pair FF FE ▲ ▲(コメント) test1.pdf test2.pdf ひみつの画像 ひみつの画像
ハッシュ値(MD5)の⽐較 異なるハッシュ値
ハッシュ値(SHA-1)の⽐較 同⼀ハッシュ値
作成PDF(test1.pdf) ひみつの画像
作成PDF(test2.pdf)
バイナリの⽐較 ここだけ異なる
SHA-1衝突の実現による電⼦署名 への影響と対策 § JNSA 電⼦署名WG § http://www.jnsa.org/notice/2017/170302.html § 影響 § 新たに⽣成する電⼦署名 § 「全ての⽂書について攻撃が可能となるわけではありません。」 §
過去に⽣成された電⼦署名 § 「既に⽣成されている電⼦署名については今すぐに影響が出ることはないと考えます。」 § 対策 § ⻑期署名 § タイムスタンプの追加
まとめ § 定型PDFを使えば、誰でも衝突PDFを作成可能 § 影響は限定的
参考資料 § SHATTERD § https://shattered.io/ § Google Security Blog § https://security.googleblog.com/2017/02/ announcing-first-sha1-collision.html § GoogleのSHA-1の話 § https://www.slideshare.net/herumi/googlesha1
ありがとうございました!!