OpenSSL

OutlookにはデジタルIDを使って暗号化・デジタル署名をする機能がついているが、
おそらくこれを使っている人は、あまりいないと思われます。
デジタルIDを取得するには、Verisignというところから通常は取得することに
なるが、1500円/年間 程度の費用が発生してしまうからです。

openssl というオープンソフトを使えば、認証局を自前で構築してデジタルIDを
自分で作成することができるということを3〜4年前ごろに知りました。





バージョンを調べる。

openssl version

opensslプログラムの存在するところなどを確認します。Ubuntuなどの場合には、あらかじめ、opensslがインストールされている場合があります。

/usr/local/ssl
/usr/bin/openssl
/usr/lib/ssl/misc/CA.sh




openssl のソースをダウンロードしてコンパイルする方法


% tar zxvf openssl-0.9.6.tar.gz
% cd openssl-0.9.6
% ./config
% make
% make test
% su
# make install




OpenSSLで秘密鍵を作成しよう - cofe_arabiの日記


http://www.geocities.jp/cofe_fd3/openssl.htm


openssl - cofe_arabiの日記


04.08.08(sun)

新しい秘密鍵の作成法について(すでに認証局が構築されていることが前提)
CA.shが、/usr/lib/ssl/miscに存在する場合

/usr/lib/ssl/misc/CA.sh -newreq
/usr/lib/ssl/misc/CA.sh -sign

これで、newreq.pem、newkey.pem、newcert.pemの3つのファイルが作成されます。ここから、秘密鍵ファイルをp12形式でエクスポートします。

openssl pkcs12 -export -in newcert.pem -inkey newkey.pem -certfile demoCA/cacert.pem -out newcert.p12


ここでできた、p12形式のファイルを、秘密鍵ファイルとして、使用できます。


なお、opensslコマンドを使用してS/MIMEの暗号化や復号などを行うことができます。但しpfx形式の鍵はpem形式に変換して使用する必要がある。

                                        • -

.pfx を pem 形式に変換

openssl pkcs12 -clcerts -in tamo@docoka.or.jp.pfx -out mycert.pem


pem 形式を .pfx に変換 (2004.5.3

openssl pkcs12 -export -in mycert.pem -out mycert.pfx

                                        • -


署名
openssl smime -sign -signer mycert.pem -inkey mycert
.pem -in readme.txt -subject test -to tamo@docoka.or.jp -from tamo@docoka.or.jp > smim
e.s7m

暗号
openssl smime -encrypt -rc2-40 -subject test -to tamori.tarou@xxxx.co.jp -from tamo@docoka.or.jp -in readme.txt -in readme2.txt mypub.pem


復号
openssl smime -decrypt -recip mycert.pem -inkey mycert.pem -in smime.p7m

証明書から公開鍵を取り出す
openssl x509 -in cert-mine.pem -pubkey -noout
openssl x509 -in cert-mine.pem -pubkey


証明書から公開鍵を取り出す2
Internet Exploererから公開鍵をエクスポートするときにbase64 cer形式で出力する
openssl x509 -in xxx@xxxx.co.jp.cer -pubkey