- PR -

クライアント証明書をエクスポート不可にする方法(除くIE)

投稿者投稿内容
apollo
会議室デビュー日: 2007/03/30
投稿数: 17
投稿日時: 2007-03-30 21:42
ツッコミありがとうございます。
pgpとか調べてて(他の仕事もしていて)レスが遅くなりました。
引用:

PKI基礎講座を見れば想像が付くと思いますが、認証局のシステム機能は証明書の発行のみです。


見てみました。ありがとうございます。

引用:

・・・意味がわかりません。
PGPにとっては公開鍵が生命線ですが、これを保障するためのPKI認証(クライアント証明)
それをインポートするブラウザの機能について論じていると思っておりますが・・・。


http://www.okapiproject.com/security/sec_tools/pgp/generat_key.htm
を見るとpgpで秘密鍵を作成出来ると記述されているのですが...
でもメーラーとか書いてあるのでS/MIMEなのかなぁ。S/MIMEでも秘密鍵は
SSLと同じと思っているのですが...あぁ頭が回らない
変な事言っていそうなのでどなたかガシッと教えて下さい。
インポート時にクライアントの秘密鍵(の中にあるエクスポート不可情報)を
みてブラウザが秘密鍵エクスポート不可のクライアント証明書を自マシンに
作成すると考えているのですが...

引用:

今見ているWebページの上部にある[FAQ]を見て下さい。


FAQも読まないなんて ファックユー > 自分
すいません。まだ仕事していてうわごとになっています。
apollo
会議室デビュー日: 2007/03/30
投稿数: 17
投稿日時: 2007-03-31 09:31
おはようございます。やっとおうちに帰れました。

なんかとんでもない事言っていましたので自己レスです。
引用:
インポート時にクライアントの秘密鍵(の中にあるエクスポート不可情報)を
みてブラウザが秘密鍵エクスポート不可のクライアント証明書を自マシンに
作成すると考えているのですが...


クライアントの秘密鍵には(多分)エクスポート不可情報なんてありえ無いですネ。
そんなのあったら全てのクライアント証明書がエクスポート出来ない事になる。

色々と調べても判らなかったので勝手に自分でまとめてみました。
1.pgpのコマンドオプションにエクスポート不可という記述があるが
 今回の「クライアント証明書内に同時に秘密鍵をエクスポート出来ない様にする」
 には(多分)関係ない
2.CAサーバが「クライアント証明書内に同時に秘密鍵をエクスポート出来ない様にする」
 ためにクライアント証明書内にエクスポート不可情報を書き込み
 ブラウザがその情報を見てエクスポート不可なクライアント証明書
 としてインポートする
3.2.はどうやらMSCA&IEだけで通用するMS独自仕様である
4.「クライアント証明書内に同時に秘密鍵をエクスポート出来ない様にする」のは
 今の所ブラウザをIEに限定しないと実現出来ない

皆様の助言をお待ちしております orz orz orz
BackDoor
ぬし
会議室デビュー日: 2006/02/20
投稿数: 831
投稿日時: 2007-03-31 10:12
何を考えているのか理解できないので最後のコメントにします。

引用:
apolloさんの書き込み (2007-03-30 21:42) より:

http://www.okapiproject.com/security/sec_tools/pgp/generat_key.htm
を見るとpgpで秘密鍵を作成出来ると記述されているのですが...
でもメーラーとか書いてあるのでS/MIMEなのかなぁ。S/MIMEでも秘密鍵は
SSLと同じと思っているのですが...あぁ頭が回らない
変な事言っていそうなのでどなたかガシッと教えて下さい。


上記サイトは「秘密鍵と公開鍵の作成」ですが、この内容と当初の目的↓と
どのような関係があるのでしょうか?

引用:
apolloさんの書き込み (2007-03-30 09:41) より:

クライアント証明書がブラウザ側に必須となるシステム構築を行っております。
業務要件として
1.配布したクライアント証明書はキー込みでエクスポートさせたくない。
2.システムとして対応ブラウザをなるべく多くしたい
ex.)
win IE(V5.5以降),FireFox(V2以降),Netscape(V7以降)
mac safari(V2以降),FireFox(V2以降),Netscape(V7以降)


まずは、ご自身の頭の中を整理されることが必要だと思えます。

引用:
apolloさんの書き込み (2007-03-31 09:31) より:

色々と調べても判らなかったので勝手に自分でまとめてみました。
1.pgpのコマンドオプションにエクスポート不可という記述があるが
 今回の「クライアント証明書内に同時に秘密鍵をエクスポート出来ない様にする」
 には(多分)関係ない
