$30 off During Our Annual Pro Sale. View Details »

個人でEV SSL証明書が欲しい話

個人でEV SSL証明書が欲しい話

すみだセキュリティ勉強会2018その2での発表資料です。

Osumi, Yusuke

August 04, 2018
Tweet

More Decks by Osumi, Yusuke

Other Decks in Technology

Transcript

  1. 個人でEV SSL証明書が
    欲しい話
    すみだセキュリティ勉強会2018その2 (2018/08/04)
    @ozuma5119
    [email protected]
    http://d.hatena.ne.jp/ozuma/
    1

    View Slide

  2. 免責事項 2
    近年は、「TLS証明書と書くべき」という
    過激派がおりますが、本スライドでは歴史
    的理由によりSSL証明書と記載しています。
    ガマンならない方は、AR技術や
    脳内変換を利用してTLS証明書
    と自分で置換してください。

    View Slide

  3. OpenSSLもOpenTLSとrenameすべきでは? 3
    https://github.com/openssl/openssl/issues/6384
    一瞬でclose

    View Slide

  4. Agenda
    •1st section “SSL証明書おさらい”
    •PKIと証明書
    •DV/OV/EV SSL証明書
    •2nd section “個人でEV SSL証明書”
    •普通に買えるのか
    •3rd section “オレオレEV SSL証明書”
    •自分で認証局から作っちまうか......
    •Appendix “おもしろEV豆知識”
    4

    View Slide

  5. 5
    1st
    Section
    SSL証明書おさらい

    View Slide

  6. 6
    PKIと証明書

    View Slide

  7. PKI : Public Key Infrastracture 7
    引用:Ivan Ristić「BULLETPROOF SSL AND TLS」

    View Slide

  8. PKI : Public Key Infrastracture 8
    引用:Ivan Ristić「BULLETPROOF SSL AND TLS」
    証明書:
    • Public Key(公開鍵)
    • 公開鍵の主体情報
    • 発行元のディジタル署名

    View Slide

  9. SSL証明書発行規定の標準 9
    https://cabforum.org/
    • CA/Browser Forumによる
    Baseline Requirements (BR) (今は1.6.0)
    https://cabforum.org/baseline-requirements-documents/

    View Slide

  10. 証明書のパス 10
    Root CAで直接証明書を発行するのは危険すぎる
    ので、一般にサブCAを作ってそこで証明書を発行
    する

    View Slide

  11. 証明書の内部構造 11
    X.509 v3 証明書
    データ構造:ASN.1
    エンコード:PEMまたはDER

    View Slide

  12. Public Key 12
    Public Key(公開鍵)

    View Slide

  13. Subjectフィールド:今は重要じゃない 13

    View Slide

  14. 今の主役(?)はExtensions 14
    httpsでは、FQDNは
    ここしか見ない

    View Slide

  15. Certificate Signature Value 15
    発行元のディジタル署名

    View Slide

  16. 16
    PKI用語の注意点

    View Slide

  17. PKIにおける用語 17
    PKIの文脈では、日常用語と同じ単語を純
    粋に技術用語として使うケースが多いです。
    そのため、日常の感覚でこれらの単語に引
    きずられないように注意が必要です。

    View Slide

  18. 信頼(trust; トラスト)
    PKIにおける信頼(トラスト)とは、
    「証明書がトラストストアに含まれている
    認証局によって検証できる」
    以上の意味は無い
    18

    View Slide

  19. 信頼(trust; トラスト) 例 19
    技術用語
    amazon.co.jpの
    SSL証明書が信頼できる
    日常用語
    他のECサイトよりも
    Amazonが信頼できる

    View Slide

  20. 何が言いたいか 21
    PKIの話をするときは、きちんと用語に気を
    つけないとすぐマサカリが飛んでくるぞ!
    気をつけろ!

    View Slide

  21. 22
    証明書の種類 DV/OV/EV

    View Slide

  22. DV/OV/EV 23
    SSL証明書は3種類
    DV
    (Domain
    Validation)
    ドメイン認証
    Let’s Encryptで無料取得可能
    OV
    (Organization
    Validation)
    組織の法的な実在性認証
    会社の登記事項証明書+電話による確認など
    EV
    (Extended
    Validation)
    OVよりさらに厳格な実在性認証
    会社の登記簿に記載のある役員のサインなど
    が必要
    ワイルドカード証明書は不可

    View Slide

  23. DV/OV/EV 24
    SSL証明書は3種類
    DV
    (Domain
    Validation)
    ドメイン認証
    Let’s Encryptで無料取得可能
    OV
    (Organization
    Validation)
    組織の法的な実在性認証
    会社の登記事項証明書+電話による確認など
    EV
    (Extended
    Validation)
    OVよりさらに厳格
    会社の登記簿に記載のある役員のサインなど
    が必要
    ワイルドカード証明書は不可
    TLSプロトコル上、暗号強度は
    変わらない
    EVだからと言って、強い暗号
    になるわけではない

    View Slide

  24. そもそもEV SSL証明書の規定は 25
    https://cabforum.org/
    • RFCに規定は無い
    • やっぱりCA/Browser Forumによる
    EV SSL Certificate Guidelines (今は1.6.8)
    https://cabforum.org/extended-validation/

    View Slide

  25. 2.1.3. Excluded Purposes(EVの目的外) 26
    EV Certificates focus only on the identity of the Subject named
    in the Certificate, and not on the behavior of the Subject. As
    such, an EV Certificate is not intended to provide any
    assurances, or otherwise represent or warrant:
    (1) That the Subject named in the EV Certificate is actively
    engaged in doing business;
    (2) That the Subject named in the EV Certificate complies with
    applicable laws;
    (3) That the Subject named in the EV Certificate is trustworthy,
    honest, or reputable in its business dealings; or
    (4) That it is “safe” to do business with the Subject named in
    the EV Certificate.

    View Slide

  26. 2.1.3. Excluded Purposes(EVの目的外) 27
    EV Certificates focus only on the identity of the Subject named
    in the Certificate, and not on the behavior of the Subject. As
    such, an EV Certificate is not intended to provide any
    assurances, or otherwise represent or warrant:
    (1) That the Subject named in the EV Certificate is actively
    engaged in doing business;
    (2) That the Subject named in the EV Certificate complies with
    applicable laws;
    (3) That the Subject named in the EV Certificate is trustworthy,
    honest, or reputable in its business dealings; or
    (4) That it is “safe” to do business with the Subject named in
    the EV Certificate.
    EV SSL証明書は組織の実在性にfocusし、以
    下の保証をするものではない
    (1)その組織が実際にビジネスしているか
    (2)法令に準拠しているか
    (3)誠実な商取引をしているか
    (4)その組織と取引して「安全」か

    View Slide

  27. EVの特権 – 組織名表示とグリーンバー 28
    Internet Explorer
    Google Chrome
    Firefox
    Safari
    Opera
    Microsoft Edge

    View Slide

  28. 残念なお知らせ 29
    悪の帝国が作っている某ブラウザは、
    Chrome 70からEVでもグリーン表示が消えます
    Google Chrome 68
    Google Chrome 70 (Canary)
    「httpsは当たり前だから特別表示する必要無い。
    HTTPは危険だからキケンと赤くする」
    という論理らしい

    View Slide

  29. 30
    2nd
    Section
    個人でEV SSL証明書

    View Slide

  30. 個人でEV SSL証明書を取る動機
    •最近はEV SSL証明書もかなり安いらしい
    •安いところだと1年数万円くらい
    •ネタとして取るのもアリかな。。。
    (昔は20万円くらいしたよね)
    •EV SSL証明書で色々とテスト・検証したい
    場面が出てきた
    •アドレスバーに「ozuma5119」って出した
    い!
    31

    View Slide

  31. 個人はダメと明記しているところ多い 32
    https://knowledge.digicert.com/ja/jp/solution/SO23315.html
    EV SSL証明書を申請できる団体の要件について
    Problem
    EV SSL証明書 を申請・取得できる団体の要件を教えてください。
    Solution
    弊社でEV SSL証明書の申請を受付可能な団体は、以下とおりで
    す。
    法人登記の無い組合・組織・団体や個人事業主、また個人に発
    行することはできません。
    •日本に登記のある法人・団体
    一般企業、財団法人、国立大学法人、学校法人、社団法人、組
    合、相互会社、その他法人などの単位
    •中央省庁および国の機関/地方公共団体およびその機関

    View Slide

  32. 個人ダメと明記してなかったところへ。。。 33
    XXXXXX ご担当者さま
    御社では、個人、もしくは個人事業主を対象として
    EV SSL証明書を発行して頂くことは可能でしょうか?
    背景としまして、私は個人でセキュリティのリサー
    チャーをしており、検証・開発用にEV SSLのWeb
    サーバを構築したいという意図がございます。
    おそらく不可とは思うのですが、確認させて頂きた
    く。
    よろしくお願いいたします。

    View Slide

  33. ダメでした 34
    お問い合わせありがとうございます。
    ご推察の通り、EV SSLは企業認証より一段階厳しい認
    証を前提とした証明書となっており、
    法人登記のない個人/個人事業主の方に対しては発行
    することは致しかねます。
    ※企業認証SSLである弊社のその他の商品でも個人/個
    人事業主の方には発行対象外となります。
    以上、ご理解の程、よろしくお願い致します。
    ※某社さま、お忙しい中にご丁寧な回答、
    誠にありがとうございました。

    View Slide

  34. EV SSL Certificate Guidelinesの発行規定 35
    以下のどれかにしか発行できない(明記されてる)
    • Private Organization
    • Government Entity
    • Business Entity
    • Non-Commercial Entity

    View Slide

  35. ほとんどはPrivate Organization 36
    NPO法人だけど
    Non-Commercialでなく
    Private Organization
    特定非営利活動法人
    日本情報技術取引所
    https://www.jiet.or.jp/

    View Slide

  36. 37
    3rd
    Section
    買えないので作る:
    オレオレEV SSL証明書

    View Slide

  37. そもそも、ブラウザはEVをどう判定? 38
    EV SSL 証明書
    EV以外のSSL証明書
    ※Firefoxを利用
    • 詳細は先ほどのCA/Browser Forumの
    EV SSL Certificate Guidelines
    9. EV Certificate Content and Profile

    View Slide

  38. 細かい条件がいっぱいある 39
    たとえば、、、Subjectフィールド
    Subjectのシリアル番号

    組織区分 がRequired

    View Slide

  39. ちなみに法務省登記サービスのSubjectシリアル番号 40
    CN = www.touki.or.jp
    OU = Civil Affairs Bureau administration
    division001
    O = 法務省
    L = CHIYODA-KU
    ST = TOKYO
    C = JP
    Object Identifier (2 5 4 5) = Government Entity
    Object Identifier (2 5 4 15) = Government Entity
    Object Identifier (1 3 6 1 4 1 311 60 2 1 3) = JP
    2.5.4.5 = serialNumber

    View Slide

  40. 一番のキモは、Certificate PoliciesのEV OID 41
    EV SSL Certificate Guidelines 4. Definitions
    EV OID: An identifying number, in the form of an “object identifier,”
    that is included in the certificatePolicies field of a certificate that: (i)
    indicates which CA policy statement relates to that certificate, and (ii) is
    either the CA/Browser Forum EV policy identifier or a policy identifier
    that, by pre-agreement with one or more Application Software Supplier,
    marks the certificate as being an EV Certificate.
    EV OIDとは、certificatePoliciesフィールドに入れ
    て、それがEV SSL証明書かどうかをマークする
    OID(Object IDentifier)です(意訳)

    View Slide

  41. EV SSL証明書のEV OID(Object IDentifier) 42
    https://www.touki.or.jp/
    • 2.16.840.1.113733.1.7.23.6
    • 2.23.140.1.1

    View Slide

  42. EV SSL証明書判別のOID(Object IDentifier)は2つ 43
    2.16.840.1.113733.1.7.23.6
    2.23.140.1.1
    認証局固有のPolicy OID(上記例はVeriSignの値)
    各ブラウザはソースにハードコードしている
    CA/Broswer Forumの定めるOID
    (EV SSL Certificate Guidelinesに記載)

    View Slide

  43. Firefoxのソース ExtendedValidation.cpp 44
    https://hg.mozilla.org/mozilla-central/file/tip/security/certverifier/ExtendedValidation.cpp
    static const struct EVInfo kEVInfos[] = {
    .....(省略).....(
    {
    // CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. -
    For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
    "2.16.840.1.113733.1.7.23.6",
    "VeriSign EV OID",
    { 0x9A, 0xCF, 0xAB, 0x7E, 0x43, 0xC8, 0xD8, 0x80, 0xD0, 0x6B, 0x26,
    0x2A, 0x94, 0xDE, 0xEE, 0xE4, 0xB4, 0x65, 0x99, 0x89, 0xC3, 0xD0,
    0xCA, 0xF1, 0x9B, 0xAF, 0x64, 0x05, 0xE4, 0x1A, 0xB7, 0xDF },
    "MIHKMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNV"
    "BAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA2IFZl"
    "cmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMT"
    "PFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBB"
    "dXRob3JpdHkgLSBHNQ==",
    "GNrRniZ96LtKIVjNzGs7Sg==",
    +
    −},
    .....(省略).....(

    View Slide

  44. Firefoxのソース ExtendedValidation.cpp 45
    https://hg.mozilla.org/mozilla-central/file/tip/security/certverifier/ExtendedValidation.cpp
    static const struct EVInfo kEVInfos[] = {
    .....(省略).....(
    {
    // CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. -
    For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
    "
    2.16.840.1.113733.1.7.23.6",
    "VeriSign EV OID",
    { 0x9A, 0xCF, 0xAB, 0x7E, 0x43, 0xC8, 0xD8, 0x80, 0xD0, 0x6B, 0x26,
    0x2A, 0x94, 0xDE, 0xEE, 0xE4, 0xB4, 0x65, 0x99, 0x89, 0xC3, 0xD0,
    0xCA, 0xF1, 0x9B, 0xAF, 0x64, 0x05, 0xE4, 0x1A, 0xB7, 0xDF },
    "MIHKMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNV"
    "BAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA2IFZl"
    "cmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMT"
    "PFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBB"
    "dXRob3JpdHkgLSBHNQ==",
    "GNrRniZ96LtKIVjNzGs7Sg==",
    +
    −},
    .....(省略).....(
    OID
    2.16.840.1.113733.1.7.23.6
    は、ソースへハードコード!
    ※その他、全CAのEV OIDが
    ハードコードされている

    View Slide

  45. Chrome (Chromium)も同様 46
    https://chromium.googlesource.com/chromium/src/net/+/master/cert/ev_root_ca_metadata.cc
    static const EVMetadata kEvRootCaMetadata[] = {
    ....(省略)....
    // VeriSign Class 3 Public Primary Certification Authority - G5
    // https://www.verisign.com/
    {
    {{0x9a, 0xcf, 0xab, 0x7e, 0x43, 0xc8, 0xd8, 0x80, 0xd0, 0x6b, 0x26,
    0x2a, 0x94, 0xde, 0xee, 0xe4, 0xb4, 0x65, 0x99, 0x89, 0xc3, 0xd0,
    0xca, 0xf1, 0x9b, 0xaf, 0x64, 0x05, 0xe4, 0x1a, 0xb7, 0xdf}},
    {"2.16.840.1.113733.1.7.23.6", ""},
    },
    ....(省略)....

    View Slide

  46. 2つのOIDを証明書のCertificate Policiesへ 47
    Firefox
    まず認証局固有のOID
    次にCA/B ForumのOID

    View Slide

  47. 逆順に書いても、仕様上は問題ないが...... 48
    https://bugs.chromium.org/p/chromium/issues/detail?id=705285
    • 2.23.140.1.1
    • 2.16.840.1.113733.1.7.23.6
    Chrome 57で、EV SSL証明書なのにEV扱いされず
    • 組織名がアドレスバーに出ない
    • グリーンバーにならない
    という大バグが発覚
    当時、GoogleはSymantecをDistrust宣言しており、
    Symantec発行の証明書で再現したため、当初は
    「Symantecへの嫌がらせか!?」という憶測も
    まずCA/B ForumのOID
    次にCA固有のOID

    View Slide

  48. EV OIDバグ対策 49
    • 2.16.840.1.113733.1.7.23.6
    • 2.23.140.1.1
    対策1(主流)
    同じバグを悪のG帝国が踏むのを恐れて、
    2.23.140.1.1は後ろに持って行く
    • 2.16.840.1.113733.1.7.23.6
    対策2(一部)
    CA/Browser ForumのOIDは付けない
    日本ではセコムトラストシステムズなど

    View Slide

  49. 50
    https://www.secomtrust.net/
    1.2.392.200091.100.721.1

    View Slide

  50. ちなみに... EV OIDの一覧はどこに? 51
    権威あるCA/Browser Forumに聞こう

    View Slide

  51. ちなみに... EV OIDの一覧はどこに? 52
    CA/Browser Forumに聞こう
    ソースは
    Wikpedia[要出典]

    View Slide

  52. 54
    EV SSL証明書と認識させる

    View Slide

  53. Private CAでオレオレEV OIDを入れた証明書作成
    ブラウザのルートトラストストアに
    Private CAの証明書を追加
    自作EV証明書でグリーンバーを出すには 55
    ブラウザのEV OID定義に、オレオレEV OIDを追加
    ブラウザを再ビルド
    ブラウザのソースをダウンロード
    で、理論上は行けるはず...

    View Slide

  54. FirefoxとChrome、どちらをいじるか 56
    結論:Firefoxがオススメ
    Google Chrome (Chromium)は...
    • ソースコードがあまりにも巨大(数GB)
    • ビルドするためのGoogle独自ツール群、gclientなどが使わ
    れていて、ビルド手順が複雑怪奇
    • WindowsでビルドしようとslnファイルをVisual Studioで開
    いたら、1時間経っても起動しなかった
    • 「バベルの塔が神に怒られずに完成しちゃった」
    出典:Turing Complete FM 25. https://turingcomplete.fm/25#t=33:49

    View Slide

  55. 57
    FirefoxにオレオレEV OID

    View Slide

  56. FirefoxソースでのEV OID構造体 58
    static const struct EVInfo kEVInfos[] = {
    {
    // CN=Cybertrust Global Root,O=Cybertrust, Inc
    "1.3.6.1.4.1.6334.1.100.1",
    "Cybertrust EV OID",
    { 0x96, 0x0A, 0xDF, 0x00, 0x63, 0xE9, 0x63, 0x56, 0x75,
    0x0C, 0x29,
    0x65, 0xDD, 0x0A, 0x08, 0x67, 0xDA, 0x0B, 0x9C, 0xBD, 0x6E,
    0x77,
    0x71, 0x4A, 0xEA, 0xFB, 0x23, 0x49, 0xAB, 0x39, 0x3D,
    0xA3 },
    "MDsxGDAWBgNVB...(省略)...Q3liZXJ0cnVz"
    "dCBHbG9iYWwgUm9vdA==",
    "BAAAAAABD4WqLUg=",
    },
    /security/certverifier/ExtendedValidation.cpp

    View Slide

  57. FirefoxソースでのEV OID構造体 59
    static const struct EVInfo kEVInfos[] = {
    {
    // CN=Cybertrust Global Root,O=Cybertrust, Inc
    "1.3.6.1.4.1.6334.1.100.1",
    "Cybertrust EV OID",
    { 0x96, 0x0A, 0xDF, 0x00, 0x63, 0xE9, 0x63, 0x56, 0x75,
    0x0C, 0x29,
    0x65, 0xDD, 0x0A, 0x08, 0x67, 0xDA, 0x0B, 0x9C, 0xBD, 0x6E,
    0x77,
    0x71, 0x4A, 0xEA, 0xFB, 0x23, 0x49, 0xAB, 0x39, 0x3D,
    0xA3 },
    "MDsxGDAWBgNVB...(省略)...Q3liZXJ0cnVz"
    "dCBHbG9iYWwgUm9vdA==",
    "BAAAAAABD4WqLUg=",
    },
    /security/certverifier/ExtendedValidation.cpp
    struct EVInfo
    {
    const char* dottedOid;
    const char* oidName;
    unsigned char
    sha256Fingerprint[SHA256_LENGTH];
    const char* issuerBase64;
    const char* serialBase64;
    };

    View Slide

  58. nss toolsのppコマンドで簡単作成 60
    $ nss/dist/Debug/bin/pp -t certificate-identity
    -i ./DigiCertHighAssuranceEVRootCA.der
    ...(省略)...
    Serial Number:
    02:ac:5c:26:6a:0b:40:9b:8f:0b:79:f2:ae:46:25:77
    Issuer DER Base64:
    MGwxCzAJ...(省略)...IFJvb3QgQ0E=
    Serial DER Base64:
    AqxcJmoLQJuPC3nyrkYldw==
    Serial DER as C source:
    { 16, "¥x02¥xac¥x5c...(省略)...¥xae¥x46¥x25¥x77" }
    Fingerprint (SHA-256):
    74:31:E5:F4:C3:C1:CE:46:90:77:4F:0B:61:E0:54:40:88:
    3B:A9:A0:1E:D0:0B:A6:AB:D7:80:6E:D3:B1:18:CF
    Fingerprint (SHA1):
    5F:B7:EE:06:33:E2:59:DB:AD:0C:4C:9A:E6:D3:8F:1A:61:C7:DC:25

    View Slide

  59. Firefoxのデバッグ用EV OID 61
    static const struct EVInfo kEVInfos[] = {
    {
    "1.3.6.1.4.1.13769.666.666.666.1.500.9.1",
    "DEBUGtesting EV OID",
    { 0x70, 0xED, 0xCB, 0x5A, 0xCE, 0x02, 0xC7, 0xC5, 0x0B, 0xA3, 0xD2, 0xD7,
    0xC6, 0xF5, 0x0E, 0x18, 0x02, 0x19, 0x17, 0xF5, 0x48, 0x08, 0x9C, 0xB3,
    0x8E, 0xEF, 0x9A, 0x1A, 0x4D, 0x7F, 0x82, 0x94 },
    "MBExDzANBgNVBAMMBmV2cm9vdA==",
    "IZSHsVgzcvhPgdfrgdMGlpSfMeg=",
    },
    /security/certverifier/ExtendedValidation.cpp
    このOIDをオレオレEV SSL証明書のOIDに使おう......

    View Slide

  60. Private CAでオレオレEV OIDを入れた証明書作成
    魔改造Firefoxでやること(再確認) 62
    Firefoxソースに、オレオレEV OIDとPrivate CAの
    Fingerprintなどを追加
    Firefoxをビルド
    ppコマンドでPrivate CAのFingerprintなど取得

    View Slide

  61. 63
    独自EV OIDを入れた証明書

    View Slide

  62. プライベートCA作成 64
    [Root CA]
    |
    +---[Sub CA]
    |
    +-----[Certificate 1]
    +-----[Certificate 2]
    +-----[Certificate 3]
    ..........
    以下書籍を参考に各自がんばってください
    Ivan Ristić「プロフェッショナルSSL/TLS」
    11.4 プライベートCAを作る

    View Slide

  63. オレオレEV OID入りの証明書作成 65
    [server_ext_evssl]
    ....(省略)....
    certificatePolicies =
    1.3.6.1.4.1.13769.666.666.666.1.500.9.1,
    2.23.140.1.1
    sub-ca.conf
    $ openssl ca -config sub-ca.conf -in server.csr ¥
    -out server.crt -extensions server_ext_evssl
    openssl caで証明書発行
    まずベンダ固有(オレ)のOID
    次にCA/B ForumのOID

    View Slide

  64. これで行けるはず
    1. 作ったデバッグ用OIDの入ったEV SSL証明書
    をApache HTTP Serverに設定
    2. FirefoxソースにPrivate CAのFingerprintなどを
    入れてビルド
    3. ビルドしたFirefoxで、(1)にhttpsアクセス
    4. EV表示が出る! ………はず
    66

    View Slide

  65. ダメでした 67
    これなら上手くいくぜ! と分かる方、
    教えてください

    View Slide

  66. 68
    Appendix
    おもしろEV SSL豆知識

    View Slide

  67. Tor (.onion) のEV SSL証明書 69
    Appendix F – Issuance of Certificates for .onion Domain
    Names
    A CA may issue an EV Certificate with .onion in the right-most
    label of the Domain Name provided that issuance complies with
    the requirements set forth in this Appendix:
    1. CAB Forum Tor Service Descriptor Hash extension
    (2.23.140.1.31)
    The CA MUST include the CAB Forum Tor Service Descriptor
    Hash extension in the TBSCertificate convey hashes of keys
    related to .onion addresses. The CA MUST include the Tor
    Service Descriptor Hash extension using the following format:
    EV SSL Certificate Guidelines

    View Slide

  68. 実際のTor (.onion) のEV SSL証明書 70
    https://www.facebookcorewwwi.onion/

    View Slide

  69. Tor (.onion) のSSL証明書の意義 71
    • Torでは途中経路は匿名化&暗号化されるが、出
    口ノード(末端)は暗号化されていない
    • Torを使いつつ、End-to-Endでの暗号化を保証し
    たい場合には意味がある
    • すべての発行されるSSL証明書は、Certificate
    Transparencyにより「丸見え」のため、FQDNは
    全世界にバレる
    • 悪い人たちは使っていない
    • 現在対応してるCAはDigicertのみの模様

    View Slide

  70. Agenda
    •1st section “SSL証明書おさらい”
    •PKIと証明書
    •DV/OV/EV SSL証明書
    •2nd section “個人でEV SSL証明書”
    •普通に買えるのか
    •3rd section “オレオレEV SSL証明書”
    •自分で認証局から作っちまうか......
    •Appendix “おもしろEV豆知識”
    72

    View Slide

  71. 参考文献
    • CA/Browser Forum
    • Baseline Requirements
    • Extended Validation Guidelines
    • https://cabforum.org/
    • Ivan Ristić「プロフェッショナルSSL/TLS」
    • https://www.lambdanote.com/products/tls
    • InternetWeek 2017
    • 「今理解しておくべきWeb PKIを支えるトラストの動向」島岡 政基/セ
    コム株式会社
    • https://www.nic.ad.jp/ja/materials/iw/2017/proceedings/s11/
    • 自堕落な技術者の日記
    • http://blog.livedoor.jp/k_urushima/
    73

    View Slide