電子署名PGP
森田 亙昭
牧之内研究室「インターネット実習」Webページ
http://www.db.is.kyushu-u.ac.jp/rinkou/internet/
電子署名とは
秘密鍵を世界にただ一つの「自分のサイン」とする
手書きサインや実印に相当する機能を電子的に代用する技術
インターネット上でのメールを通じた商取引などに活用
インターネット上では、見ず知らずの人を相手にした取引
「成りすまし」を防止して、相手方の本人性を認証する必要
他人による「成りすまし」の危険性
PGPPretty Good Privacy
Philip R. Zimmermann
公開鍵暗号方式
RSAアルゴリズム(version 2.x以前)
公開鍵暗号方式
Diffie, Martin Hellman (1975)
暗号化と復号化を別々の鍵で行う
「公開鍵」で暗号化された文書は、「秘密鍵」でしか復
号化できない
平文 暗号化 暗号文
ネットワーク
暗号文平文 復号化
公開鍵
秘密鍵
平文 暗号化 暗号文
ネットワーク
暗号文
平文 復号化
公開鍵
秘密鍵
セッション鍵
共有鍵暗号
暗号化 暗号化された
セッション鍵
復号化
セッション鍵
自動生成
IDES
共有鍵暗号
RSA
IDES RSA
公開鍵?
「電子メールで送る」「Webに公開」
本物であるという保証がない
途中で改竄されるかも
公開鍵で送られてきた暗号
本当に本人から送られてきたのか
Aさんから」だ
Bさん
Bさんの
公開鍵
悪意の第三者
鍵の証明
直接会って公開鍵をもらう
信用の輪
友達の友達は友達だ
鍵の指紋
Aさん Bさん
信頼している
お互いの「公開鍵」も完全に信頼できる
Cさん
Bさんのサイン
Cさんの公開鍵
Bさんのサインがある
ので信用していいかな
電子署名
公開鍵を使用して本人であることを確認
「秘密鍵」で暗号化された文書は、「公開鍵」
しか復号化できない
平文 平文
ネットワーク
平文平文
公開鍵
秘密鍵
暗号化 電子署名
復号化
MD5
電子署名
MD5
一致しているか?
チェックサム
チェックサム
実習
MewPGPを使おう
PGP2.6.3iをインストール
PGPの設定
PGPで暗号化したメールをMewで送信
PGPで暗号化されたメールをMewで受信
Mewで電子署名
「研究室のメールサーバのホスト名」は?の答えを
自分のメールアドレス宛てにpgp暗号化したメールで送信し,
受信したメールを複合化してみてください
http://www.db.is.kyushu-u.ac.jp/~morita/pgp/morita.asc
PGP2.6.3iのインストール
% su root
% cd /usr/ports/security/pgp
% make
% make install
設定(pgp2.x)
鍵の生成
% pgp -kg
Pretty Good Privacy(tm) 2.6.3ia - Public-key encryption for the masses.
(c) 1990-96 Philip Zimmermann, Phil's Pretty Good Software. 1996-03-04
International version - not for use in the USA. Does not use RSAREF.
Current time: 2001/07/09 09:30 GMT
Pick your RSA key size:
1) 512 bits- Low commercial grade, fast but less secure
2) 768 bits- High commercial grade, medium speed, good security
3) 1024 bits- "Military" grade, slow, highest security
Choose 1, 2, or 3, or enter desired number of bits:
3を選ぶ
You need a user ID for your public key. The desired form for this
user ID is your name, followed by your E-mail address enclosed in
<angle brackets>, if you have an E-mail address.
For example: John Q. Smith <12345.6789@compuserve.com>
Enter a user ID for your public key:
ユーザIDを決める
Nobuaki Morita <morita@db.is.kyushu-u.ac.jp>
〇パスフレーズを聞かれるので入力
〇確認のためもう一度
〇乱数を入力:キーボードを適当にたたくだけ
$HOME/.pgp/にファイルが作成
pubring.pgp 公開鍵ホルダー
secring.pgp 秘密鍵ホルダー
Errorが出たら、$homeに自分で.pgpディレクトリを作ってもう一回)
PGPのコマン(1)
公開鍵を取り出す
% pgp kx ユーザ名 ファイル名
ファイル名.pgpというファイルが作成される
バイナリファイル
ユーザmoritaの公開鍵を取り出す
%pgp kx morita morita
% pgp kxa ユーザ名 ファイル名
ファイル名.ascというファイルが作成される
テキストファイル(メール等でやりとりができる)
PGPのコマン(2)
公開鍵を登録
% pgp ka ユーザ名 ファイル名{.pgp or asc}
http://www.cc.u-ryukyu.ac.jp/~k008367/lab/pgp/pgp263ka.htm
鍵の信用について質問があるので下記のホームページ
等を参考に
PGPのコマン(3)
その他
%pgp kc
鍵に付いている署名をチェック
%pgp kvc
公開鍵の指紋を表示
%pgp h
ヘルプ
Mewで暗号メー
メールを暗号化
draftモードでC-c C-e
暗号化されたメールを読む
SummaryモードでEのマーク 暗号化され
たメッセージ
スペーでメールを読もうとするとパスフレー
ズを要求される
正しくパスフレーズを打つと自動的に復号
Mewで電子署名(1)
メールに電子署名
DraftモードでC-c C-s
メールに電子署名をしかつ暗号化
DraftモードでC-c C-b
Mewで電子署名(2)
電子署名されたメールを読む
SummaryモードでSというマーク 電子署
名が付いているメール
普通にメールを読むようにSマークが付いた
メールでスペースを押す
相手の公開鍵を持っていてかつ電子署名の
検証に成功するとメッセージのヘッダに
X-Mew:Good PGP sign ID..
Mewで電子署名(3)
相手の公開鍵を持っていないと、
X-Mew: No his/her public key. ID = (key ID)
とヘッダ部に表示される -- C-c C-f で公開鍵サーバ
から公開鍵を get して追加でき
自分の公開鍵を送信
draft モードで C-c C-a 打って multipart
成モードに入った後、p
PGPのバージョン
Version 2.x Version 5.x Version 6.x
RSA RSA
ElGamal/DSS ElGamal/DSS
IDEA DES DES
MD5 MD5
SHA-1 SHA-1
PGP5.xとの共
MewPGP2.x5.xを共存させたい方は下
記のホームページを参考に
http://minerva.jaist.ac.jp/pgp.html