4 SSL する


PIC
____________________________________________________________________

Debian Project か ら 発 表 さ れ た Debian セ キ リ テ DSA–1571 OpenSSL するものでした 端を発っした他の Debian セキリテとはややなるげかけには インプレスリリ発表するまで的影がりましたこれを機会OpenSSL について みをします

4.1

2008 5 14 Debian セキリテOpenSSL 性情発表されました

DSA-1571-1 openssl – 予測可能な生成 [1]

Debian システム0.9.8c-1 OpenSSL されたする 直す必要がありますさらにける Debian システム名や認証的で使われ ての DSA であるとえてくださいデジタル名アルゴリズム名生成密の 存しているからです

これによりえた OpenSSL 使生成されたであるものと認識されそれには SSL 利用される X.509 まれていました

4.2 的影

複数X.509 認証からDSA-1571 のための発行について発表されま し た

5 16 日日クロストラスト Debian まれる OpenSSL へのするお *1

5 19 サイバトラスト 発行無料であることをアピ *2

5 20 日日ベリサイン ベリサインLinux OS によるけたお発行 *3

5 21 Comodo COMODO OFFERS FREE REPLACEMENT CERTIFICATE TO ANY INDIVIDUALS AFFECTED BY DEBIAN VULNERABILITY FLAW*4 .

5 22 グロバルサイン について喚起した発行がもともと無料であることさりげなくアピ *5

4.3

まずはOpenSSL ベリサインなどの認証とのかすまずについて ます

4.3.1 名と

と は し て す る で す 名 が と す る が あり するするしかも片方してもわないようにできています名を名者 A さんは密のSA (密鍵) PA () しますまた名されるデジタルM としておき ます

A さんが A さんにしかれないモノればA さんがかに A さんであることをせます

PICT

A さんしからない SA 使名をすと名をしたかに A さんであることがせま なおA さんがそれを認するにはPA 使います

PICT

A さんがあることを表明しましたその表明文に A さんしからない SA 使名をすと かに A さんがそれを表明したことがせますなおA さんがそれを認するにはPA 使 ます

M σ 与えるf とすると

σ = fSA(M )
(1)

このようにされますにまとめると念上

です

4.3.2

X さんのPX かに X さんのものであることを表明する文書ですPX かに X さん のものであるというmX とすると認証 C がその文書発行する1M PX mX (PX,mX) SA SC したものになります

σX = fSC((PX,mX ))
(2)

こうしてある名するというまれましたこれは連鎖させることができます-→ 名する表すと

PC -→  P1 -→ P2 - → P3 -→ P4 -→ ⋅⋅⋅
(3)

のようなたせることができるわけですPC 認証予めできると分かているものとすれば P1,P2,P3,P4,はすべてできることになります

単にPA A さんに属するということだけでなく他の名されますえばB いうするXXX です。 」 のような表明です

4.3.3 ITU-T X.509

使われているのひとつはX.509 規格たもので *6 もともと連の下位機関である国際連合 (ITU) めたですその頭に X X シリばれていてする分類されていま *7 X.509 ではX.500 名を しためています*8

レクトリサビスうのは的な名前からそれにするオブジクトとその属性とをできるよう にしたシステムです的な名前というもののげてみると

1:

2:

イルシステムレクトリイル

3:

DNS ドメイン名とホスト

のようものですX.500 では 1 のような的な名前をうまくえるようになていて八百屋さんで ある八百竹X.500 くと

C=JP, ST=Kyoto, L=Mukou, CN=Yaotake

になります

4.3.4 SSL

SSL およびそのTLS[4]ではハンドシイクX.509 しますそのうち からクライアントけてされる SSL クライアント (ブラウザ) からかに 分がアクセスしようとしているなのかどうかを認するするのがつの役目ですそのために にはまれています

これらの認証発行する運営認証する書署名要 (Certificate Signing Request 略して CSR) しますなお認証かいがありま *9 しくは認証CPS (Certification Practice Statement) CP (Certificate Policy) というされた文書いてある こともあります

またまれる名だけでなくにも使えるSSL するにも 使われます

4.3.5 リスト

まれている的に有効であるためには

