Webで数学!RSA暗号とは? | Webであなたの夢が叶う!

Webであなたの夢が叶う!

Webを活用して一歩ずつ「夢」に近づきませんか?
みなさんのサポートブログです。    

こんにちは。
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乗と2
1乗の数字は
もとの数に戻っていて、
その数までの間の数は繰り返されています。

この表を使って
暗号化・復号化していきますね。

つづきはまた明日!


今日も最後まで読んでいただいてありがとうございました。