デジタル証明書の環
2009年05月17日01:15
前回書いた日記がすごいことになってる。 書いてあることがすごく鋭くてすごい人ばかりが集まってしまった。 これはちょっと気合を入れて返事を書かねば、と思っていて、ちょっと時間をかけようと思う。
それはちょっとおいておいて、今日思いついたことを忘れる前に書こうと思う。 それはデジタル証明書の環のことだ。
デジタル証明書というのは、パソコンで使うことが出来る精度の高い証明書のことだ。 この証明書を使うと、そこに書いてあることがまず間違いなく書いた人が納得して書いたことだ、ということが数学的に証明できる。 不思議な証明書だ。 そこには、デジタル署名というものがついているが、このデジタル署名こそが、不思議な確実性の源泉だ。 デジタル署名は、公開鍵暗号という文章を暗号にする鍵と文章を解読する鍵が分かれているという画期的な暗号方式を応用して作られており、今のところ解読は不可能だと考えられている。 よってデジタル署名も複製したりすることは無理だろう、と考えられている。
デジタル署名というのは、不思議なペンのようなものと対になっている。 デジタル署名は毎回形が違う記号のようなものなのだが、これをパソコンにかけると、どのペンで書いたのかが瞬時にわかってしまうのだ。 そのペンは誰にも渡さないで秘密にしておかなければいけない。 この人がその秘密のペンを誰にも渡さないで隠し持っている限り、デジタル署名は必ずその人のものだ、と知ることが出来る。
しかし、である。 その署名が例えば本当に恋人Aさんのものかどうか、知る方法がないのだ。 本当に恋人Aさんがそのペンを持ってその署名を作ったのか知る方法がない。 メールなどで送ってもらった場合などは、メールでその署名がAさんのものだといわれていても、ひょっとしたらメール自体がニセモノかもしれず、信用していいものかわからない。
一番簡単なのは、Aさんに会ったときに目の前で署名してもらうことだ。 これならまず間違いがないだろう。 しかし誰も彼もいちいちあって署名をもらってくる訳にはいかない。 面倒である。
そこで考えられたのがPKIというものだ。 PKIというのは、要するに区役所のようなもので、署名を持って区役所に行ってこれが私の署名です、ということを登録する機関だ。 区役所は登録時にその人の信用度を測定して、結果に応じて異なったクラスの登録をする。 そして区役所は「この署名は確かにこの人のものです。信用できる人です。」と書いた証明書に区役所長のデジタル署名をつけて発行してくれる、という仕掛けになっている。 (これがベリサイン社のやっていることだ。)
しかし、PKIというのは、根本的に問題を抱えている。 それは「一体どうやって区役所を信頼するのか」という問題だ。 その区役所は、誰も証明してくれない。 区役所が自分で自分を証明しても、それが正しいと誰が言えるだろう。
そこで考えられたのがPGPの「信用の網」という方法だ。
これは「僕はAさんを信用している。」 「AさんはBさんを信用している。」 「ならば僕もBさんを信用できるだろう。」 という考え方を元に、PKIのような特別な機関を使わなくてもデジタル署名の信用度を測ることができる、というアルゴリズムだ。
画期的なアルゴリズムなのだけど、PGPは色々な政治の荒波にもまれた歴史があるソフトで、残念ながら開発から20年近くたつ今でも一般にきちんと普及しているとは、いいがたいものがある。
◇
前置きが長かったけど、本題はこういうことだ。 さっきふと思ったのだけど、PKIとPGPって結果的に見ると同じことではないだろうか。
もしAさんがBさんを信用するBさんがCさんを信用するという風な連鎖があるなかで、以下のように経路の中で自分にループしている連鎖があったら、それはどういう意味になるだろう。
Aさん→Bさん→Cさん→Dさん →Aさん
信用がこの4人の中で中ぶらりになっている感じで不思議な感じがするが、これはAさんBさんCさんDさんそれぞれがみんな信頼できる関係である、ということを意味しているのではないだろうか。
これって言ってみれば、区役所→Dさん→Cさん→Bさん→Aさん→区役所 っていう風に証明書が連鎖している状態と同じではないか。 だとすると、PKIとPGPの間に本質的な差は無いということになるかもしれない。
http://www.anderson.ucla.edu/faculty/art.geoffrion/home/ec1/verisign.htm
http://discuss.joelonsoftware.com/default.asp?joel.3.369231.3
この推論が正しければPGPの発行する鍵をベリサイン社に登録するだけで、PGPは世界一安全で互換性が高い素晴らしいメールアプリになる。 なるはずだ。 でもなんかベリサイン社とPGPはとても仲が悪いらしく、ベリサイン社もファイルフォーマットが違うから、というようなあまり本質的じゃない言い訳をつけてPGPに対応していないみたいだ。
それはちょっとおいておいて、今日思いついたことを忘れる前に書こうと思う。 それはデジタル証明書の環のことだ。
デジタル証明書というのは、パソコンで使うことが出来る精度の高い証明書のことだ。 この証明書を使うと、そこに書いてあることがまず間違いなく書いた人が納得して書いたことだ、ということが数学的に証明できる。 不思議な証明書だ。 そこには、デジタル署名というものがついているが、このデジタル署名こそが、不思議な確実性の源泉だ。 デジタル署名は、公開鍵暗号という文章を暗号にする鍵と文章を解読する鍵が分かれているという画期的な暗号方式を応用して作られており、今のところ解読は不可能だと考えられている。 よってデジタル署名も複製したりすることは無理だろう、と考えられている。
デジタル署名というのは、不思議なペンのようなものと対になっている。 デジタル署名は毎回形が違う記号のようなものなのだが、これをパソコンにかけると、どのペンで書いたのかが瞬時にわかってしまうのだ。 そのペンは誰にも渡さないで秘密にしておかなければいけない。 この人がその秘密のペンを誰にも渡さないで隠し持っている限り、デジタル署名は必ずその人のものだ、と知ることが出来る。
しかし、である。 その署名が例えば本当に恋人Aさんのものかどうか、知る方法がないのだ。 本当に恋人Aさんがそのペンを持ってその署名を作ったのか知る方法がない。 メールなどで送ってもらった場合などは、メールでその署名がAさんのものだといわれていても、ひょっとしたらメール自体がニセモノかもしれず、信用していいものかわからない。
一番簡単なのは、Aさんに会ったときに目の前で署名してもらうことだ。 これならまず間違いがないだろう。 しかし誰も彼もいちいちあって署名をもらってくる訳にはいかない。 面倒である。
そこで考えられたのがPKIというものだ。 PKIというのは、要するに区役所のようなもので、署名を持って区役所に行ってこれが私の署名です、ということを登録する機関だ。 区役所は登録時にその人の信用度を測定して、結果に応じて異なったクラスの登録をする。 そして区役所は「この署名は確かにこの人のものです。信用できる人です。」と書いた証明書に区役所長のデジタル署名をつけて発行してくれる、という仕掛けになっている。 (これがベリサイン社のやっていることだ。)
しかし、PKIというのは、根本的に問題を抱えている。 それは「一体どうやって区役所を信頼するのか」という問題だ。 その区役所は、誰も証明してくれない。 区役所が自分で自分を証明しても、それが正しいと誰が言えるだろう。
そこで考えられたのがPGPの「信用の網」という方法だ。
これは「僕はAさんを信用している。」 「AさんはBさんを信用している。」 「ならば僕もBさんを信用できるだろう。」 という考え方を元に、PKIのような特別な機関を使わなくてもデジタル署名の信用度を測ることができる、というアルゴリズムだ。
画期的なアルゴリズムなのだけど、PGPは色々な政治の荒波にもまれた歴史があるソフトで、残念ながら開発から20年近くたつ今でも一般にきちんと普及しているとは、いいがたいものがある。
◇
前置きが長かったけど、本題はこういうことだ。 さっきふと思ったのだけど、PKIとPGPって結果的に見ると同じことではないだろうか。
もしAさんがBさんを信用するBさんがCさんを信用するという風な連鎖があるなかで、以下のように経路の中で自分にループしている連鎖があったら、それはどういう意味になるだろう。
Aさん→Bさん→Cさん→Dさん →Aさん
信用がこの4人の中で中ぶらりになっている感じで不思議な感じがするが、これはAさんBさんCさんDさんそれぞれがみんな信頼できる関係である、ということを意味しているのではないだろうか。
これって言ってみれば、区役所→Dさん→Cさん→Bさん→Aさん→区役所 っていう風に証明書が連鎖している状態と同じではないか。 だとすると、PKIとPGPの間に本質的な差は無いということになるかもしれない。
http://www.anderson.ucla.edu/faculty/art.geoffrion/home/ec1/verisign.htm
http://discuss.joelonsoftware.com/default.asp?joel.3.369231.3
この推論が正しければPGPの発行する鍵をベリサイン社に登録するだけで、PGPは世界一安全で互換性が高い素晴らしいメールアプリになる。 なるはずだ。 でもなんかベリサイン社とPGPはとても仲が悪いらしく、ベリサイン社もファイルフォーマットが違うから、というようなあまり本質的じゃない言い訳をつけてPGPに対応していないみたいだ。
コメント一覧
ねこ☆ミ。 2009年05月17日 02:03
確かに、これを読んで想うに、PGPとPKIは本質的に差がないと想う。
以下は、自分があまり理解していない気がするけれども、、、
ベリサインを信用している場合、誰か経由のベリサイン証明書よりも、ベリサインからの直接の証明書が欲しいと想ったりもする。
信用できる友人の信用できる友達と、その友達の輪に属する人間が、いつでも、かならず、天地がひっくり返っても、信頼できるという前提であれば、成り立ってると想う。
以下は、自分があまり理解していない気がするけれども、、、
ベリサインを信用している場合、誰か経由のベリサイン証明書よりも、ベリサインからの直接の証明書が欲しいと想ったりもする。
信用できる友人の信用できる友達と、その友達の輪に属する人間が、いつでも、かならず、天地がひっくり返っても、信頼できるという前提であれば、成り立ってると想う。