2.CAサーバが「クライアント証明書内に同時に秘密鍵をエクスポート出来ない様にする」
 ためにクライアント証明書内にエクスポート不可情報を書き込み
 ブラウザがその情報を見てエクスポート不可なクライアント証明書
 としてインポートする
3.2.はどうやらMSCA&IEだけで通用するMS独自仕様である
4.「クライアント証明書内に同時に秘密鍵をエクスポート出来ない様にする」のは
 今の所ブラウザをIEに限定しないと実現出来ない


ご自身なりにまとめられていますが、誤っている(誤解している)部分も
見受けられます。
前述したように、これ以上は付き合う気がありませんので、後はご自身で
頑張って下さい。
# ネットサーフィンも結構ですが、書籍を購入して系統立てて学ぶ方が
# 早いと思いますよ。
apollo
会議室デビュー日: 2007/03/30
投稿数: 17
投稿日時: 2007-03-31 10:30
BackDoorさん朝早くに助言ありがとうございます。

引用:

BackDoorさんの書き込み (2007-03-31 10:12) より:

前述したように、これ以上は付き合う気がありませんので、後はご自身で
頑張って下さい。
# ネットサーフィンも結構ですが、書籍を購入して系統立てて学ぶ方が
# 早いと思いますよ。



おっしゃられるとおりです。
PKIの基礎をよく理解せず、書物ではなくネットだけで何とかしようと
(しかも教えて君ばかりで)している自分を反省しております。
色々と助言頂き、たわごとに付き合ってもらいまして本当にありがとう
ございました。 > 皆様

もう一度最初から調べ直し致します。
なにか有効な情報が得られましたら。ここにフィードバックしたい
と思います。

皆様、本当にありがとうございました。
加納正和
ぬし
会議室デビュー日: 2004/01/28
投稿数: 332
お住まい・勤務地: 首都圏
投稿日時: 2007-04-01 03:23
引用:

apolloさんの書き込み (2007-03-31 09:31) より:

4.「クライアント証明書内に同時に秘密鍵をエクスポート出来ない様にする」のは
 今の所ブラウザをIEに限定しないと実現出来ない



やりたいことは判る気がします。要するに。

「個人」を特定したい。

ということだとおもいます。「個人」の特定方法を秘密鍵をシステム的にもっている
ひと「だけ」に限定するとなると、今の技術では難しいのが実際です。

IEだけならエクスポート不可の属性をインポート時に(だから実際にはシステム的
ではなく運用で頑張ってるわけですが。。。)設定すれば出来ますが。そもそも
「秘密鍵」の運用をどうするかは、各システムで異なるので、まだどうも出来ないのが実情です。

ネタとしては、指紋と虹彩と静脈とを組み合わせて、全部合えば「個人」
を特定する方法があるのは事実ですが。。。それはブラウザをはるかに超える
ことになります。Webアプリ+独自クライアントという、ある意味後退したシステムになり、保守性は後退しまくります。

ふつー、は「鍵ペア」ではなく、パスワードベースが大半です。「鍵ペア」そのものを
顧客に説明できないからです。

ということで。
SSLクライアント認証==IE
それ以外==パスワード

という要件にした方が順当です。2006年程度の技術水準ですが。
apollo
会議室デビュー日: 2007/03/30
投稿数: 17
投稿日時: 2007-04-01 13:20
わぁ〜憧れの加納さんからレスがついたー \(^o^)/
ありがとうございます。とても参考になりました。

引用:

加納さんの書き込み (2007-04-01 03:23) より:
やりたいことは判る気がします。要するに。

「個人」を特定したい。

ということだとおもいます。「個人」の特定方法を秘密鍵をシステム的にもっている
ひと「だけ」に限定するとなると、今の技術では難しいのが実際です。

IEだけならエクスポート不可の属性をインポート時に(だから実際にはシステム的
ではなく運用で頑張ってるわけですが。。。)設定すれば出来ますが。そもそも
「秘密鍵」の運用をどうするかは、各システムで異なるので、まだどうも出来ないのが実情です。

ネタとしては、指紋と虹彩と静脈とを組み合わせて、全部合えば「個人」
を特定する方法があるのは事実ですが。。。それはブラウザをはるかに超える
ことになります。Webアプリ+独自クライアントという、ある意味後退したシステムになり、保守性は後退しまくります。

ふつー、は「鍵ペア」ではなく、パスワードベースが大半です。「鍵ペア」そのものを
顧客に説明できないからです。

ということで。
SSLクライアント認証==IE
それ以外==パスワード

という要件にした方が順当です。2006年程度の技術水準ですが。


