Webであなたの夢が叶う!のHirokoです。
Webで数学、
RSA暗号とは?についてです。
RSA暗号(アール・エス・エー暗号)は、
マサチューセッツ工科大学(MIT)の研究者だった
・リベスト(Rivest)
・シャミール(Shamir)
・アドルマン(Adleman)
の三人によって開発された公開鍵暗号の変換方法です。
この三人の頭文字からRSA暗号と名付けられました。
では具体的にどんな暗号技術なのかというと・・・
昨日ご紹介した公開鍵暗号の手順をご覧ください。
↓ ↓ ↓
① 受信者は
公開している鍵「XXXX」で暗号化して
メッセージを送るように送信者に伝えます。
② 送信者は
受信者が指定した公開鍵「XXXX」で
メッセージ「5678」を暗号化、
メッセージ「5678」+鍵「XXXX」
=「YYYY」と暗号化して送ります。
③ 受信者は自分しか知らない秘密鍵「ZZZZ」で
復号化してメッセージ「5678」を受け取ります。
でしたね。
RSA暗号では、
平文を暗号化するとき、
暗号文を復号化するときに「素数」を使います。
素数は、
このブログに何度も登場してきていますが、
ちょっとおさらいしておきましょう!
◆素数とは・・・
1と自分自身以外には約数を持たない数のこと。
2,3,5,7,11,13,17,19,
23,29,31,37,41,43,47,
53,59,61,67,71,73,79,
83,89,97・・・
いま、
素数から任意の2数を選んで、その数をかけあわせます。
そのかけ合わせた数を上限とするn進数を利用して
暗号化・復号化に応用していきます。
例えば・・・
親愛なるNさんの誕生日3月11日から
素数:3と11を選びます。
3 × 11 = 33
になり、
33進数を利用します。
33進数で使う数字は0から32までですね。
33までいったら桁上がりして0に戻りますので・・・
これは10進数と同じ要領です。
では先に進めましょう!
33進数の数:0から32までを利用して、
「べき乗」にした数表を作ってみましょう!
となります。
ご覧のように11乗と21乗の数字は
もとの数に戻っていて、
その数までの間の数は繰り返されています。
この表を使って暗号化・復号化していきますね。
つづきはまた明日!
今日も最後まで読んでいただいてありがとうございました。

