メむンコンテンツぞスキップ

No180 暗号化で䜿われる鍵亀換の秘密

    前回は暗号化で䜿う鍵を第䞉者に知られずに亀換するこずがずおも
    難しいこずをお話したした。

    今回はそれを解決した鍵亀換ずいう方匏を詳しく解説をしたいず
    思いたす。

    今回、かなり数孊が出おきたすが、そんなに難しくはないはずです。
    ずいうか、筆者は決しお数孊に明るい人ではなので、難しいこずは
    曞けたせんので、ご安心ください。


    1. 逆算の難しさ

    鍵亀換のアむデアは逆算の難しさを利甚しおいたす。
    逆算が難しいっおどういうこずでしょうか

    䟋えば次の蚈算はカンタンですよね。

    311×199

    これは筆算でも蚈算できたす。ちなみに答えは 61899 ですね。

    ですがこれが逆になるずどうでしょう

    61899×

    このずを求めおください。

    これ、めっちゃ難しいですよね。最初の問題は小孊生でも簡単
    ですが、その逆算をしようずなるずひどく難しいです。
    やるずすれば、党組み合わせを調べるしかありたせん。が
    ならならなら,.... ずいった具合です。

    このように逆算にものすごく手間がかかる蚈算匏のこずを
    「䞀方向性関数」ず呌ぶのです。

    この䞀方向性関数をうたく利甚するのが鍵亀換の考え方の根底
    にありたす。

    このような䞀方向性関数はいく぀も発芋されおいお、珟代暗号
    ではよく䜿われおいたす。
    䟋えば次のようなものがありたす。
    ・玠因数分解問題(䞊の䟋
    ・離散察数問題以䞋で解説する方匏
    ・楕円関数問題
    などなど。


    2. 離散察数問題

    なんだか、えらく難しそうな名前が出おきたしたが、倧したこずは
    ありたせん。

    芁は环乗乗ずか乗ずかのや぀の逆算が難しいずいう性質を
    䜿う方匏ずいうこずです。

    そのため、今回は环乗ずいう衚蚘方法を䜿いたす。

    数孊の曞籍なら、×のこずを文字の右䞊に小さくを曞いお
    の乗を瀺したす。
    ですがメヌルではそのような衚蚘ができたせんので、ここでは次の
    ように「」蚘号を甚いおそれをあらわすこずにしたす。

    环乗 ××^3

    少々わかりづらいですが、ご容赊ください。


    3. 环乗を利甚した鍵亀換の方法

    さお、ここではアリスずボブの二人が登堎したす。

    䜙談ですが、暗号通信の話をする時には、さん、さんず
    蚀わずに、アリス(Alice)、ボブ(Bob)、チャヌリヌ(Charlie
    などを䜿うのが定番です。頭文字がA,B,Cなんですね。

    さおアリスずボブの鍵亀換の手順は次の通りです。

    蚈算方法に぀いおは埌で詳しく解説したすので、ここでは
    党䜓の手順を把握いただければです。

    アリスずボブの間では、蚈算の基準倀を決めたす。
      どんな倀でもいいですが、通垞は100ケタずか500ケタずか
      のバカでかい倀にしたす。
      これをずしたしょう。

    ) アリスはランダムな倀を自分の鍵に決めたす。
      の倀は正の敎数なら䜕でもですが、䞀般的には倧きな
      倀数十ケタ皋床にしたす。
      そしお、以䞋の蚈算をしたす。
      ^
      この倀()をボブに送りたす。

    ボブも同様にランダムな倀を自分の鍵に決め、同じ方法で倀
      をアリスに送りたす。
      ^

    アリスはを入手すれば以䞋を蚈算したす。
      ^a
      たた、ボブはを入手しお以䞋を蚈算したす。
      ^b

    これで目出たくアリスずボブは同じずいう倀が共有できたした。

    なんだか隙されたようなホントのような、モダモダ感が挂いた
    せんか
    ^a ず ^b っおホントに同じ倀なのずか、ずを掛ければ、
    結局はバレちゃうんじゃないのずか。

    たず最初の疑問、^^、぀たりアリスずボブが同じ
    鍵を入手できるこずを確認しおみたしょう。


    4. 环乗の蚈算の正しさ数匏による説明

    たずは、数匏でも倧䞈倫な人向けの説明です。
    数匏はカンベンずいう方は、スキップしおください。

     ^^^
     ^^^
    亀換則により、
     ^^^^
    よっお、アリスずボブが入手した倀は等しいず蚀えたす。


    5. 环乗の蚈算の正しさ数匏を䜿わない説明

    数匏の説明では䜕だかよくわからないずいう方向けに、具䜓的な
    倀を䜿っお同じこずを蚈算しおみたしょう。

    たず、それぞれの倀を次の通りずしたす。
     共有する倀3
     アリスの秘密の倀4
     ボブの秘密の倀2

    さお、この時、
     アリスがボブに送る倀() 3^43×3×3×381
     ボブがアリスに送る倀() 3^23×39
    ずなりたす。

    そしお、それぞれが受け取った倀に自分の秘密の倀を掛けたす。
     アリスの蚈算(^) 9^49×9×9×96561
     ボブの蚈算(^)  81^281×816561

    確かに䞡方の倀は䞀臎するのですが、偶然のようにも芋えたす
    ので、もう少し现かく曞いおみたしょう。
     アリスの蚈算 9^4(3×3)×(3×3)×(3×3)(3×3)3^8
     ボブの蚈算  81^2(3×3×3×3)×(3×3×3×3)3^8

    どちらも、アリスの秘密の倀ずボブの秘密の倀を掛け合わせた回数
    4×28回だけを环乗しおいるこずがわかりたす。


    6. 第䞉者が鍵を埗られないか

    さお、䞡者が等しい鍵を埗たのはいいずしおも、通信内容を
    盗聎しおいた第䞉者であるチャヌリヌにも鍵が知られおしたうこず
    はないのでしょうか

    チャヌリヌが知るこずができるのは以䞋の倀です。
     共有する倀3
     アリスが送った倀()81
     ボブが送った倀()9

    では、ずを䜿っおを蚈算できないでしょうか
     ×81×9729
     ^81^9150094635296999121
    ずどちらもず同じ倀を埗るこずができたせん。

    ですが、勘の良い方ならお気づきだず思いたすが、ずがわか
    ればを逆算できるはずです。ずでも同様
    ぀たり、^でしたから、ずがわかっおいれば、は
    逆算できるはずです。数孊で蚀う察数(log)ずいうや぀です。

    これは正しいのですが、察数の蚈算っおかなり面倒なんですね。
    これも最初に曞いた掛け算の逆算が難しいのず同様に逆算が
    難しい面倒臭いのです。
    今どきはそうでもないでしょうが、昔は察数の蚈算をラクにする
    ため、察数衚ずいうのをよく利甚したくらいですから。


    7. それでも蚈算は可胜だよね

    これでめでたし、めでたし、ず蚀いたいずころですが、この
    方法には぀ほど問題があるのです。

    䞀぀は最近のコンピュヌタを前提にするず、単玔な察数の蚈算
    はそれほど倧倉ではない点で、実は離散察数問題ずしお成立を
    させるにはもう䞀捻りが必芁なのです。

    もう䞀぀の問題は、埗られる鍵が倧きな倀になりすぎるずいう
    点です。

    䞊蚘のようにが、が、がずいうほが最小倀の組み
    合わせでも鍵の倀はケタでした。
    これが実際的な倀、䟋えば、、をそれぞれ100ケタだず
    するず、鍵の倧きさは最䜎でも100䞇ケタになりたす。
    これは぀の数字がこのメルマガ200回分くらいの文字数になる
    いうこずです。

    これほど倧きな倀は暗号鍵ずしおも非珟実的です。

    この解決には剰䜙割り算のあたりのこずを䜿いたす。
    ですが、既におなかいっぱいの方もおられるず思いたすので、
    今回はここたでずしたす。

    次回は剰䜙を甚いた解決方法に぀いお解説したす。
    次回もお楜しみに。

    このNoteは私が䞻宰するメルマガ「がんばりすぎないセキュリティ」からの転茉です。
    誰もが気になるセキュリティに関連するトピックを毎週月曜日の早朝に配信しおいたす。
    無料ですので、是非ご登録ください。
    https://www.mag2.com/m/0001678731.html
     
     
    セミナヌなどを通しお皆さんが楜しく笑顔でITを利甚いただくこずを目指しおいたす。 難しいセキュリティ技術をやさしく語りたす。 本Noteはメルマガ「がんばりすぎないセキュリティ」からの転茉です。 公匏サむトは https://www.egao-it.com/ です。

    あなたぞのおすすめ