1.

アルゴリズム的にである

2.

密鍵密のままされている

3.

分広鍵空からばれていてたりでは密鍵できそうにない

揃っている必要がありますがには発行後これらのれてしまうこともあります

X.509 とした PKI (Public Key Infrastructure) ではこのようなされてますです ので必ずには有効められていてれのがいつまでもらないようにしてい ます

またもしもこれらのたさなくなもう使えない発生したら認証にそのますする 認証そのリスト(Certificate Revocation List 略して CRL)しますCRL していてどこでれたらいかは予めcRLDistributionPoints いう属性してありますにするではほとんどのhttp まる URL かれてい ますがLDAP レクトリサすることもされているよう です

なおCRL されるのはしたSerial Number という属性したですCN (即ち ホスト) ていませんのでどのしたかはCRL ただけでは分かりま せん

4.4

4.4.1 DSA–1571 OpenSSL

SSL するOpenSSL するをざげると

  1. 生成
  2. 書署名要(Certificate Signing Request あるいは略して CSR) 生成
  3. web SSL Apache httpd mod_ssl など

がありますDSA–1571 生成できるでしか生成していなかという ことがになていましたので4.3.5 3 たされなくなうのが DSA–1571 から発生した です

4.4.2 密鍵暴かれることで立つ

密鍵暴かれることことで立するにはのようなものがえられます

  1. SSL Man-in-the-middle
  2. SSL パケ聴して録しておきから SSL ハンドシイク密の暴く
  3. コンピルス使hosts イルへの録や DNS cache poisoning わせ SSL 立てる*10

1, 2 すれば更後になります

3 してはSSL 使うことをしたとしても するしていれば立します但し認証して させてくれればCRL されますほぼすべての認証CPS などで続きについてしてお しているはずですのでさえしかりしていてくれればはして もらえますですのであとはクライアント側が CRL できれば3 することもできるわけ です

クライアント立場SSL 利用するすなわちhttps まる URL サイト訪問する 4.4.8するなるべくしい CRL ブラウザみま

するとブラウザCRL して有効認してくれます

4.4.3 リスト方法

現在認証CRL web することが多いですですのでURL 分かれば web ブラウザ することができます

またIceweasel*11 CRL URL アクセスすると動的にカルしているリストしようとします

4.4.4 Iceweasel 表示した SSL CRL する

SSL アクセスして表示されたクリするとメニ表示されますここで [ 表示] 選択[セキリテ ] タブ選択[表示] 選択しますすると立ちがりますここ [] タブ選択します[ルド]-[CRL Distribution Point ] ぶとCRL がどこでされているかが 表 示 さ れ ま す

URI: http://crl.globalsign.net/OrganizationVal1.crl

のようながかかれていますのでこの URL アドレスバ張りけてアクセスしますするとリスト (CRL) 正常されましたというプアプウンドウ表示されさらにそのこの CRL 動更 無効になています動更有効にしますかあるいはこの CRL 動更有効になています 表示しますか表示されます今後動更したい動更有効にしておき ます

4.4.5 Iceweasel CRL する

[(N)]—[]—[]—[リスト (R)] CRL てきます

(D)
CRL 録情する
(S)
CRL 紐づけて予め録してある URL ポリシする
(U)
予め録してある URL から CRL
インポ(M)
しく URL して CRL
4.4.6 CRL



1: リスト (CRL) URL



認証
URL




GeoTrust http://www.geotrust.com/resources/crls/index.asp


GlobalSign http://crl.globalsign.com/


Thawte http://crl.thawte.com/


CyberTrust http://crl.omniroot.com/


セコムトラストシステムズ http://repo1.secomtrust.net/spcpp/pfw/pfwevca/

http://repo1.secomtrust.net/spcpp/pfw/pfwca/

http://repo1.secomtrust.net/spcpp/pfw/pfwsrca/


NetLock http://www.netlock.hu/USEREN/html/cacrl.html


NetworkSolutions http://crl.netsolssl.com/NetworkSolutionsCertificateAuthority.crl


QuoVadis http://www.quovadisglobal.bm/Repository/DownloadRootsAndCRL.aspx


