エンジニアが知っておくべきSSL/TLSの知識(仮)

11,031 views
12,105 views

Published on

エンジニアが知っておくべきSSL/TLSの知識(仮)

発表資料の下書き

Published in: Technology
0 Comments
12 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
11,031
On SlideShare
0
From Embeds
0
Number of Embeds
7,835
Actions
Shares
0
Downloads
19
Comments
0
Likes
12
Embeds 0
No embeds

No notes for slide

エンジニアが知っておくべきSSL/TLSの知識(仮)

  1. 1. エンジニアが知っておくべき SSL/TLSの知識 (予稿)
  2. 2. 最近のニュースから: GlobalSignの旧ルート証明書の有効期限切れ • RHEA-2014:0104-1 openssl enhancement update https://rhn.redhat.com/errata/RHEA-2014-0104.html • 旧ルート証明書の有効期限切れに伴う影響範囲について https://jp.globalsign.com/support/faq/538.html • RHEL5/CentOS5でGlobalSignのルート証明書が有効期限切れで大騒ぎ http://heartbeats.jp/hbblog/2014/01/rhel5centos5globalsign.html • WebAPIやOpenIDでSSLエラーが起きる現象につきまして http://techblog.yahoo.co.jp/maintenance/4/ • Y!J API が止まった日 - GlobalSign の Root 証明書切れから学んだこと http://oauth.jp/blog/2014/01/30/globalsign-root-cert-expired/
  3. 3. 何が起きたのか? 何が問題だったのか? • 起きていたこと • RHEL5(CentOS5)に含まれていたルート証明書が古かった • 2014年1月28日21時で期限が切れた • SSL通信において、証明書の検証が失敗し、通信ができなくなった • 問題だったこと • GlobalSignは以前から2028年1月28日有効期限の新しいルート証明書を 配布していた • RedHatが証明書の更新に気付かず、古いルート証明書の配付を続けた • GlobalSignがその状況に気付いていなかった
  4. 4. さらなる問題: 誤った回避方法の紹介 • 「証明書の検証をやめる」 • 例:curlに-kオプションを付ける • よくある誤解 • 相手の認証ができていなくても暗号化できればいい • データセンタ内のサーバだし盗聴とかされないよ • 一般的に認識されているよりも大きなリスクがあります。
  5. 5. そもそもSSL/TLSとは 簡単なおさらい • 役割 • コネクション型通信(通常はTCP)の上で以下を提供 • PKI(公開鍵基盤)を想定した公開鍵証明書による相互認証 • 通信内容の暗号化・改ざん検出 • 歴史 • 1994年(今から20年前)にNetscape Navigator 1.1にてSSL 2.0登場 • 1995年にNetscape Navigator 2.0にてSSL 3.0登場 • 1999年にSSLの問題を改善してRFC2246 TLS 1.0として規定
  6. 6. 暗号化アルゴリズム 共通鍵暗号と公開鍵暗号とハッシュ関数
  7. 7. SSL/TLSが実現していること <認証> • PKI(公開鍵基盤)を想定した公開鍵証明書による相互認証
  8. 8. SSL/TLSが実現していること <鍵交換>
  9. 9. SSL/TLSが実現していること <暗号化> • 共通鍵暗号による暗号化
  10. 10. SSL/TLSが実現していること <改ざん検出> • HMAC(ハッシュ関数によるメッセージ認証コード) • シリアル番号
  11. 11. 暗号化と認証の関係 「認証しない」の危険性 • 暗号化技術の本質は「鍵交換」 • たるい
  12. 12. PKI(公開鍵基盤)
  13. 13. 認証局証明書ストア 「何」を信頼しているのか
  14. 14. 地球人類のパンドラの箱 認証局証明書ストアの配布 • 運用ポリシー • 政府認証基盤(GPKI) • 地方公共団体組織認証基盤(LGPKI) • どこからダウンロードしてきた?
  15. 15. 「証明書検証オフ」のリスク 本当はこわいcurl -k

×