※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。


目次


証明書発行(署名)


証明書署名要求(CSR)の生成で生成したCSRにCA局が署名することで証明書ができます。
通常は、CSRを生成したサーバ管理者とCA局の管理は別組織でしょうから何らかの形でCSRをCA局に渡す必要があります。しかし、今の場合、同じPC上のOpenSSLでCA局を作りCSRも作っていますので、わざわざCSRを渡す必要はありません。ということで、渡す部分の記述は省きます。

CA局による証明書発行(CSRへの署名)


CA.pl -newcaで生成されたデフォルトのCA局(demoCA)は、''CA.pl -sign''コマンドによってnewreq.pemに署名し、newcert.pemを生成します。証明書署名要求(CSR)の生成で生成したnewreq.pemがありますので、これに署名しnewcert.pemを生成することにしましょう。

C:\OpenSSL\bin>CA.pl -sign
Using configuration from C:\OpenSSL\bin\openssl.cnf
Loading 'screen' into random state - done
Enter pass phrase for ./demoCA/private/cakey.pem: <---/*CA局秘密鍵に設定された*/
           /*パスフレーズを入力する必要があります。CSRに署名する際には、CA局の秘密鍵*/
           /*が必要です。秘密鍵のパスフレーズを知っている権限を持った人のみが、証明書*/
           /*に署名できることになり、証明書の信頼性も向上するということになります。*/
Check that the request matches the signature
Signature ok
Certificate Details:
        Serial Number:
            c7:df:ad:a7:2b:c9:89:7c
        Validity
            Not Before: Dec 31 09:33:59 2007 GMT
            Not After : Dec 30 09:33:59 2008 GMT
        Subject:
            countryName               = JP
            stateOrProvinceName       = osaka
            localityName              = toyonaka
            organizationName          = MyUniv
            commonName                = www.myuniv.com
        X509v3 extensions:
            X509v3 Basic Constraints:
                CA:FALSE <---/*この証明書がCA局の証明書ではないことを示す*/
            Netscape Comment:
                OpenSSL Generated Certificate
            X509v3 Subject Key Identifier:
                97:69:19:58:91:F0:C9:11:65:20:B8:49:8C:7F:0D:1E:96:C2:3A:ED
            X509v3 Authority Key Identifier:
                keyid:FE:11:4A:63:E5:EE:40:27:46:6B:E3:E5:72:BB:D7:11:4C:4A:3B:2C

Certificate is to be certified until Dec 30 09:33:59 2008 GMT (365 days)
              <---/*発行する証明書の有効期限が365日であることを示す*/
Sign the certificate? [y/n]:y <---/*CSRに署名する? y でこたえる*/


1 out of 1 certificate requests certified, commit? [y/n]y
                        <---/*証明書を発行しますか? y でこたえる*/
Write out database with 1 new entries
Data Base Updated
Signed certificate is in newcert.pem <---/*証明書 newcert.pemを生成した*/

生成されたファイルを確認


C:\OpenSSL\bin>dir *.pem
 ドライブ C のボリューム ラベルがありません。
 ボリューム シリアル番号は 54A5-8EF0 です

 C:\OpenSSL\bin のディレクトリ

2007/12/31  18:34             3,049 newcert.pem <---/*証明書ができた*/
2007/12/31  16:51               963 newkey.pem
2007/12/31  16:51               631 newreq.pem
               3 個のファイル               4,643 バイト
               0 個のディレクトリ  15,029,362,688 バイトの空き領域

証明書の確認


証明書の中身を確認してみる。

