29
五十部 孝典 兵庫県立大学大学院 応用情報科学研究科 暗号技術に基づくサイバーセキュリティ サイバーセキュリティ・リレー講座 (初級) 2020915

暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

五十部 孝典兵庫県立大学大学院 応用情報科学研究科

暗号技術に基づくサイバーセキュリティ

サイバーセキュリティ・リレー講座 (初級)2020年9月15日

Page 2: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

本講義の内容

1. 暗号技術基礎

2. 暗号起因の攻撃の例

3. 暗号の適切な利用

Page 3: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

1. 暗号技術基礎

Page 4: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

本講演で紹介する暗号技術

•共通鍵暗号•メッセージ認証コード•公開鍵暗号•ハッシュ関数

Page 5: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

現代暗号の特徴

• 古典暗号• 暗復号アルゴリズム非公開

• アルゴリズムを隠すことで秘匿性を確保• 秘匿の機能が中心

• 現代暗号• 暗復号アルゴリズム公開

• 鍵さえ秘密にすればよい• 計算量的安全性

• 計算量の限られた攻撃者に対して安全• 鍵長に強度が依存 = 鍵を探すコスト

• 128 bit key = 2128の探索コスト(スパコン京で宇宙が誕生してから計算しても終わらない)

• 秘匿だけでなく,署名や認証といった様々な機能が実現可能

Page 6: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

共通鍵暗号

• 暗号化と復号に共通の鍵を用いる方式• 特徴: 一般的に高速だが,事前鍵共有が必要• 用途: データ暗号化,改竄検知(MAC),認証など• 代表的アルゴリズム: DES, AES, HMAC, CMAC

暗号アルゴリズム 復号アルゴリズム暗号文

平文 平文

秘密鍵 K 秘密鍵 K

暗号化 復号

=

Page 7: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

公開鍵暗号

• 暗号化と復号に異なる鍵を用いる方式• 特徴: 事前鍵共有不要(片方の鍵公開可能).一般的に低速• 用途: 共通鍵の鍵共有,デジタル署名,認証など• 代表的アルゴリズム: RSA, ECC

暗号アルゴリズム 復号アルゴリズム暗号文

平文 平文

A の公開鍵 A の秘密鍵

暗号化 復号

公開可能(誰に知られても問題ない) A だけが知っている

数学的に困難な問題

Page 8: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

“暗号学的”ハッシュ関数

• 任意長のデータを固定長データに圧縮• データの “指紋” を取る技術と呼ばれることもある• 用途: デジタル署名,パスワード保護など• 一般的に共通鍵暗号技術を応用しているため高速• 代表的アルゴリズム: MD5, SHA-1, SHA-256, Keccak, ...

暗号学的ハッシュ関数 H

任意長データ : m

0xA993E36F47..固定長データ : H(m)

(160bit, 256bit,…)

Page 9: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

“暗号学的”ハッシュ関数の特徴

• 原像復元困難性(Preimage resistance)• ハッシュ値のみから元々のメッセージを計算(復元)することが困難• ビットコインのマイニングに利用

暗号学的ハッシュ関数 H

任意長データ : m

0xA993E36F47..固定長データ : H(m)

(160bit, 256bit,…)

計算量的に困難

Page 10: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

“暗号学的”ハッシュ関数の特徴

• 衝突困難性(Collision resistance)• 同じハッシュ値になる 異なる 2 つのメッセージを見つけることが困難

暗号学的ハッシュ関数 H

任意長データ : m

0xA993E36F47..固定長データ : H(m)

(160bit, 256bit,…)

暗号学的ハッシュ関数 H

任意長データ : m’

0xA993E36F47..固定長データ : H(m’)

(160bit, 256bit,…)

Page 11: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

2. 暗号起因の攻撃の例

Page 12: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

Keeloqへの攻撃

• キーレスエントリーシステム• 80年代にMicrochip Technology Inc.により設計.

• 主要メーカで使われていた exp. Toyota, Honda, GM など.• 64 bit keyのブロック暗号を使用.

• 暗号解読 [S+08]• 64 bit security → 44 bit securityへ

• 50 dual core computerで 2日で秘密鍵が導出可能.

[S+08] S.Indesteege et al “A Practical Attack on Keeloq”, EUROCRYPT 2008

問題点 : 弱い暗号 + 短い鍵長

Page 13: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

MYFARE Classicへの攻撃

• NXP製の非接触ICカード• ロンドンの公共交通で利用されるなど,2億以上のカードが流通.

• 非公開の独自暗号を利用.• CRYPTO-1 (ストリーム暗号)

• 暗号解読[N+08]• リバースエンジニアリングにより秘密の暗号アルゴリズムが露呈

• 48 bit keyの暗号だと分かり,総当りで求めることができる.• 更に暗号解読がされて,秒のorderで鍵導出可.

[N+08]Nohl et al “Reverse Engineering a Cryptgraphic RFID Tag”, 17-th USENIX 2008

問題点 : 弱い暗号 + 短い鍵長 + アルゴリズム秘匿 (第三者評価ができない)

Page 14: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

SSL/TLS

• セキュリテイプロトコルSSL/TLSでストリーム暗号RC4が使用• 暗号解読[I+13]

• 暗号文から平文を求めることが可能• SSLの場合,cookieが導出可能

[I+13] T. Isobe et al., “Full Plaintext Attack on Broadcast RC4”, FSE 2013

問題点 : 弱い暗号 (脆弱性は知られていた)

Page 15: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

Apple iMessageへの攻撃

• AppleのiMessageの End-to-End Encryptionに対する攻撃[G+16]• 平文回復攻撃

• 選択暗号文攻撃で,218のクエリで,平文に含めれる添付ファイルの256ビット鍵の232ビットを特定可能(時間は35時間)

