- - PR -
秘密分散の扱い
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-02-03 13:02
返信が遅くなって申し訳ありません。
また再度の長文、お許しください。 今回も暗号とはあくまでも一般的な鍵暗号をさしているという前提で話させていただきます。 まず丘SEさんの書き込みに返信させていただきますね。
まず秘密分散法をあまり詳しく知らない人への簡単な説明として、シャミア(Shamir)とはRSAという企業の頭文字にもなっている暗号理論の研究者のことで、この人が秘密分散法の論文を最初に発表しています。 ちなみに先日の説明ではShamirのものをかいつまんで説明しましたが、当方の研究しているのはその延長線上のものではありません。 説明するには方程式の話はわかりやすいかと思いましたので、そのように説明させていただきました。 で、本題ですが・・・(最初の方は丘SEさんの意図していることとは違い、少し揚げ足を取るような脱線をしてしまってますがちょっと我慢してください)。 たしかにデジタルの世界では、全ての情報は絶対的計算量で求めることが可能です。 これはアナログの世界とは根本的に異なる点です(アナログでは全ての情報が無限に発散します)。 極端に言えば、デジタルの世界では情報が漏洩している、いないにかかわらず、どのような情報でも必ず総当りで求めることが可能です。 例えば原本の情報が「おはよう」という情報だとすれば、これは4bytes(32bits)の情報です。 約43億回ビットの総当りをすることで、必ず32bitsの情報は求めることが可能です。 いまの計算機の性能からすれば、この程度の計算はたいした時間はかかりません。 ただしこの場合、その計算の過程では「おやすみ」も「ふじさん」も求められてしまい、もう少し情報が無いと原本が何であったかを特定することは出来ませんが、情報量的にゼロの状態からでも、理論的にはどのようなデジタル情報も求めることが可能です。 これは丘SEさんもおっしゃる通り、あくまでも計算機というものの実装の問題と言えると思います。 では、上記のようなことを論じる意味はあるのでしょうか。 通常暗号化されたデータを総当りで解読するという意味は、 漏洩したデータを利用して解読にかかる総当りの計算量<情報量ゼロから原本を総当りで求める計算量 という不等式が成り立つので、暗号は解読できるとなるのだと思います。 通常の鍵暗号で、鍵が256bitsのデータであった場合、「漏洩したデータを利用して解読にかかる総当りの計算量」は256bitsの総当りの計算量になり、原本の情報が32bytes(256bits)以上の場合には、 漏洩したデータを利用して解読にかかる総当りの計算量<情報量ゼロから原本を総当りで求める計算量 が成り立ちます。 しかし、もし 漏洩したデータを利用して解読にかかる総当りの計算量>=情報量ゼロから原本を総当りで求める計算量 であったなら、それはその暗号化された情報からは、情報は漏洩しないといえるということではないのでしょうか。 言い換えれば、総当りで情報を求めることは出来ない(意味が無い)と言えるのではないでしょうか。 この場合でも総当りで解読できると言うのであれば、デジタルの世界で情報の暗号化を論じることは無意味になるのではないでしょうか。 パナーム暗号を理想的に実装した(できた)場合でも、デジタルデータである以上この本質からは逃れることが出来ません。 そういった意味では量子暗号であっても、その呪縛からは解き放たれません(どんなに盗聴が難しくても、総当りで情報を求めるという視点から見れば、それは本質的には変わらないでしょう)。 ある意味BB86などの理論は、通常の鍵暗号と強度はさほど変わらないと言えるのではないでしょうか? 盗聴を検知できるという利点は別に考えてですが・・・。 エンタングルメントを用いたものに関しては、当方の知識ではあれこれ述べることはしませんが、それであってもこの呪縛からは解き放たれないことに違いはありませんよね? なぜならデジタルの世界では、どのような情報であってもゼロから確率的に求めることが可能だからです。 でもそれを総当りで求めることが可能だと言うのは、意味がないと思います。 さてここからが本題ですが(能書きが長くて申し訳ありませんが)・・・。 秘密分散法が完全秘匿を実現すると言う意味の一つは、総当りという攻撃に対してデジタルの世界で 漏洩したデータを利用して解読にかかる総当りの計算量>=情報量ゼロから原本を総当りで求める計算量 を実現しているからです。 秘密分散法では当然複数のシェア(分散情報)が生成されます。 ここで複数のシェアが生成されたとして、またこれらのサイズが元の情報と同サイズだったとした場合、 漏洩したデータを利用して解読にかかる総当りの計算量>=情報量ゼロから原本を総当りで求める計算量 が成り立ちます。 当然シェアを3個生成した場合(3個に分散した場合)は、1つのシェアを入手しても、そのシェアのサイズと同じサイズの情報を2個総当りで求めなくてはなりません(あくまでもここでは便宜的にシェアのサイズが全て同じになると仮定します)。 原本、シェアのサイズがそれぞれ4bytes(32bits)だとすると、その計算量は 43億の2乗回の総当りの計算量(漏洩したデータを利用して解読にかかる総当りの計算量)>43億回の総当りの計算量(情報量ゼロから原本を総当りで求める計算量) となり、圧倒的に秘密分散法の漏洩データから原本情報を求める総当り計算量が肥大することがおわかりいただけると思います(単純に指数関数的に計算量が増大します)。 さらに10個に分散、100個に分散とどこまでも分散した場合、情報暗号的に無限に計算量を発散させることも可能になります。 秘密分散法では 漏洩したデータを利用して解読にかかる総当りの計算量>=情報量ゼロから原本を総当りで求める計算量 を実現できています。 だからこそ情報を完全秘匿できるのであり、ここは暗号化とは絶対的に異なるところです。 上記あくまでも一つの見解ですが、通常暗号を解読できる、できないと論じているのは、暗黙的にこのような前提があるはずです。 でないと、解読云々を議論しても意味がなくなってしまいます。 なので、このような前提に立ってお話させていただければ、デジタルの世界であっても、秘密分散法は完全秘匿を実現します。 なお今までの話はあくまでもデジタル上の総当りという観点からのみ説明させて頂いておりますが、先日説明したとおり理論的にも暗号(読みにくくする)と秘密分散法(読めなくする)とは大きく異なります。 理論的には総当りできないから完全秘匿だと言っているわけではありませんので、誤解のないようにお願いします。
これは当然丘SEさんのおっしゃるとおりで、暗号化を「していても」個人情報だと思います。 ただ問題は元の情報が何であったかではなく、ここで議論されているのはあくまでも漏洩した情報が何であったかだと思います。 そうでなければ、情報漏洩に関して議論する意味はなくなるのではないでしょうか? 個人情報保護法での個人情報の定義は「この法律において「個人情報」とは、生存する個人に関する情報であって、当該情報に含まれる氏名、生年月日その他の記述等により特定の個人を識別することができるもの(他の情報と容易に照合することができ、それにより特定の個人を識別することができることとなるものを含む。)をいう。(第2条第1項)」となっています。 なので個人情報を暗号化して管理していても、暗号は解読できるので、それは「特定の個人を識別することができる」個人情報であるといえます。 しかし個人情報が秘密分散法で分散して管理されており、その分散データの一つが漏洩した場合には、その漏洩した分散情報からだけでは「特定の個人を識別」できたり、「他の情報と容易に照合」することはできないので、一つ一つの分散データはこの法が定義する個人情報にはあたらないと言うことになるのではないでしょうか。 つまり原本は確かに個人情報ですが、そこから生成された分散データのそれぞれは個人情報の定義には当てはならないと言うことです。 弁護士様がどこまで秘密分散法の理論に精通して、どこまでの認識で示した見解かは図りかねますが、当方が以前の書き込みで説明した「個人情報の定義から外れる」の意味はこのような観点から述べています。 ちなみに誤解しないで頂きたいのは、秘密分散法が暗号や量子暗号などより優れていると言っているわけではありません。 そもそもシャミアが秘密分散法を考えたのは、鍵暗号の鍵の保管をどうするかという問題からです。 鍵暗号の場合、暗号化された情報と、鍵というデータが生成されますが、この鍵がものすごく重要な情報になってしまいます。 これをまた暗号化しても、また鍵が生成され・・・と、いつまで経ってもイタチごっこになってしまう矛盾を解決するために考え出された理論です。 なので秘密分散法自体は、情報の安全性を高める技術としても利用できますが、暗号技術を補完するためにも利用できます。 どちらが優れているという議論ではなく、安全を最優先に考えて柔軟な取り組みが一番大事だと思います。 個人的な意見では秘密分散法とエンタングルメントを利用した量子暗号を絡められたら面白いと思っています。
るぱんさん、つらつらと読み難い文章を書いてしまって申し訳ありません。 @IT内では、C4tの方が解説してくれています。 http://www.atmarkit.co.jp/fsecurity/special/53tsss/tsss.html 解説としては、閾値といったことまでかかれていますので参考にしてください。 またこの解説でも触れられていますが、個人情報保護法などのほかにも、今後ISMSなどの監査でも秘密分散法は注目されていくかもしれませんね。 | ||||||||||||
|
投稿日時: 2005-02-03 22:52
加納、というものです。
私も興味が出てきた(でも詳しくは知らない)のですが。。
んー、やはり無理があると思います。 漏洩した情報「群」がひとつであるという関連が「事実上」存在するかぎり 「漏洩したデータ」が個人情報であることに変わりはないと思います。 その秘密分散後の情報「群」の関連が事実上存在しないのであれば、 その情報、一つ一つを単なるデータとして扱えるでしょうけど。
なんか法律や監査みたいのだけで需要が生まれるというのもなんか 不思議なような。。そういう時代になるのかな。 | ||||||||||||
|
投稿日時: 2005-02-04 02:27
いえいえ、こちらこそいろいろ考えさせられるので勉強になります。
どれが暗号文でどれを鍵に対応するかはいまいち分かりませんが、 純粋な秘密分散(Shamirの方式)は、平文と分割情報のエントロピーが変らないので 確かに情報理論的安全性とか情報量的安全性とか言われるものだと思います。 ただ、それでは復元されたものが正しいものかでさえ分からなくなってしまうので やはり何かしらチェックサムのような確認する手段が必要になってきませんか? それを利用すれば平文は唯一に求まりますので、微々たる差ですが上式は成り立たないと思っています。 そういう意味で計算量的安全性だと思っていたんですが、認識が間違っているのでしょうか? 繰り返しになりますが、あくまで実装を考えた話で、です。 (私は理論的な話をいくらしても実現できなければ意味がないというスタンスです) 何かスレッド本来の趣旨とはズレた議論の方に注力してしまいました。(w で、個人情報かどうかの話です。 私は個人情報だと思っていると言いましたが、やはり法的な専門家ではないので、 本当にそう(裁判で勝てる)か?と言われると保障はできません。 結局作成側がきちんと定義していないのが原因なんですよね。 これも判例がでるまで保留になるんでしょうか。 ただ、自分がユーザー側になった時の事を考えると 企業に「秘密分散をしていたから、漏洩しちゃったけど文句ないでしょ?」 と言われると腑に落ちないとは思いますので個人情報であって欲しいと思うんですが...
法律というより、昔に比べ「情報」の持つ価値や影響が大きくなってきて 少々のコストをかけてでも守らなければいけなくなったという事ではないでしょうか。 |