C:\OpenSSL\bin>openssl x509 -in newcert.pem -text
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            c7:df:ad:a7:2b:c9:89:7c <---/*証明書のシリアル番号*/
        Signature Algorithm: sha1WithRSAEncryption
        Issuer: C=JP, ST=TOKYO, O=myCA_LTD, CN=TEST_CA
                 <---/*Issure(発行者)は、CA局であることがわかる*/
        Validity
            Not Before: Dec 31 09:33:59 2007 GMT
            Not After : Dec 30 09:33:59 2008 GMT <---/*発効日から一年間有効*/
        Subject: C=JP, ST=osaka, L=toyonaka, O=MyUniv, CN=www.myuniv.com
                                            <---/*証明書の保有者に関する情報*/
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
            RSA Public Key: (1024 bit)
                Modulus (1024 bit): <---/*公開鍵*/
                    00:a9:a4:8b:e9:99:11:ec:fb:27:4b:9f:4b:a1:3f:
                    a9:8d:dd:1a:ff:cf:be:6c:86:cb:60:9a:b6:72:aa:
                    c6:03:e9:b2:6e:8c:d6:77:1f:d9:9c:5d:2d:a7:c2:
                    a1:99:b5:26:86:80:c0:b3:6a:86:f0:ae:c4:a8:ab:
                    31:8c:67:6e:d0:dd:d1:d5:cb:c8:92:0d:f6:7e:45:
                    16:af:fd:68:2c:0a:87:85:30:8c:9c:00:ad:2b:24:
                    dd:34:9d:e8:24:ef:8e:2c:c5:05:d0:85:26:ff:78:
                    48:6b:86:6a:e7:d7:d5:98:77:a8:f4:7c:8b:b9:46:
                    5f:d4:59:65:0b:a5:ee:1a:bf
                Exponent: 65537 (0x10001)
        X509v3 extensions:
            X509v3 Basic Constraints:
                CA:FALSE <---/*CA証明書ではないことを示している*/
            Netscape Comment:
                OpenSSL Generated Certificate
            X509v3 Subject Key Identifier:
                97:69:19:58:91:F0:C9:11:65:20:B8:49:8C:7F:0D:1E:96:C2:3A:ED
            X509v3 Authority Key Identifier:
                keyid:FE:11:4A:63:E5:EE:40:27:46:6B:E3:E5:72:BB:D7:11:4C:4A:3B:2C

    Signature Algorithm: sha1WithRSAEncryption
        13:4c:e0:a2:2d:ba:93:9d:4a:1e:11:1f:4c:f7:0e:f1:ab:af:
        bb:f8:7e:89:f3:f3:51:cd:85:c4:8c:38:fa:39:e3:63:5f:a0:
        d6:1c:08:84:39:67:90:89:9d:a5:67:79:5b:0b:62:4d:cc:be:
        e2:31:61:7e:d5:7a:44:c3:64:4a:5c:79:6b:f0:b9:ca:05:5d:
        bc:99:fe:48:af:c1:00:63:ed:c6:e5:d5:a7:d4:08:8b:84:dd:
        ff:92:4c:3d:31:09:a1:ca:2f:96:ac:3a:4f:38:63:a1:f6:1c:
        30:37:bd:9a:df:a0:ff:32:93:a9:c6:8b:08:92:8c:e0:97:30:
        31:a9
-----BEGIN CERTIFICATE-----
MIIClTCCAf6gAwIBAgIJAMffracryYl8MA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNV
BAYTAkpQMQ4wDAYDVQQIEwVUT0tZTzERMA8GA1UEChQIbXlDQV9MVEQxEDAOBgNV
BAMUB1RFU1RfQ0EwHhcNMDcxMjMxMDkzMzU5WhcNMDgxMjMwMDkzMzU5WjBaMQsw
CQYDVQQGEwJKUDEOMAwGA1UECBMFb3Nha2ExETAPBgNVBAcTCHRveW9uYWthMQ8w
DQYDVQQKEwZNeVVuaXYxFzAVBgNVBAMTDnd3dy5teXVuaXYuY29tMIGfMA0GCSqG
SIb3DQEBAQUAA4GNADCBiQKBgQCppIvpmRHs+ydLn0uhP6mN3Rr/z75shstgmrZy
qsYD6bJujNZ3H9mcXS2nwqGZtSaGgMCzaobwrsSoqzGMZ27Q3dHVy8iSDfZ+RRav
/WgsCoeFMIycAK0rJN00negk744sxQXQhSb/eEhrhmrn19WYd6j0fIu5Rl/UWWUL
pe4avwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NM
IEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUl2kZWJHwyRFlILhJjH8N
HpbCOu0wHwYDVR0jBBgwFoAU/hFKY+XuQCdGa+PlcrvXEUxKOywwDQYJKoZIhvcN
AQEFBQADgYEAE0zgoi26k51KHhEfTPcO8auvu/h+ifPzUc2FxIw4+jnjY1+g1hwI
hDlnkImdpWd5WwtiTcy+4jFhftV6RMNkSlx5a/C5ygVdvJn+SK/BAGPtxuXVp9QI
i4Td/5JMPTEJocovlqw6TzhjofYcMDe9mt+g/zKTqcaLCJKM4JcwMak=
-----END CERTIFICATE-----