dポイントプレゼントキャンペーン実施中!

S/MIMEについて調べています。

Xさんが、Aさん、Bさん、、、、Jさんの10人とS/MIMEを使って通信するとします。
暗号はRSAとします。

Xさんは、Aさん用の証明書つきの公開鍵、Bさん用の証明書つきの公開鍵、、、、
のように、10人分の異なる公開鍵を用意して運用することは可能ですか?
とうぜん、Aさんが使う秘密鍵は10個となります。
個別にしておいたほうが、因数分解されたときの被害が最小限になる。

もちろん、11番目のKさんとは暗号化しないでメールのやり取りをする。

 サンダーバードを使って上のようなことが出来ないかと考えています。
 
 使ったことが無いので、へんな質問かもしれませんがよろしくお願いいたします。

A 回答 (4件)

1.堅牢性の観点から


費用対効果で考える場合、例えば、
10年間、10人それぞれに別個の公開鍵を用いるよりも、
1年毎に10人共通の公開鍵を更新する方が堅牢性は高いと考えます。

>個別にしておいたほうが、因数分解されたときの被害が最小限になる。
上記文言は、当該公開鍵に依存する情報量を最小化することで堅牢性を確保することが目的ですよね?

当該公開鍵に依存する情報量を最小化する方法としては、
・時間当たりの情報量を減らす(当該公開鍵の利用者を減らす。uyama33さんのアイディア)
・公開鍵の運用期間を短くする(短期間で新しい公開鍵に変更する)
の2種類があります。

公開鍵の堅牢性は解読に時間がかかる(平均100年以上など)ことで保証されています。
逆に、うっかり解読されてしまった(平均100年なので、うっかり5年で解読される可能性もある)リスク
への対策としては、後者の短期間で公開鍵を交換する方が効果的ではないでしょうか?

2.運用性の観点から
PKIシステムで他人の証明書(≒公開鍵)が自由にダウンロードできる環境だと、
Aさんに、Aさん専用のXさん証明書を使ってもらうことが困難(Bさん専用のXさん証明書をAさんが入手できる)
なので、運用実現性に高いハードルがあるように思います。

この回答への補足

アドバイスありがとうございます、

PKIシステムで他人の証明書(≒公開鍵)が自由にダウンロードできる環境だと、
Aさんに、Aさん専用のXさん証明書を使ってもらうことが困難(Bさん専用のXさん証明書をAさんが入手できる)
なので、運用実現性に高いハードルがあるように思います。

これは、保障による信頼性の連鎖の上で公開鍵暗号を利用することだと思っています。


今はほとんどの人が暗号通信をしていないと思っています。
(SSLについては、スノー伝君のことがあるので信用しない。)
日常の相互信頼の上に、少しずつ暗号化する部分を、それぞれが自分と通信相手のPCの能力を考慮しながら、広げていくと言う方向を考えています。

暗号化していない通信をしていた中で、お互いに合意したらその人との暗号化通信を開始する。
別の人とは互いに合意が出来た時点で暗号化通信を開始する。
必要に応じて公開鍵暗号や対称鍵暗号を選択する。

便利な点は、自分が最新のPCを持っていて、Bさんも最新のPCを持っているなら自分とBさんとの間では、強力な暗号化をしてもたがいのPCが処理できる。

Cさんが古いPCしか持っていないときは、自分とCさんとの間の暗号化はCさんのPCの能力に合わせて
軽い暗号化にする。

こうすれば、ネットワーク全体におけるPCの能力を最大に生かした暗号通信網になると考えます。



費用の件ですが、
いまは、RSA暗号ソフトも楕円曲線暗号のソフトも無料で入手できるので、
自分で公開鍵を作り、PC環境に合わせて変更してゆくことにしても、費用は電気代だけで10円もかかりません。
対称鍵暗号のソフトも無料で入手できますので、それぞれの好みで使うことも出来ます。

偉い人に保障してもらうのではなくて、相互の日常の交流に安全性を少しずつ付け加える方式です。

もちろん、メールソフトの機能を少し拡張する必要があります。
互いに暗号通信を使う合意をしたら、その方式で暗号化してから送信できる機能と
受信してから復号化できる機能が必要です。

そして、合意していない人とは暗号化しないでメール交換が出来る。
そんなメールソフトがあればよい、

こんなことを考えています。

補足日時:2013/09/03 17:38
    • good
    • 0

> ありがとうございます。

確認しました。
> http://www.trustss.co.jp/smnHsk010.html
> (回答No.2への補足)

こちらこそ,有益なリンク先をご紹介いただけました,ありがとうございます。
    • good
    • 0
この回答へのお礼

ご丁寧にありがとうございます。

スノー伝君の件以来、メールソフトのあり方について、いろいろ考えています。
openssl を検討し始めたのは今年の夏からです。
S/MIMEでの証明書を取得したのも初めてです。

数学や暗号は以前からいろいろな本を読んでいますが、
それらの利用方法についての現在の常識には疑いをもっています。
ひとつずつ検証したいと思っています。