今回の要件は(秘保上詳しくは言えないのですがお金を扱うインターネットを使用したシステムです)
1.システムとしてクライアント証明書を必須にする事でシステムにアクセス可能な端末(ブラウザ)を制限する。
2.さらにクライアント証明書がある端末でもID&パスワードでアクセスできる人物を制限する。
3.クライアント証明書はワンタイムURLからダウンロードする。
 (この時鍵ペアをユーザが意識する事なくクライアントに設定する)
4.3.のダウンロードにおいてクライアント(ブラウザ)環境に作成されたクライアント証明書はセキュリティ上
 エクスポート(バックアップ)は出来ない様にする(したい)
5.上記はIE+MSCAでは実現可能。(これは要件ではないですが)
6.マルチブラウザ対応として4.を各種ブラウザ+OpenSSLで可能か調査する(これが私のタスクです)。
7.過去に配布したクライアント証明書も使用出来なければいけないのでSSL以外への変更は不可(補足)。
 (念のため「クライアント証明書とSSLは対だから...」なんてツッコミは判っていますのでナシで)

何故クライアント証明書をエクスポート不可にしなければいけないのかはクライアント証明書をダウンロード
した社員が会社を辞めた時、エクスポートしたものを盗んで悪さをされては困るという所から来ています。
(当然ID,パスも盗んでいるという前提です)
ちなみにクライアント証明書ダウンロード時のワンタイムURL,ID,パスが漏洩した場合はどうしようもない
と考えています。(せいぜい運用での対処法を検討しておく位)

個人の特定については加納さんのご指摘やtofさんの情報の様に、「人体情報を使用したもの」や「トークン」等
を使用するのが現実的な解だと思っています。(「トークン」に関しては盗難及びPINが解析されればダメ)
採用出来なかった理由は...前のレスを見て下さい。簡単に言うとお金がないからです。

最終的には
A.マルチブラウザ対応にするならIE以外は証明書をエクスポート(バックアップ)出来てしまうという制限
 をつけた上でシステムを作成する。
B.上記を前提とするがIE以外のブラウザの内、どうしても対応したいブラウザ以外はユーザエージェント
 を見て(詐称される可能性があるので絶対とは言い切れないが)ログイン画面でエラーにするという事も可能。
 (大体、FireFoxなんてオープンソースなんだからソースハックすればなんとでもなってしまう。)
位で落とし込むしかないと考えています。
一応IEのみサポートし、以外ははじくというのもありですが政治的な話もありごにゅごにょ(秘保)

一番知りたかったmacのsafariでクライアント証明書をエクスポート不可にする方法についてここでは情報
が得られなかったので自分で再度調べましたがやっぱり不明なのでsafariでは
「証明書をエクスポート(バックアップ)出来てしまう」という事と考えました。
「結局本みてないのかよぉ」みたいなツッコミがありそうなので言い訳しておきますが
日経BPのPKIの分厚い本はここに質問する前に読んでおります(すみからすみまで内容記憶した訳ではありませんが)


apollo
会議室デビュー日: 2007/03/30
投稿数: 17
投稿日時: 2007-04-01 13:39
長文ですので苦手な方はご遠慮下さい。
以降、炎上するのを覚悟の上でこの会議室についてコメント致します。
「ぬし」の方に総スカン喰らう事も覚悟して書き込みます。

勉強の為、ここの他のスレッドを読んでいたのですが
SSLでも「なりすまし」http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36315&forum=14&41
スレッドの内容がこの会議室の雰囲気を良くあらわしていると感じました。

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36315&forum=14&41
なちゃさんの書き込み (2007-01-25 14:48) より:

その認識がそもそも間違いです


こんな意見のみで発言の根拠も示さないコメントは2ちゃんのあおりと違いがないと思われるのですが

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36315&forum=14&start=8
甕星さんの書き込み (2007-01-25 15:57) より:

もっと具体的に書くか、専門用語の意味をきっちりと押さえた上で専門用語を使って質問してください。単純に「クライアント」と書いても、ユーザーから見たクライアント、サーバー管理者から見たクライアント、攻撃者から見たクライアントは意味が違いますよね。その辺りを曖昧のまま、同じ台詞を繰り返されても、さっぱり意味不明です。

なぜ相手に伝わらないのか考えてみてください。


質問の推移からすればクライアントがブラウザの事であるのは明白だとおもわれますが
回答者側から「サーバはWEBサーバ、クライアントはWEBブラウザとして回答します」位の
事は書けるのではないでしょうか?
なぜ自分が質問者の意図を認識出来ない(又はしようとしない)のか考えてみてください。
質問者の意図が不明ならば「...ならば...」という回答を行う、又は意図が明確になるまで回答
を控えるというのも手段ではないでしょうか?
(回答者の負担を考え、「あえて回答を控える」というあたりまえな事も記述しました。)

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36315&forum=14&start=8
どせいさんの書き込み (2007-01-25 16:18) より:

