PNG IHDR Û € ; ®IDATxÚíÜ»n€0áŒÿK¡ )(ŠpAá ±Ç7LeG{ý§ §㻢|¬ïذaà 6lذaà 6lذaà 6lomûó$^þy¿úÝØ°ag5 bà 6lذaà 6lذa{íŒ 6lذaà `µçãŽ}HÏFkm,m¶Ðû¬ÓªñÑêÃŽÒÃŽ!ÝxÛ|'Ü¢Ë;·E:Ôõ9&á¶¶}®{v]n&Ñ6ç íhíÕ_õ÷tšÚ ͵-Ò«¯ºZ;úŽZ$Û.PÔÄøkíÅŸ)º!§o¡¡>}l³eQfJÕT±u ѵòåÚª×\âÝX=8ÝîRÙ4`VwòlŸ>ëÃ×únGþ^ìiŸs©Ì"msÙ$×uñÝi»?w¡bs[m©6³K4áãçO¹.£4Þ%ºÐ×/õÀßÏbëC%çtûM× ú-lîG6±mrz2ô¶s%»9Às@¹ì-âk»9 =ìæî)ÎÝõÌåâk»B5ÕËÂ×\Ãñ+ÍçZsÙ²åµòRnÚÂ~G§ ÉRНCíšÉwIcIïén7jJ°åèhÛNCS|ìâÓj0æªò8yï·œiHKÛÖ¶ÐkòÉ+;Sz°¶úšáL /µFÐ*\çÆÔË#"5¯Âmë2Üï[SÅ«»Íú£=©g¯ÎnaóP eÚÒûî¬LÛÿ lذaà 6lØ^kãï̱aà 6lذaà 6lذa;ÿ ¶_ÚÎØ°aà 6lذaà 6lذaà ¶ášëR¢ÇÆ IEND®B`
Apache HTTP ãµãŒã ããŒãžã§ã³ 2.4
æšæºèŠæ Œã®è¯ãæã¯ãããããã®èŠæ Œããéžã¹ããšããããšã ã ãããŠãããæ¬åœã«ã©ã®èŠæ Œãæ°ã«å ¥ããªããã°ã äžå¹ŽåŸ ã€ã ãã§æ¢ããŠããèŠæ ŒãçŸããã
-- A. Tanenbaum, "Introduction to Computer Networks"
å
¥éãšããããšã§ããã®ç« 㯠WebãHTTPãApache ã«éããŠãã
èªè
åãã§ãããã»ãã¥ãªãã£å°éå®¶åãã§ã¯ãããŸããã
SSL ãããã³ã«ã®æ±ºå®çãªæåŒãã§ããã€ããã¯ãããŸããã
ãŸããçµç¹å
ã®èªèšŒç®¡çã®ããã®ç¹å®ã®ãã¯ããã¯ãã
ç¹èš±ã茞åºèŠå¶ãªã©ã®éèŠãªæ³çãªåé¡ã«ã€ããŠãæ±ããŸããã
ããããæŽãªãç ç©¶ãžã®åºçºç¹ãšããŠè²ã
ãªæŠå¿µãå®çŸ©ãäŸã䞊ã¹ãããšã§
mod_ssl
ã®ãŠãŒã¶ã«åºç€ç¥èãæäŸããäºãç®çãšããŠããŸãã
ããã«ç€ºãããå
容ã¯äž»ã«ãåèè
ã®èš±å¯ã®äž
The Open Group Research Institute ã® Frederick J. Hirsch
æ°ã®èšäº
Introducing SSL and Certificates using SSLeay ãåºã«ããŠããŸãã
æ°ã®èšäºã¯ Web Security: A Matter of
Trust, World Wide Web Journal, Volume 2, Issue 3, Summer 1997
ã«æ²èŒãããŸããã
è¯å®çãªæèŠã¯ Frederick Hirsch æ°
(å
èšäºã®èè
) ãžå
šãŠã®èŠæ
㯠Ralf S. Engelschall (
mod_ssl
ã®äœè
) ãžãé¡ãããŸãã
(蚳泚: èš³ã«ã€ããŠã¯
Apache ããã¥ã¡ã³ã翻蚳ãããžã§ã¯ã
ãžãé¡ãããŸãã)
SSL ãçè§£ããã«ã¯ãæå·ã¢ã«ãŽãªãºã ã ã¡ãã»ãŒãžãã€ãžã§ã¹ã颿°(å¥å: äžæ¹å颿°ãããã·ã¥é¢æ°)ã é»å眲åãªã©ãžã®çè§£ãå¿ èŠã§ãã ãããã®æè¡ã¯æ¬ãäžžããšå¿ èŠãªé¡ç®ã§ (äŸãã° [AC96] ãåç §)ã ãã©ã€ãã·ãŒãä¿¡çšãèªèšŒãªã©ã®æè¡ã®åºç€ãšãªã£ãŠããŸãã
äŸãã°ãã¢ãªã¹ãééã®ããã«éè¡ã«ã¡ãã»ãŒãžãéããããšããŸãã å£åº§çªå·ãééã®éé¡ãå«ãŸããããã ã¢ãªã¹ã¯ãã®ã¡ãã»ãŒãžãç§å¯ã«ããããšæããŸãã è§£æ±ºæ¹æ³ã®äžã€ã¯æå·ã¢ã«ãŽãªãºã ã䜿ã£ãŠãã¡ãã»ãŒãžã 埩å·ããããŸã§èªãããšãã§ããªãæå·åããã 圢æ ã«å€ããŠããŸãããšã§ãã ãã®åœ¢æ ã«ãªããšã ã¡ãã»ãŒãžã¯ç§å¯ã®éµã«ãã£ãŠã®ã¿åŸ©å·åããããšãã§ããŸãã éµãªãã§ã¯ãã¡ãã»ãŒãžã¯åœ¹ã«ç«ã¡ãŸããã è¯ãæå·ã¢ã«ãŽãªãºã ã¯ãäŸµå ¥è ãå ã®ããã¹ããè§£èªããããšã éåžžã«é£ãããããããåªåãå²ã«åããªããããŸãã
æå·ã¢ã«ãŽãªãºã ã«ã¯ åŸæ¥åãšå ¬ééµã®äºã€ã®çš®é¡ããããŸãã
å ¬ééµã䜿ã£ãŠèª°ããã¡ãã»ãŒãžãæå·åã§ããŸãããç§ å¯éµã®æã¡äž»ã ãããããèªãããšãã§ããŸãã ãã®æ¹æ³ã§ãéè¡ã®å ¬ééµã䜿ã£ãŠæå·åããããšã§ã ã¢ãªã¹ã¯ç§å¯ã®ã¡ãã»ãŒãžãéãããšãã§ããŸãã éè¡ã®ã¿ãéãããã¡ãã»ãŒãžã埩å·ããããšãã§ããŸãã
ã¢ãªã¹ã¯ã¡ãã»ãŒãžãç§å¯ã«ããããšãã§ããŸããã 誰ããäŸãã°èªåã«ééããããã«ã¡ãã»ãŒãžã倿Žãããã å¥ã®ãã®ã«çœ®ãæããŠããŸããããããªããšããåé¡ããããŸãã ã¢ãªã¹ã®ã¡ãã»ãŒãžã ãšããä¿¡ææ§ãä¿èšŒããæ¹æ³ã®äžã€ã¯ã ã¡ãã»ãŒãžã®ç°¡æœãªãã€ãžã§ã¹ããäœã£ãŠããããéè¡ã«éããšãããã®ã§ãã ã¡ãã»ãŒãžãåãåããšéè¡åŽã§ããã€ãžã§ã¹ããäœæãã ã¢ãªã¹ãéã£ããã€ãžã§ã¹ããšæ¯ã¹ãŸããããäžèŽãããªãã åãåã£ãã¡ãã»ãŒãžã¯ç¡å·ã ãšããããšã«ãªããŸãã
ãã®ãããªèŠçŽã¯ã¡ãã»ãŒãžãã€ãžã§ã¹ãã äžæ¹è¡é¢æ°ããŸãã¯ããã·ã¥é¢æ°ãšåŒã°ããŸãã ã¡ãã»ãŒãžãã€ãžã§ã¹ãã¯é·ãå¯å€é·ã®ã¡ãã»ãŒãžãã çãåºå®é·ã®è¡šçŸãäœãã®ã«äœ¿ãããŸãã ãã€ãžã§ã¹ãã¢ã«ãŽãªãºã ã¯ã¡ãã»ãŒãžãã äžæãªãã€ãžã§ã¹ããçæããããã«äœãããŠããŸãã ã¡ãã»ãŒãžãã€ãžã§ã¹ãã¯ãã€ãžã§ã¹ãããå ã®ã¡ãã»ãŒãžã å€å®ããã®ããšãŠãé£ããããã«ã§ããŠããŠã åãèŠçŽãäœæããäºã€ã®ã¡ãã»ãŒãžãæ¢ãã®ã¯(çè«äž)äžå¯èœã§ãã ããã«ãã£ãŠãèŠçŽã倿Žããããšãªãã¡ãã»ãŒãžã眮ãæãããã å¯èœæ§ãæé€ããŠããŸãã
ã¢ãªã¹ãžã®ããäžã€ã®åé¡ã¯ããã®ãã€ãžã§ã¹ããå®å šã«éãæ¹æ³ãæ¢ãããšã§ãã ãã€ãžã§ã¹ããå®å šã«éãããã°ãã€ãžã§ã¹ãã®ä¿¡ææ§ãä¿éãããŠã ãã€ãžã§ã¹ãã®ä¿¡ææ§ããã£ãŠãªãªãžãã«ã¡ãã»ãŒãžã®ä¿¡ææ§ãåŸãããšãã§ããŸãã ãã€ãžã§ã¹ããå®å šã«éã£ãå Žåã«ã®ã¿ããã®ã¡ãã»ãŒãžã® ä¿¡ææ§ãåŸãããŸãã
ãã€ãžã§ã¹ãå®å šã«éãæ¹æ³ã®äžã€ã¯ãé»å眲åã«å«ããæ¹æ³ã§ãã
ã¢ãªã¹ãéè¡ã«ã¡ãã»ãŒãžãéã£ããšãã äŸµå ¥è ã圌女ã«ãªãããŸããŠåœŒå¥³ã®å£åº§ãžã®ååŒãç³è«ã§ããªãããã«ã éè¡åŽã§ã¯ã¡ãã»ãŒãžãæ¬åœã«åœŒå¥³ããã®ãã®ã確å®ã«åããããã«ããªããã°ãªããŸããã ã¢ãªã¹ã«ãã£ãŠäœæãããŠãã¡ãã»ãŒãžã«å«ãŸãã é»å眲åãããã§åœ¹ã«ç«ã¡ãŸãã
é»å眲åã¯ã¡ãã»ãŒãžã®ãã€ãžã§ã¹ãããã®ä»ã®æ å ±(åŠççªå·ãªã©)ã éä¿¡è ã®ç§å¯éµã§æå·åããããšã§äœãããŸãã 誰ããå ¬ééµã䜿ã£ãŠçœ²åã埩å·ããããšãã§ããŸããã éä¿¡è ã®ã¿ãç§å¯éµãç¥ã£ãŠããŸãã ããã¯éä¿¡è ã®ã¿ã眲åãããããšãæå³ããŸãã ãã€ãžã§ã¹ããé»å眲åã«å«ãããšã¯ã ãã®çœ²åããã®ã¡ãã»ãŒãžã®ã¿ã«æå¹ã§ããããšãæå³ããŸãã ããã¯ã誰ããã€ãžã§ã¹ããå€ããŠçœ²åãããããšãã§ããªãããã ã¡ãã»ãŒãžã®ä¿¡çšãä¿èšŒããŸãã
äŸµå ¥è ã眲åãååããŠåŸæ¥ã«åå©çšããã®ãé²ããã é»å眲åã«ã¯äžæãªåŠççªå·ãå«ãŸããŸãã ããã¯ãã¢ãªã¹ããããªã¡ãã»ãŒãžã¯éã£ãŠããªããšèšãè©æ¬º ããéè¡ãå®ããŸãã 圌女ã ãã眲åãããããã§ãã(åŠèªé²æ¢)
ã¢ãªã¹ã¯ç§å¯ã®ã¡ãã»ãŒãžãéè¡ã«éãã 眲åãããŠãã¡ãã»ãŒãžã®ä¿¡çšãä¿èšŒããããšãã§ããããã«ãªããŸãããã éä¿¡ããŠããçžæãæ¬åœã«éè¡ãªã®ã確ãããªããŠã¯ãããŸããã ã€ãŸã圌女ã䜿ãããšããŠããå ¬ééµããéè¡ã®ç§å¯éµãšå¯Ÿã«ãªã£ãŠããŠã äŸµå ¥è ã®ç§å¯éµãšå¯Ÿã«ãªã£ãŠããããã§ã¯ãªãããšã 確ãããªããŠã¯ãããªãããšãæå³ããŠããŸãã åæ§ã«éè¡ã¯ãã¡ãã»ãŒãžã®çœ²åãæ¬åœã«ã¢ãªã¹ã®æã£ãŠãã ç§å¯éµã§çœ²åããã眲åãã確èªããå¿ èŠããããŸãã
ããäž¡è ã«èº«å ã蚌æããå ¬ééµã確èªãããŸãä¿¡é Œãããæ©é¢ã眲å ããèšŒææžãããã°ãäž¡è ãšãéä¿¡çžæã«ã€ããŠæ£ããçžæã 㚠確信ããããšãã§ããŸãã ãã®ãããªä¿¡é Œãããæ©é¢ã¯èªèšŒå± (Certificate Authority ãŸã㯠CA) ãšåŒã°ãã èšŒææž (certificate) ãèªèšŒ (authentication) ã«äœ¿ãããŸãã
èšŒææžã¯å ¬ééµãšå人ããµãŒãããã®ä»ã®äž»äœã®å®åšã®èº«å ã é¢é£ä»ããŸãã 衚1ã«ç€ºãããããã«èšŒæå¯Ÿè±¡ã®æ å ±ã¯ èº«å 蚌æã®æ å ±(èå¥å)ãšå ¬ééµãå«ãŸããŸãã èšŒææžã¯ãŸããèªèšŒå±ã®èº«å 蚌æãšçœ²åããããŠèšŒææžã®æå¹æéã å«ã¿ãŸãã ã·ãªã¢ã«ãã³ããŒãªã©ã®èªèšŒå±ã®ç®¡çäžã®æ å ±ã ãã®ä»ã®è¿œå ã®æ å ±ãå«ãŸããŠãããããããŸããã
蚌æå¯Ÿè±¡ | èå¥åãå ¬ééµ |
---|---|
çºè¡è | èå¥åãå ¬ééµ |
æå¹æé | éå§æ¥ã倱广¥ |
ç®¡çæ å ± | ããŒãžã§ã³ãã·ãªã¢ã«ãã³ã㌠|
æ¡åŒµæ å ± | åºæ¬çãªå¶çŽããããã¹ã±ãŒããã©ãã°ããã®ä» |
èå¥å(ãã£ã¹ãã£ã³ã°ã€ãã·ã¥ã»ããŒã )ã¯ç¹å®ã®ç¶æ³ã«ããã 身å蚌æãæäŸããã®ã«äœ¿ãããŠããŸããäŸãã°ããã人㯠ç§çšãšäŒç€Ÿãšã§å¥ã ã®èº«å蚌æãæã€ãããããŸããã èå¥å㯠X.509 æšæºèŠæ Œ [X509] ã§å®çŸ©ãããŠããŸãã X.509 æšæºèŠæ Œã¯ãé ç®ãé ç®åããããŠé ç®ã®ç¥ç§°ãå®çŸ©ããŠããŸãã(衚 2 åç §)
èå¥åé ç® | ç¥ç§° | 説æ | äŸ |
---|---|---|---|
Common Name (ã³ã¢ã³ããŒã ) | CN | èªèšŒãããåå SSLæ¥ç¶ããURL |
CN=www.example.com |
Organization or Company (çµç¹å) | O | å£äœã®æ£åŒè±èªçµç¹å | O=Example Japan K.K. |
Organizational Unit (éšéå) | OU | éšçœ²åãªã© | OU=Customer Service |
City/Locality (åžåºçºæ) | L | æåšããŠãåžåºçºæ | L=Sapporo |
State/Province (éœéåºç) | ST | æåšããŠãéœéåºç | ST=Hokkaido |
Country(åœ) | C | æåšããŠããåœåã® ISO ã³ãŒã æ¥æ¬ã®å Žå JP |
C=JP |
èªèšŒå±ã¯ã©ã®é
ç®ãçç¥å¯èœã§ã©ããå¿
é ãã®æ¹éãå®çŸ©ãã
ãããããŸãããé
ç®ã®å
容ã«ã€ããŠãèªèšŒå±ãèšŒææžã®ãŠãŒã¶ããã®
èŠä»¶ããããããããŸããã
äŸãã°ãããã¹ã±ãŒãã®ãã©ãŠã¶ã¯ããµãŒãã®èšŒææžã®
Common Name (ã³ã¢ã³ããŒã )ããµãŒãã®ãã¡ã€ã³åã®
*.snakeoil.com
ãšãããããªã¯ã€ã«ãã«ãŒãã®ãã¿ãŒã³ã«ãããããããš
ãèŠæ±ããŸãã
ãã€ããªåœ¢åŒã®èšŒææžã¯ ASN.1 è¡šèšæ³ [X208] [PKCS] ã§ å®çŸ©ãããŠããŸãã ãã®è¡šèšæ³ã¯å 容ãã©ã®ããã«èšè¿°ããããå®çŸ©ãã 笊å·åã®èŠå®ããã®æ å ±ãã©ã®ããã«ãã€ããªåœ¢åŒã«å€æããããã å®çŸ©ããŸãã èšŒææžã®ãã€ããªç¬Šå·å㯠Distinguished Encoding Rules (DER) ã§å®çŸ©ãããããã¯ããäžè¬ç㪠Basic Encoding Rules (BER) ã«åºã¥ããŠããŸãã ãã€ããªåœ¢åŒãæ±ãããšã®ã§ããªãéä¿¡ã§ã¯ã ãã€ããªåœ¢åŒã¯ Base64 笊å·å [MIME] ã§ ASCII 圢åŒã«å€æãããããšããããŸãã éå§ããªãã¿è¡ãšçµäºããªãã¿è¡ã§å²ãŸããããã®åœ¢åŒã®ããšã PEM ("Privacy Enhanced Mail") 笊å·åãããèšŒææžãšèšããŸãã
-----BEGIN CERTIFICATE----- MIIC7jCCAlegAwIBAgIBATANBgkqhkiG9w0BAQQFADCBqTELMAkGA1UEBhMCWFkx FTATBgNVBAgTDFNuYWtlIERlc2VydDETMBEGA1UEBxMKU25ha2UgVG93bjEXMBUG A1UEChMOU25ha2UgT2lsLCBMdGQxHjAcBgNVBAsTFUNlcnRpZmljYXRlIEF1dGhv cml0eTEVMBMGA1UEAxMMU25ha2UgT2lsIENBMR4wHAYJKoZIhvcNAQkBFg9jYUBz bmFrZW9pbC5kb20wHhcNOTgxMDIxMDg1ODM2WhcNOTkxMDIxMDg1ODM2WjCBpzEL MAkGA1UEBhMCWFkxFTATBgNVBAgTDFNuYWtlIERlc2VydDETMBEGA1UEBxMKU25h a2UgVG93bjEXMBUGA1UEChMOU25ha2UgT2lsLCBMdGQxFzAVBgNVBAsTDldlYnNl cnZlciBUZWFtMRkwFwYDVQQDExB3d3cuc25ha2VvaWwuZG9tMR8wHQYJKoZIhvcN AQkBFhB3d3dAc25ha2VvaWwuZG9tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKB gQDH9Ge/s2zcH+da+rPTx/DPRp3xGjHZ4GG6pCmvADIEtBtKBFAcZ64n+Dy7Np8b vKR+yy5DGQiijsH1D/j8HlGE+q4TZ8OFk7BNBFazHxFbYI4OKMiCxdKzdif1yfaa lWoANFlAzlSdbxeGVHoT0K+gT5w3UxwZKv2DLbCTzLZyPwIDAQABoyYwJDAPBgNV HRMECDAGAQH/AgEAMBEGCWCGSAGG+EIBAQQEAwIAQDANBgkqhkiG9w0BAQQFAAOB gQAZUIHAL4D09oE6Lv2k56Gp38OBDuILvwLg1v1KL8mQR+KFjghCrtpqaztZqcDt 2q2QoyulCgSzHbEGmi0EsdkPfg6mp0penssIFePYNI+/8u9HT4LuKMJX15hxBam7 dUHzICxBVC1lnHyYGjDuAMhe396lYAn8bCld1/L4NMGBCQ== -----END CERTIFICATE-----
èšŒææžãæ¿èªããåã«ãèšŒææžèŠæ±ã«èšèŒãããŠããæ å ±ã確èªãã èªèšŒå±ã¯éµã®ææè ã®èº«å ã確èªããŸãã äŸãã°ãã¢ãªã¹ãåäººèšŒææžãç³è«ãããšãããšã èªèšŒå±ã¯ã¢ãªã¹ãèšŒææžã®ç³è«ã䞻匵ããéãã® åœã®æ¬äººã ãšããããšã確èªããªããŠã¯ãããŸããã
èªèšŒå±ã¯ä»ã®èªèšŒå±ãžã®èšŒææžãçºè¡ããããšãã§ããŸãã æªç¥ã®èšŒææžã調ã¹ãæã«ãã¢ãªã¹ã¯ãã®èšŒææžã®çºè¡è ã«èªä¿¡ãæãŠããŸã§ãçºè¡è ã®èšŒææžã ãã®äžäœéå±€ã®èªèšŒå±ããã©ã£ãŠèª¿ã¹ãå¿ èŠããããŸãã ãæªè³ªãªãèšŒææžã®å±éºæ§ãæžããããã 圌女ã¯éãããé£éã®çºè¡è ã®ã¿ä¿¡é Œãããã㫠決ããããšãã§ããŸãã
åã«è¿°ã¹ãããã«ãå šãŠã®èšŒææžã«ã€ããŠã æäžäœã®èªèšŒå±(CA)ãŸã§ããããã®çºè¡è ã 察象ã®èº«å 蚌æã®æå¹æ§ãæããã«ããå¿ èŠããããŸãã åé¡ã¯ã誰ããã®æäžäœã®èªèšŒæ©é¢ã®èšŒææžãä¿èšŒããã®ãã ãšããããšã§ãã ãã®ãããªå Žåã«éããèšŒææžã¯ãèªå·±çœ²åããããŸãã ãã©ãŠã¶ã«ã¯ããšãŠãããç¥ãããŠããèªèšŒå±ãåæç»é²ãããŠããŸããã èªå·±çœ²åãããèšŒææžãä¿¡çšããéã«ã¯ 现å¿ã®æ³šæãå¿ èŠã§ãã æäžäœèªèšŒå±ãå ¬ééµãåºãå ¬è¡šããããšã§ã ãã®éµãä¿¡é Œãããªã¹ã¯ãäœãããããšãã§ããŸãã ãããä»äººããã®èªèšŒå±ã«ãªãããŸããæã«ããããé²èŠãã ããããã§ãã
Thawte ã VeriSign ã®ãããªå€ãã®äŒç€ŸãèªèšŒå±ãšããŠéèšããŸããã ãã®ãããªäŒç€Ÿã¯ä»¥äžã®ãµãŒãã¹ãæäŸããŸã:
èªåã§èªèšŒå±ãäœãããšãå¯èœã§ãã ã€ã³ã¿ãŒãããç°å¢ã§ã¯å±éºã§ããã å人ããµãŒãã®èº«å 蚌æãç°¡åã«è¡ããçµç¹ã® ã€ã³ãã©ãããå ã§ã¯åœ¹ã«ç«ã€ãããããŸããã
èªèšŒå±ã®éèšã¯åŸ¹åºãã管çãæè¡ãéçšã®äœå¶ãå¿ èŠãšãã 責任ã®ããä»äºã§ãã èªèšŒå±ã¯èšŒææžãçºè¡ããã ãã§ãªãã 管çãããªããã°ãªããŸããã å ·äœçã«ã¯ãèšŒææžããã€ãŸã§æå¹ã§ããç¶ããããæ±ºå®ããæŽæ°ãã ãŸãéå»çºè¡ãããŠå€±å¹ããèšŒææžã®ãªã¹ã (Certificate Revocation Lists ãŸã㯠CRL) ã管çããªããã°ãããŸããã
äŸãã°ã¢ãªã¹ãéå»ãäŒç€Ÿã®ç€Ÿå¡ã§ããããšã蚌æããèšŒææžãæã£ãŠãããã çŸåšã¯éè·ããŠããéããã®èšŒææžã¯å€±å¹ãããªããã°ãªããŸããã èšŒææžã¯æ¬¡ã ãšäººã«æž¡ãããŠãããã®ãªã®ã§ã èšŒææžãã®ãã®ããããããåãæ¶ãããã倿ããããšã¯ äžå¯èœã§ãã ãã£ãŠãèšŒææžã®æå¹æ§ã調ã¹ããšãã«ã¯ã èªèšŒå±ã«é£çµ¡ã㊠CRL ãç §åããå¿ èŠããããŸãã æ®éãã®éçšã¯èªååãããŠãããã®ã§ã¯ãããŸããã
ãã©ãŠã¶ã«ä¿¡çšã§ããèªèšŒå±ãšããŠããã©ã«ãã§ç»é²ãããŠããªã èªèšŒå±ã䜿ãããšããå Žåã èªèšŒå±ã®èšŒææžããã©ãŠã¶ã«èªã¿èŸŒãã§ã ãã©ãŠã¶ããã®èªèšŒå±ã«ãã£ãŠçœ²åããããµãŒãã®èšŒææžã æå¹ã«ããå¿ èŠããããŸãã äžåºŠèªã¿èŸŒãŸãããšããã®èªèšŒå±ã«ãã£ãŠçœ²åãããå šãŠã® èšŒææžãåãå ¥ãããããå±éºã䌎ããŸãã
Secure Sockets Layer ãããã³ã«ã¯ä¿¡é Œæ§ã®ããã³ãã¯ã·ã§ã³åã® ãããã¯ãŒã¯å±€ã®ãããã³ã«(äŸãã°ãTCP/IP)ãš ã¢ããªã±ãŒã·ã§ã³å±€ã®ãããã³ã«(äŸãã°ãHTTP) ã®éã«çœ®ãããšãã§ããŸãã SSL ã¯ãçžäºèªèšŒã«ãã£ãŠãµãŒããšã¯ã©ã€ã¢ã³ãéã®å®å šãªéä¿¡ãã é»å眲åã«ãã£ãŠããŒã¿ã®å®å šæ§ãã ãããŠæå·åã«ãã£ãŠãã©ã€ãã·ãæäŸããŸãã
SSL ãããã³ã«ã¯æå·åããã€ãžã§ã¹ããé»å眲åã«ã€ããŠã æ§ã ãªã¢ã«ãŽãªãºã ããµããŒãããããã«ã§ããŠããŸãã ããããããšã§ãæ³ã茞åºã®èŠå¶ãèæ ®ã«å ¥ããŠããµãŒãã«åããã ã¢ã«ãŽãªãºã ãéžã¶ããšãã§ãããŸããæ°ããã¢ã«ãŽãªãºã ã å©çšããŠããããšãå¯èœã«ããŠããŸãã ã¢ã«ãŽãªãºã ã®éžæã¯ãããã³ã«ã»ãã·ã§ã³éå§æã« ãµãŒããšã¯ã©ã€ã¢ã³ãéã§åãæ±ºããããŸãã
ããŒãžã§ã³ | åºå ž | 説æ | ãã©ãŠã¶ã®ãµããŒã |
---|---|---|---|
SSL v2.0 | Vendor Standard (Netscape Corp. ãã) [SSL2] | å®è£ ãçŸåããåããŠã® SSL ãããã³ã« | - NS Navigator 1.x/2.x - MS IE 3.x - Lynx/2.8+OpenSSL |
SSL v3.0 | Expired Internet Draft (Netscape Corp. ãã) [SSL3] | ç¹å®ã®ã»ãã¥ãªãã£æ»æãé²ãããã®æ¹èšã éRSA æå·ã®è¿œå ãèšŒææžéå±€æ§é ã®ãµããŒã | - NS Navigator 2.x/3.x/4.x - MS IE 3.x/4.x - Lynx/2.8+OpenSSL |
TLS v1.0 | Proposed Internet Standard (IETF ãã) [TLS1] | MAC ã¬ã€ã€ã HMAC ãžæŽæ°ããããã¯æå·ã® block paddingãã¡ãã»ãŒãžé åºã®æšæºåãèŠåæã®å å®ãªã©ã®ãã SSL 3.0 ãæ¹èšã | - Lynx/2.8+OpenSSL |
衚4ã«ç€ºããããšãããSSL ãããã³ã«ã«ã¯ ããã€ãã®ããŒãžã§ã³ããããŸãã 衚ã«ãæžãããŠããããã«ãSSL 3.0 ã®å©ç¹ã®äžã€ã¯ èšŒææžéå±€æ§é ããµããŒãããããšã§ãã ãã®æ©èœã«ãã£ãŠããµãŒãã¯èªåã®èšŒææžã«å ããŠã çºè¡è ã®èšŒææžããã©ãŠã¶ã«æž¡ãããšãã§ããŸãã èšŒææžéå±€æ§é ã«ãã£ãŠã ãã©ãŠã¶ã«çºè¡è ã®èšŒææžãçŽæ¥ç»é²ãããŠããªããŠãã éå±€ã®äžã«å«ãŸããŠããã°ã ãã©ãŠã¶ã¯ãµãŒãã®èšŒææžãæå¹åããããšãã§ããŸãã SSL 3.0 ã¯çŸåš Internet Engineering Task Force (IETF) ã«ãã£ãŠéçºãããŠãã Transport Layer Security [TLS] ãããã³ã«æšæºèŠæ Œã®åºç€ãšãªã£ãŠããŸãã
å³1ã§ç€ºãããããã«ã ã»ãã·ã§ã³ã®ç¢ºç«ã¯ã¯ã©ã€ã¢ã³ããšãµãŒãéã® ãã³ãã·ã§ãŒã¯ã·ãŒã¯ãšã³ã¹ã«ãã£ãŠè¡ãªãããŸãã ãµãŒããèšŒææžãæäŸããããã¯ã©ã€ã¢ã³ãã®èšŒææžããªã¯ãšã¹ãããã ãšãããµãŒãã®èšå®ã«ããããã®ã·ãŒã¯ãšã³ã¹ã¯ç°ãªããã®ãšãªããŸãã æå·æ å ±ã®ç®¡çã®ããã«ã远å ã®ãã³ãã·ã§ãŒã¯éçšãå¿ èŠã«ãªã å ŽåããããŸããããã®èšäºã§ã¯ ããããã·ããªãªãæçã«èª¬æããŸãã å šãŠã®å¯èœæ§ã«ã€ãã¯ãSSL 仿§æžãåç §ããŠãã ããã
äžåºŠ SSL ã»ãã·ã§ã³ã確ç«ãããšãã»ãã·ã§ã³ãåå©çšããããšã§ã ã»ãã·ã§ã³ãéå§ããããã®å€ãã®éçšãç¹°ãè¿ããšãã ããã©ãŒãã³ã¹ã®æå€±ãé²ããŸãã ãã®ããããµãŒãã¯å šãŠã®ã»ãã·ã§ã³ã«äžæãªã»ãã·ã§ã³èå¥åã å²ãåœãŠããµãŒãã«ãã£ãã·ã¥ããã¯ã©ã€ã¢ã³ãã¯æ¬¡åãã (èå¥åããµãŒãã®ãã£ãã·ã¥ã§æéåãã«ãªããŸã§ã¯) ãã³ãã·ã§ãŒã¯ãªãã§æ¥ç¶ããããšãã§ããŸãã
å³1: SSL
ãã³ãã·ã§ãŒã¯ã·ãŒã¯ãšã³ã¹æŠç¥
ãµãŒããšã¯ã©ã€ã¢ã³ãã§äœ¿ããã ãã³ãã·ã§ãŒã¯ã·ãŒã¯ãšã³ã¹ã®èŠçŽ ã以äžã«ç€ºããŸã:
第äžã¹ãããã®æå·ã¹ã€ãŒãåãæ±ºãã«ãã£ãŠã ãµãŒããšã¯ã©ã€ã¢ã³ãã¯ããããã«ãã£ã æå·ã¹ã€ãŒããéžã¶ããšãã§ããŸãã SSL3.0 ãããã³ã«ã®ä»æ§æžã¯ 31 ã®æå·ã¹ã€ãŒããå®çŸ©ããŠããŸãã æå·ã¹ã€ãŒãã¯ä»¥äžã®ã³ã³ããŒãã³ãã«ããå®çŸ©ãããŠããŸã:
ãããã®äžã€ã®èŠçŽ ã¯ä»¥äžã®ã»ã¯ã·ã§ã³ã§èª¬æãããŠããŸãã
éµã®äº€æææ®µã¯ã¢ããªã±ãŒã·ã§ã³ã®ããŒã¿éä¿¡ã«äœ¿ããã å ±æããã察称æå·éµãã©ã®ããã«ãã¯ã©ã€ã¢ã³ããšãµãŒãã§ åãæ±ºããããå®çŸ©ããŸãã SSL 2.0 㯠RSA éµäº€æãã䜿ããŸãããã SSL 3.0 㯠(èšŒææžã䜿ããããšãã®) RSA éµäº€æãã (èšŒææžç¡ãã®å Žåãã¯ã©ã€ã¢ã³ããšãµãŒãã®äºåã®éä¿¡ãç¡ãå Žåã®) Diffie-Hellman éµäº€æ ãªã©æ§ã ãªéµäº€æã¢ã«ãŽãªãºã ããµããŒãããŸãã
éµã®äº€ææ¹æ³ã«ãããäžã€ã®éžæè¢ã¯é»å眲åã§ãã é»å眲åã䜿ããã©ããããŸãã ã©ã®çš®é¡ã®çœ²åã䜿ãããšããéžæããããŸãã ç§å¯éµã§çœ²åããããšã§å ±æéµãä¿è·ããæ å ±äº€æããæã® ãã³ã»ã€ã³ã»ã¶ã»ããã«æ»æãé²ãããšãã§ããŸãã [AC96, p516]
SSL ã¯ã»ãã·ã§ã³ã®ã¡ãã»ãŒãžã®æå·åã«åè¿°ãã 察称æå·æ¹åŒãçšããŸãã æå·åããªããšããéžæè¢ãå«ãä¹ã€ã®æå·æ¹åŒã®éžæè¢ããããŸã:
CBC ãšã¯æå·ãããã¯é£é (Cipher Block Chaining) ã®ç¥ã§ãäžã€åã®æå·åãããæå·æã®äžéšã ãããã¯ã®æå·åã«äœ¿ãããããšãæå³ããŸãã DES ã¯ããŒã¿æå·åæšæºèŠæ Œ (Data Encryption Standard) [AC96, ch12] ã®ç¥ã§ã DES40 ã 3DES_EDE ãå«ãããã€ãã®çš®é¡ããããŸãã Idea ã¯çŸåšæé«ãªãã®ã®äžã€ã§ãæå·è¡çã«ã¯çŸåšããäžã§ æã匷åãªãã®ã§ãã RC2 㯠RSA DSI ã«ããç¬å çãªã¢ã«ãŽãªãºã ã§ãã [AC96, ch13]
ãã€ãžã§ã¹ã颿°ã®éžæã¯ã¬ã³ãŒããŠãããããã©ã®ããã«ãã€ãžã§ã¹ããçæãããããæ±ºå®ããŸãã SSL ã¯ä»¥äžããµããŒãããŸã:
ã¡ãã»ãŒãžãã€ãžã§ã¹ã㯠Message Authentication Code (MAC) ã®çæã«äœ¿ãããã¡ãã»ãŒãžãšå ±ã«æå·åãããã¡ãã»ãŒãžã®ä¿¡ææ§ã 確èªãããªãã¬ã€æ»æãé²ããŸãã
ãã³ãã·ã§ãŒã¯ã·ãŒã¯ãšã³ã¹ã¯äžã€ã®ãããã³ã«ã䜿ããŸã:
äžã€ã®ãããã³ã«ã¯ãã¢ããªã±ãŒã·ã§ã³ãããã³ã«ããŒã¿ãšãšãã«ã å³2ã«ç€ºããšãã SSL ã¬ã³ãŒããããã³ã« ã§ã«ãã»ã«åãããŸãã ã«ãã»ã«åããããããã³ã«ã¯ããŒã¿ãæ€æ»ããªã äžå±€ã®ãããã³ã«ã«ãã£ãŠããŒã¿ãšããŠäŒéãããŸãã ã«ãã»ã«åããããããã³ã«ã¯äžå±€ã®ãããã³ã«ã«é¢ããŠäžåé¢ç¥ããŸããã
å³2: SSL ãããã³ã«ã¹ã¿ãã¯
ã¬ã³ãŒããããã³ã«ã§ SSL ã³ã³ãããŒã«ãããã³ã«ãã«ãã»ã«åãããŠãããšããããšã¯ã ã¢ã¯ãã£ããªã»ãã·ã§ã³äžã§åããŽã·ãšãŒã·ã§ã³ããããšãã«ãã ã³ã³ãããŒã«ãããã³ã«ã¯å®å šã§ããããšãæå³ããŸãã æ¢åã®ã»ãã·ã§ã³ãç¡ãå Žåã¯ãNull æå·ã¹ã€ãŒãã䜿ããã æå·åã¯è¡ãªããããã»ãã·ã§ã³ã確ç«ãããŸã§ã¯ ãã€ãžã§ã¹ããç¡ãç¶æ ãšãªããŸãã
å³3ã«ç€ºããã SSL ã¬ã³ãŒããããã³ã« ã¯ã¯ã©ã€ã¢ã³ããšãµãŒãéã®ã¢ããªã±ãŒã·ã§ã³ã SSL ã³ã³ãããŒã«ããŒã¿ã®éä¿¡ã«äœ¿ãããŸãã å¿ èŠã«å¿ããŠãã®ããŒã¿ã¯ããå°ãããŠãããã«åãããããã ããã€ãã®é«çŽãããã³ã«ããŸãšããŠäžãŠããããšããŠéä¿¡ã è¡ãªãããããšããããŸãã ããŒã¿ãå§çž®ãããã€ãžã§ã¹ã眲åãæ·»ä»ããŠã ãããã®ãŠããããæå·åããã®ã¡ãããŒã¹ãšãªã£ãŠãã ä¿¡é Œæ§ã®ãããã©ã³ã¹ããŒããããã³ã«ãçšãããããããŸããã (泚æ: çŸåšã¡ãžã£ãŒãª SLL å®è£ ã§å§çž®ããµããŒãããŠãããã®ã¯ãããŸãã)
å³ 3: SSL ã¬ã³ãŒããããã³ã«
ãããã SSL ã®äœ¿ãæ¹ã¯ãã©ãŠã¶ãšãŠã§ããµãŒãéã® HTTP éä¿¡
ã®å®å
šåã§ãã
ããã¯ãåŸæ¥ã®å®å
šã§ã¯ãªã HTTP ã®äœ¿çšãé€å€ãããã®ã§ã¯ãããŸããã
å®å
šåããããã® (HTTPS ãšåŒã°ããŸã) ã¯ãSSL äžã§ã®æ®éã® HTTP ã§ã
URL ã¹ããŒã ã« http
ã®ä»£ããã« https
ãçšãããµãŒãã§å¥ã®ããŒãã䜿ãããšã§ã (ããã©ã«ãã§ã¯443)ã
ããã䞻㫠mod_ssl
ã Apache
ãŠã§ããµãŒãã«æäŸããæ©èœã§ãã
Applied Cryptography, 2nd Edition, Wiley, 1996. See http://www.counterpane.com/ for various other materials by Bruce Schneier.
Specification of Abstract Syntax Notation One (ASN.1), 1988. See for instance http://www.itu.int/rec/recommendation.asp?type=items&lang=e&parent=T-REC-X.208-198811-I.
The Directory - Authentication Framework. See for instance http://www.itu.int/rec/recommendation.asp?type=folders&lang=e&parent=T-REC-X.509.
Public Key Cryptography Standards (PKCS), RSA Laboratories Technical Notes, See http://www.rsasecurity.com/rsalabs/pkcs/.
Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies, RFC2045. See for instance http://ietf.org/rfc/rfc2045.txt.
The SSL Protocol, 1995. See http://www.netscape.com/eng/security/SSL_2.html.
The SSL Protocol Version 3.0, 1996. See http://www.netscape.com/eng/ssl3/draft302.txt.
The TLS Protocol Version 1.0, 1999. See http://ietf.org/rfc/rfc2246.txt.