変な質問にもかかわらず真剣に指導していただき、感謝しております。

お礼日時:2013/09/03 17:58

> GメールのSSLで使うマスター暗号化キーがもれたら


> Gメール全体が一挙に崩壊します。

mail.google.comとの暗号化に使われるキー(※)は不特定多数に公開されています。
mail.google.comの電子証明書にそのまま格納されていますから,言うなれば,世界中の人々に漏れているわけです。
(※正しくは,暗号通信で使われる暗号化キーを相手と共有するための暗号化キー)

--------
> この記述は、暗号化鍵を登録させる立場に立った考え方

いいえ,間違っています。
第一に,秘密鍵は自分のPCの中で生成されて自分のPCに登録されただけです。自分のPCから外へは送信されていません。
http://oshiete.goo.ne.jp/qa/8246984.html の私の回答No.1

第二に,公開鍵暗号方式を使うということと,公開鍵を電子証明書という形で登録することは別の話です。電子証明書に不信感がぬぐえないのなら,各人相互の通信で自由に公開鍵暗号方式を使えばよいだけです。
http://oshiete.goo.ne.jp/qa/8242041.html の私の回答No.6


--------
> 1箇所を攻撃すれば崩壊するようなシステムはもろすぎます。
> インターネットの構造のように、一部分を破壊されても残りはきちんと機能する。
> そんなシステムのほうが良いと思っています。

原則としては反対はしませんけれど,
セキュリティシステムにおいて,強固な一元管理と,脆弱な分散管理とがあるなら,前者しか現実的に採用できないです。
「インターネットのカタチ,もろさが織り成す粘り強い世界」と謳われたような,強固な分散管理システムが現実的な候補として存在するなら自然とそこへ移行していくでしょうけれど,そのようなセキュリティインフラストラクチャの存在が不確かなのに理想論だけで強固な一元管理を捨てるわけにはいかないです。

この回答への補足

以前gooで教えていただいた、SSLでの秘密鍵

http://oshiete.goo.ne.jp/qa/8202271.html
のことを意味していると解釈して、

http://www.zaikei.co.jp/article/20130727/142814. …
の記事の言葉を使ってしまいました。

変な表現になってしまいました。すみません。


なお、
「インターネットのカタチ,もろさが織り成す粘り強い世界」と謳われたような,強固な分散管理システムが現実的な候補として存在するなら自然とそこへ移行していくでしょうけれど,そのようなセキュリティインフラストラクチャの存在が不確かなのに理想論だけで強固な一元管理を捨てるわけにはいかないです。

これについては、送信者と受信者の順序対ごとに暗号化方式と暗号化鍵を決定出来る形にして、
(送信者と受信者の互いの意思だけで決定できる。)
暗号メールが送受信できるようにすれば良いと考えています。
これならば、ネットワークの一部の暗号化が破られても全体は機能し続けます。
また、暗号鍵の集積ポイントがないので攻撃目標が定めにくい。

こんなことを考えています。

補足日時:2013/09/03 12:57
    • good
    • 0

> 10人分の異なる公開鍵を用意して運用することは可能ですか?



そうする必要性がないです。
「Aさん用の証明書つきの公開鍵、Bさん用の証明書つきの公開鍵」とおっしゃっている時点で,公開鍵による暗号化の仕組みをそもそも勘違いなさっているのだと思います。

ネット検索でヒットした,共通鍵暗号と公開鍵暗号の初心者向け解説ページがこちら。
http://www.geocities.co.jp/SiliconValley-Cuperti …

--------
必要性はないけれどそれは可能か,と問われたら「可能です」と答えることになりますが。

認証サービスは一般的に年契約の有料サービスです。一人がただひとつ取得すればニーズを満たすことができる電子証明書を10個も取得するなんて酔狂でしょう。
https://www.verisign.co.jp/ssl/chart.html

--------
> 個別にしておいたほうが、因数分解されたときの被害が最小限になる。

現在の暗号は,数学上の新たな発見がないかぎり,因数分解によって鍵が見つかるなんて数百年の時間を費やしても不可能だという点に立脚しています。

そもそも認証サービス事業者自身が,自らのRoot認証局の秘密鍵を極めて強固に守ることによってサービスを成り立たせているわけで。

仮に攻撃者が因数分解によって鍵を見つけようとするのなら,たかが一利用者を対象にするより,認証局の鍵を攻撃対象にするはずです。

この回答への補足

初歩的な説明のページのご紹介ありがとうございます。

内容は、Handbook of APPLIED CRYPTGRAPHY の31ページから 35ページの内容と同じだと思います。
でも、この記述は、暗号化鍵を登録させる立場に立った考え方で、暗号化通信のネットワークを
弱体化させるものだと思っています。

1箇所を攻撃すれば崩壊するようなシステムはもろすぎます。
インターネットの構造のように、一部分を破壊されても残りはきちんと機能する。
そんなシステムのほうが良いと思っています。

たとえば、GメールのSSLで使うマスター暗号化キーがもれたらGメール全体が一挙に崩壊します。

補足日時:2013/09/03 00:31
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!