RSA Security Inc. http://crl.rsasecurity.com/


Starfield Technologies Inc. https://certs.starfieldtech.com/Repository.go


SwissSign AG http://swisssign.net/cgi-bin/authority/crl


TrustCenter GmbH http://www.trustcenter.de/cgi-bin/CRL.cgi

http://www.trustcenter.de/cgi-bin/CRL.cgi?Language=en


Unizeto Certum http://www.certum.eu/certum/cert,certificates_crl_lists.xml


ベリサイン https://www.verisign.co.jp/repository/crl.html


Verisign http://www.verisign.com/repository/crl.html


XRamp Security http://crl.xrampsecurity.com/





2: リスト (CRL) URL



認証
URL




AddTrust http://www.addtrust.com/crl/publicroot.crl


CoMoDo http://crl.comodo.net/UTN-USERFirst-Hardware.crl


Entrust http://crl.entrust.net/server1.crl

http://crl.entrust.net/rootca1.crl

http://www.entrust.net/CRL/net1.crl

http://crl.entrust.net/level1a.crl


IdenTrust http://crl.identrust.com/trustid/trustidcaa5.crl

ldap://ldap.identrust.com/cn=TrustID%20Server%20CA%20A5,
ou=TrustID%20Server,o=Digital%20Signature%20Trust%20Co.
,c=US?certificateRevocationList;binary


StartCom http://www.startssl.com/crt3-crl.crl

http://crl.startssl.com/sfsca.crl

http://cert.startcom.org/sfsca-crl.crl


SwissSign http://crl.swisssign.net/5B257B96A465517EB839F3C078665EE83AE7F0EE

ldap://directory.swisssign.net/CN=SwissSign%20Gold%20CA%20%2D%20G2%2C
O=SwissSign%20AG%2CC=CH?certificateRevocationList
?base?objectClass=cRLDistributionPoint



CRL されていませんし布方法もまちまちですまた認証web てもその認証している CRL 分かりくまとめていることはないですしCRL イルへのリンクさずにSerial Number するしている認証もありま *12 その認証しているcRLDistributionPoints ないと CRL のありかが分からないこともしくありま せん

しかし面目調べすととてもたくさんの CRL されていることが分かります

このようななのでSSL 立っCRL 網羅的にすることはなことではありません 1 いくつかの認証CRL URL 2 CRL URL せておき ます

4.4.7 Iceweasel OCSP する

CRL のかわりにOnline Certificate Status Protocol[6] (略して OCSP) 使SSL or TLS リアルタイム 有効わせる方法もありますIceweasel では[(N)]—[]—[]—[(V)] OCSP てきますここには

というがありますVerisign 発行するには Authority Information Access わせの URL ているようですが認証によせていないこともあります

4.4.8 CRL OCSP 利用

認証発行したすることとCRL OCSP 利用して認する には認証任のするらかの法的なめられるとわれますがそのことを web サイトしている 認証 [12]もあればそうでない認証もあります

えばベリサイン発行するする CRL OCSP 利用するには ベリサイン事者[9]することがめられています

またその文書事者[11]やその名称Relying Party Agreement[10][13]である認証もあれば CPS[12][14]である認証もあります

4.5 まとめ

SSL について単にしましたまれる漏洩したりであること らかになられる続きのみについてしました

4.6

4.6.1 OpenSSL 使

$ sudo aptitude install openssl wget

生成

$ openssl genrsa -F4 -out example.key 1024  
$ openssl gendsa  -out example.key 1024

CSR 生成

$ cat example.cnf  
[ req ]  
default_bits = 1024  
distinguished_name = req_distinguished_name  
prompt = no  
 [ req_distinguished_name ]  
C  = JP  
ST = Kyoto  
L  = Mukou  
O  = Yaotake  
OU = Net business division  
CN = www.example.com  
$ openssl req -new -key example.key -sha1 -config example.cnf -out example.csr

CRL 表示

AddTrust する CRL である http://www.addtrust.com/crl/publicroot.crl して表示する :

$ wget -O - http://www.addtrust.com/crl/publicroot.crl | openssl crl -inform DER -text | more