• 修正にはAppleの30人の技術者で4ヶ月

問題点 : 独自暗号プロトコル + 非標準的な暗号利用[G+16]Christina Garman et al, “Dancing on the lip of the volcano: Chosen ciphertext attacks on apple imessage”. USENIX 2016

Page 16: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

LINEの暗号化 Letter Sealingへの攻撃

• LINEの暗号化モードLetter Sealingに対する攻撃[IM18]• 独自の暗号方式を使っており,その使い方に問題があり,なりすましやメッセージ改ざん攻撃が可能

問題点 : 独自暗号プロトコル + 非標準的な暗号利用[IM18]T. Isobe and K. Minematsu, “Breaking the Message Integrity of E2E encryption of LINE”, ESORICS 2018

Page 17: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

その他の攻撃事例

• APOP• メールサーバ, クライアント間のPassword認証方式• ハッシュ関数MD5 の脆弱性 (衝突攻撃)により,

Passwordが導出可• 問題 : 弱い暗号の利用

• WEP• 無線LANの暗号化方式• ストリーム暗号RC4の脆弱性により,鍵が導出可.• 問題 : 弱い暗号の利用 + 誤った使い方

• Xbox• ブート時のプログラムの改ざんチェック• ブロック暗号TEAをハッシュ関数として利用• 問題 :弱い暗号の利用 +誤った使い方

暗号を正しく使うことが重要

Page 18: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

その他の攻撃事例

• APOP• メールサーバ, クライアント間のPassword認証方式• ハッシュ関数MD5 の脆弱性 (衝突攻撃)により,

Passwordが導出可• 問題 : 弱い暗号の利用

• WEP• 無線LANの暗号化方式• ストリーム暗号RC4の脆弱性により,鍵がP導出可.• 問題 : 弱い暗号の利用 + 誤った使い方

• Xbox• ブート時のプログラムの改ざんチェック• ブロック暗号TEAをハッシュ関数として利用• 問題 :弱い暗号の利用 +誤った使い方

暗号を正しく使うことが重要

脆弱性が見つかった場合,修正には多くの金銭的,人的リソースが必要

Page 19: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

原因

•暗号の正しくない使い方•弱い暗号,独自暗号•短い鍵長•まずい組み合わせ•まずい実装

正しい利用をすれば,これらの攻撃は簡単に防げる

Page 20: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

3.暗号の適切な利用について

Page 21: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

暗号技術の不適切利用における脅威をふせぐには?

•暗号技術の適切な利用が必要• 適切な「アルゴリズム」

• 適切な「鍵長」

• 適切な実装

Page 22: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

暗号の危殆化

ある暗号アルゴリズムについて,コンピュータの性能向上や解読技術の向上などに伴い,当初想定した安全性(セキュリティ上の性質)を保てない状況が発生すること

例えば

• 計算機の発展を受けて

• 解読技術の進化を受けて

Page 23: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

計算機の発展を受けて

• 鍵の全数探索の計算量• Keylength.com

Page 24: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

解読技術による危殆化• ハッシュ関数SHA-1

• 2005年に差分攻撃法により,期待より少ない計算量で衝突ペアを発見可能

• SHA-1 の後継として,国際的なコンペを経てKeccakがSHA-3として選定

• ストリーム暗号RC4

• 2013年ストリーム暗号RC4は,出力の偏りより,現実的な計算量で暗号文から平文を回復可能

• CRYPTRECはRC4を監視対象暗号へ,Google, Microsoftは使用を取りやめた.

• ロシア標準暗号 GOST

• 2011年,ロシア標準暗号GOSTが期待より少ない計算量で鍵導出可能

• ISOから脱落,ロシアは新たな暗号を開発し国内標準化

Page 25: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

電子政府推奨暗号リスト

Page 26: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

適切な鍵長を選択する

•計算量的安全性と鍵長• 暗号アルゴリズムの安全性は「計算量的安全性」に基づく

• 計算量的安全性• 実現可能な計算能力で解読可能か否かを評価する• 例えば,世界中のスパコンを集めても解読に1億年かかる...

• 鍵長が計算量的安全性を決める• 解読にかかる計算量は暗号の鍵長に依存する

Page 27: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

NIST(米国立標準技術研究所)の推奨鍵長

• 推奨鍵長に関する NIST 勧告(NIST SP 800-57)に従って選定

年 共通鍵 公開鍵 ECC ハッシュ(A)

ハッシュ(B)

~2013 80 1024 160 160 1602014~2030 112 2048 224 224 160

2031~ 128 3072 256 256 160(単位はビット)

・「共通鍵」: 共通鍵暗号技術の鍵長,および HMAC で利用する鍵長・「公開鍵」: 公開鍵暗号技術の RSA や DH 系スキームの法のサイズ・「ECC」: 楕円曲線暗号技術における利用される体のサイズ・「ハッシュ」: ハッシュ関数の出力サイズ

(A): デジタル署名,ハッシュ関数単体での使用(B): HMAC, 鍵導出関数,擬似乱数生成

Page 28: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

CRYPTREC推奨暗号リスト

安全性が80 bit

Page 29: 暗号技術に基づくサイバーセキュリティ - METI...五十部孝典 兵庫県立大学大学院応用情報科学研究科 暗号技術に基づくサイバーセキュリティ

まとめ

本講義では以下のことを説明1. 暗号技術基礎2. 製品に対する暗号起因のサイバー攻撃

• 弱い暗号や間違った使い方をした場合,実際に大きな被害• iMessageの場合修正にはAppleの30人の技術者で4ヶ月

3. 暗号の適切な利用• 暗号アルゴリズムと鍵長を適切に選択

• 暗号の危殆化や計算機の進歩を考慮

• 何か不明な点等ありましたら,お気軽にご連絡ください.• [email protected]