176 Views
November 24, 15
スライド概要
#qpstudy 2015.11 20分でわかるPKI
秋葉原生まれ大手町育ちの歌って踊れる江戸っ子インフラエンジニア。 0と1が紡ぐ「ゆるやかなつながり」に魅せられ早20年、 SNSとCGMの力で世界を幸福にするのがライフワーク。 市民、幸福は義務です。 あなたは幸福ですか?
20分でわかるPKI Public Key Infrastructure #qpstudy 2015.11 Aki@nekoruri
前座2 20分でわかったつもりになるPKI Public Key Infrastructure #qpstudy 2015.11 Aki@nekoruri
会場では、公開鍵暗号自体はそれなりに 理解をしているという人が多いようでした。 アンケート • PKI • 公開鍵証明書 • SSL証明書 • 公開鍵暗号 • SSHの公開鍵認証
公開鍵暗号 • 鍵配送問題を解決する発明(1970年代) • PKI(公開鍵基盤)の根拠 • 二つの鍵を分離 • 暗号化用の鍵 ⇒ 公開鍵を公開 • 復号用の鍵 ⇒ プライベート鍵を秘匿 • 主な用途 • 暗号化 • デジタル署名 • 鍵交換 「Private key」の訳語はたくさんあります が、今回は『暗号技術入門』の「プライベー ト鍵」に揃えました。
鍵配送問題 秘匿の必要性がなくなり、別の手段が無くて も安全に通信ができるようになりました。 別の手段で秘匿しなくはいけない 共通鍵 共通鍵暗号 共通鍵 暗号文 アリス 秘匿の必要はない=公開鍵 平文 ボブ 公開鍵 公開鍵暗号 プライベート鍵 暗号文 アリス 平文 ボブ
「逆向き」が提供されない、デジタル署名に 利用できない公開鍵暗号アルゴリズムもあり ます。 デジタル署名 • 公開鍵暗号を「逆向き」に利用 • 「公開鍵」で復号できたら正しい相手 公開鍵 プライベート鍵 公開鍵 平文 デジタル署名 アリス 平文 ボブ
鍵配送問題 その2 「公開鍵暗号なら安全」と言ったな。 あれは嘘だ。 秘匿の必要はない=公開鍵 公開鍵 プライベート鍵 暗号文 アリス 平文 ボブ
貴方のもつ「公開鍵」は、 本当に正しいものですか? 鍵配送問題 その2 平文 • 公開鍵を配送するときの man-in-the-middle攻撃 プライベート鍵 (MITM・中間者攻撃) に弱い • 公開鍵の「真正性」 偽公開鍵 マロリー 公開鍵 がだいじ プライベート鍵 暗号文 アリス ボブ
「隠さなければならない」という要件が無 くなっただけで、依然として「安全に鍵を相 手に送る」という要件は残っています。 鍵配送問題 その2 • 公開鍵が信頼できないなら デジタル署名も無力 平文 プライベート鍵 偽公開鍵 マロリー 公開鍵 プライベート鍵 平文 デジタル署名 アリス ボブ
ネットワークにおける「信頼」の本質です。 「何も信頼できない状態から 信頼を作り出す技術は まだ生み出されていません」 結城 浩『暗号技術入門 第3版』 (SBクリエイティブ、2015年) 276ページ
PKI 「PKI」とは枠組みそのものであり、細かい 仕様などの総称でもあります。 • 公開鍵暗号をうまく使うための枠組み • PGPとSSHを除く世の中のほぼ全てがこの上に乗っかっている • 覚えて帰るべきポイント • 公開鍵証明書 • 階層化された認証局(CA) • トラストアンカー
まず「信頼」を作り出す枠組みを用意します。 公開鍵証明書 • 公開鍵に第三者がデジタル署名 • ボブとクリスのどちらかの 公開鍵 証明書 公開鍵があれば 良い クリスのデジタル署名 クリス 公開鍵 クリス公開鍵 プライベート鍵 ボブ公開鍵 平文 デジタル署名 アリス 平文 ボブ
階層化された認証局(CA) 次に「信頼を連鎖」させる枠組みを作り、 「信頼する相手」の数を最低限に絞ります。 これが「CA」です。 • 公開鍵証明書にデジタル署名する「信頼できる第三者」 • 一番上の認証局の公開鍵さえ安全に配布できれば、 その「下」にぶら下がる公開鍵証明書の安全を担保できる! 公開鍵 証明書 ボブ 公開鍵 クリス 公開鍵 証明書 公開鍵 ドロシー いわゆる 「ルート証明書」 公開鍵 公開鍵 証明書
Googleさん自前でCA持ってたんですね……。 https://pki.google.com/ 実際のCA階層化の例 信頼されたジオトラストの 公開鍵証明書 ジオトラストから信頼された Googleの公開鍵証明書 個別の公開鍵証明書
トラストアンカー • 「信頼の起点」 • いわゆる「信頼されたルート証明書」
「何も信頼できない状態から 信頼を作り出す技術は まだ生み出されていません」 結城 浩『暗号技術入門 第3版』 (SBクリエイティブ、2015年) 276ページ
トラストアンカー • 「信頼の起点」 • いわゆる「信頼されたルート証明書」 • ここが侵されたら何をされてもおかしくない • 不正なサーバへの接続 • 不正なバイナリの実行 PKIとは、要するに「トラストアンカー」を 基準に世の中の様々なものを信頼していく ための枠組みです。
とあるWindows PCでのルート証明書一覧 この全てを「絶対的に信頼」している訳です。 たとえばブラウザの接続先の検証だけでなく、 Windows Updateやウイルススキャナなどの 自動アップデートでもデジタル署名の検証が 入りますので、ここに不正なルート証明書が 登録されれば、気付かない間に不正な実行 ファイルがインストールされてしまう可能性 が出てきます。
これ全部 信頼してるの? マジで?
原則はガイドラインがあります、が…… 私たちが信頼している「何か」 私がインストールしたブラウザに含まれるルート証明書 ブラウザの配布者が決められたポリシーに従ってビルトイン CA/Browser Forumでガイドラインを策定 ・Baseline Requirements ・WebTrust for CA 米国公認会計士協会・カナダ勅許職業会計士協会 が定める認証局の基準 ・EV Guideline
私たちが信頼している「何か」 「管理者」には、そのPCのユーザ自身だけで 無く、ハードウェアベンダーや販売者、企業 の情シス部門なども含まれます。 絶対的に信頼しているトラストアンカーに何 かを「仕込まれる」ことの危険性が、この一 連のスライドで最も伝えたいことです。 私がインストールしたブラウザに含まれるルート証明書 ブラウザの配布者が決められたポリシーに従ってビルトイン + 管理者が登録したルート証明書 安易にルート証明書を 組み込まない鋼の心
最近の課題 このスライドの公開準備中に、プライベート 鍵を不適切に扱うSuperfish同様の 「eDellRoot」が発見されてしまいました。 • トラストアンカー(ルート証明書)の不適切な扱い • Superfish(オレオレCAのプライベート鍵が共通=公開) • 信頼できない認証局 • Symantec(Verisign)が実在ドメインの証明書を内部テストに利用 • 認証局システムへの侵入 • 利用する暗号化アルゴリズムの危殆化 • 2048bit RSAへの移行 • SHA-2への移行
PKIの今後 「暗号学的に守るのが当たり前」の時代に なりつつあり、PKIの正しい理解が必須です。 • PKIベースのデジタル署名の活用 • ウェブにおけるHTTPSの「当たり前」化 • SMTPのTLS化 https://googleonlinesecurity.blogspot.jp/2015/11/new-research-encouraging-trends-and.html • S/MIMEの活用 • PKIは「最後の砦」 • DNSやIPアドレスはもはや信頼できない • 「暗号学的」に守ってくれるのは、今ここにあるPKIだけ • 正しく理解し、適切に利用していく必要があります。