基本的な理解の不足が原因の「オレオレ推論」の展開。
これを防ぐには、基本的な事から順を追って理解を深めることが最適だと思うよ。


「オレオレ推論」という言葉が差別用語に値すると思うのですが、
対面(リアル)でこんな言い方をするような人なら仕事は一人でしか出来ない
(それがいけないといっている訳ではないので誤解なきよう)
ですね。(友達いっぱいで仲良く仕事されているのでしたら私の方が間違いですゴメンナサイ。)
基本的な事から順を追って理解を深めるのは私も重要だと思います
いずれにしろ「あおり」レベルですね
せめて「基本」をおさえる為に必要な本やリンクを提示して頂ければ建設的なコメント
になったと思います。

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36315&forum=14&start=8
BackDoorさんの書き込み (2007-01-25 17:15) より:

心配されている内容の技術背景が全く理解できませんので、ここまでで失礼します。


もう書き込みをしないと宣言するのなら
疑問詞のついた文を記述すると「日本語できない」と思われますよ

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36315&forum=14&start=8
はからずもさんの書き込み (2007-01-25 18:00) より:

批判的、排他的なものを感じずにはいられませんね。


私が感じつつも明確にならなかった事はこのことだと激しく同感しました。
この書き込みをしようとしたきっかけです。
(はからずもさんのせいにするつもりではありませんので誤解なきよう)

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?mode=viewtopic&topic=36315&forum=14&start=16
スフレさんの書き込み (2007-01-25 18:18) より:

という説明がちゃんと書かれているSSLの説明文書って少ないですね。


こういうフォローをしてくれる人がいますと癒されますね。

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?mode=viewtopic&topic=36315&forum=14&start=16
BackDoorさんの書き込み (2007-01-25 21:53) より:

用語の意味も大切だと思いますが、SSLについて質問するならTCP/IPの通信方式
程度は基礎知識として必要かと思います。


ここはマニアしか質問しちゃいけないという事なのでしょうか
私もTCP/IPについては自分の周りの人間より知ってはいますが、人にTCP/IPを講釈できるほど
知ってはいません(cでsocket()使ってサーバ・クライアント双方のPG作っだけです)。
その位深い世界だと思っています。

引用:

このサイトには私のようなひねくれ者も多いですが、利用方法によっては非常に
有用です。


この自虐的な発言は「だから許してくれよ」という意味なのでしょうか
WEBでこういう発言すると好感度がさがるのでこういうたぐいの文言は自粛されたほうが
良いとおもいます(強制している訳ではありません)。

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?mode=viewtopic&topic=36315&forum=14&start=24
ひらさんの書き込み (2007-01-26 11:02) より:

本題から外れますが、端的に言えば、自らの読解力のなさを棚に上げて、
素人・初心者の文章に対して非難する雰囲気がここにはあるということですね。
それをわかった上での書き込みなら良いのですが・・・


かなり気を使った文章ですね。よく書かれたと思います。
ヘタすれば攻撃目標が自分になる(攻撃されなくとも自分の質問に「ぬし」が答えてくれなくなる)可能性
が高くなるのに。(私の文章はもう逝っていると思いますが)
こういう方がいらっしゃると癒されますなぁ〜

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?mode=viewtopic&topic=36315&forum=14&start=24
未記入さんの書き込み (2007-01-27 13:57) より:

引用:

ひらさんの書き込み (2007-01-26 11:02) より:
本題から外れますが、端的に言えば、自らの読解力のなさを棚に上げて、
素人・初心者の文章に対して非難する雰囲気がここにはあるということですね。
それをわかった上での書き込みなら良いのですが・・・



そもそも、こういった意見が叩かれるのは、自分の意見が理解される原因が
自分の説明力じゃなくて相手の理解力が足りないという前提で話をしようとする
からなんですが。


私の意見は質問者の意見を理解できない(または答えるのに十分な情報がない)原因が
回答者の読解力じゃなくて質問者の説明力(文章化の努力)が足りない前提で話をしようとしている
からではないでしょうか
あえて回答しないという選択肢があるという事はこの文章の前の方で述べておりますので、
回答者の負担ウンヌンはなしで。
全ての回答者が上記スタンスではない事を承知した上での提言です。

引用:

未記入さんの書き込み (2007-01-27 13:57) より:
#スルーだ、スルー…


スルーなのにつっこんですいません。(「もうみんなスルーしようよ」という意味なら...ですが)

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?mode=viewtopic&topic=36315&forum=14&start=32
加納正和さんの書き込み (2007-01-27 14:45) より:





加納さんの意見はとても為になります。
大域的な視点でとらえられているのでボトムアップで発見された質問に対してトップダウンな考え方
から「こういう問題もある」という事を提示されておられます。
ただこのレベルは質問者(スレ立てた人)の当初の意図からは大きくずれてしまい、質問者の方が理解出来る
レベルでは無いような気がします(驕った見方でしたらすいません)。
多分、このスレの論議内容がズレて(難しい話になって)来たので、それに対する(当初の質問者以外への)回答
としてはあっていると思います(私はこの回答内容はよく理解できませんでした。勉強不足のせいです)

引用:

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?mode=viewtopic&topic=36315&forum=14&start=32
blunderさんの書き込み (2007-01-28 14:17) より:
人は理解できないから質問するのではないでしょうか。理解を促すのは賛成ですが、
「理解すれば分かる」では質問者への答えにはならないと思います。


途中から元質問者に代わってこのスレを有用なものにすべくがんばっておられる方です。
このような方がおられれば「インターネットは便所の落書き」なんて言わせないと断言できます。
わたしも賛成です。
2ちゃんでも上記の様な方がいらっしゃるから存続するスレはたくさんあると思います。
2ちゃんを擁護しているのではなく、ここは登録制なのでそれを踏まえて意見頂ければ幸いと思っています。
(登録制だからこそヘタ(無責任)な意見はいえないというのも正論だと思います。)


以降のblunderさんと加納さんのやりとりは自分としてはとても勉強になりました。
お礼申し上げます。

貴重な時間をさいてボランティア(無料)で回答してやっていると受け取られる様な発言を
されている方がいますがその様ないいまわしをするのなら回答しない方が
質問者及びROM(つまりこのサイトを評価する立場にある人)の為、
ひいてはこのサイト(会議室)の為になるのではないでしょうか?
この会議室で回答するのは単なる「オレってこんなに知っててエライだろう〜」という自己満足の為に
やっているのなら「まぁ世の中には色んな人がいるなぁ〜」と私は思うだけですが、
そうでないなら回答する人も自己満足以外のメリットを期待していると思われるので
「ボランティア(無料)で回答」みたいな発言はここの会議室住人の質を落とす発言でしかないと思います。
私としては「ぬし」レベルの人のメリットは下記のものが上げられると思います。
・WEBへの恩返しが出来る。
 「ぬし」の方も昔から「ぬし」だった訳ではなく「無料」の色々な情報サイト(英語等を含む)
 からの情報も参考にしながら今の知識がついた訳で「コメント」という形で情報を発信し、
 WEB上の知識の共有に貢献する。
 「私は本と仕事上の知識だけで今のレベルになった」という人は上記対象外です。
・自分の知識を顧客、部下又は後輩(自分より知識が劣る人間)にどうすれば有効に伝えられるかの
 シミュレーションが出来る。
・自分の名を売る事が出来る。
・他色々

少なくとも「こんな事も知らねぇのか」的な発言は不特定多数の方が見るWEB上の発言としては
適していず
・あぁよくいるコミュニケーション出来ない技術バカ
・自分だけが知っていると誇示したいだけのお山の大将
と思われるだけです。
まぁ「それでも良い」と思われるのはご自由ですが


この会議室のシステムについて
あとここはパスワード入力画面もhttpなのですが、皆さんは気にならないのでしょうか?
また投稿回数により「ぬし」等ランキングされますが、2ちゃん的な挑発するような発言
(ただ単に「それはよくない」とか発言するだけでその理由も参照リンクも提示していない)
でもカウントされるので「ぬし」とかは当てにならないなと思います。
発言・回答に対して評価できるシステムとなっていれば
上記のような2ちゃん的な発言も減ると考えて思いますが...
2ちゃんでも言葉使いはともかくまともな(なにがしかのヒントを添える)人はいらっしゃる
ので2ちゃんが悪いとかここの「ぬし」の人が全て悪いなどど言う気はさらさらありません。

長文失礼しました。
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2007-04-01 13:50
引用:

何故クライアント証明書をエクスポート不可にしなければいけないのかはクライアント証明書をダウンロード
した社員が会社を辞めた時、エクスポートしたものを盗んで悪さをされては困るという所から来ています。



ここに関して大きな認識違いを犯しているのでは?

そのために CRL (Certificate Revocation List) を管理する必要があると思います。
また同時に、証明書の有効期限をある程度短くする必要もありますね。

スキルアップ/キャリアアップ(JOB@IT)