Download presentation
Presentation is loading. Please wait.
1
暗号技術・セキュリティ 情報工学科 04A1004 石川 真悟
2
はじめに インターネットが普及した現在、情報の盗聴、情報の改 竄(かいざん)、なりすましなどのネット犯罪が多発して いる。
このような犯罪から情報を守るための技術として暗号技 術が重要視されるようになった。 そこで、暗号技術について研究し簡単なJAVAプログラ ムを作成する。 具体的にはテキストファイルを読み込み暗号化する。
3
セキュリティの脅威と暗号技術の関係 セキュリティの脅威 特性 暗号技術 暗号化方式 情報を読むことが できないようにする ための暗号技術
対称鍵暗号 (共通鍵暗号) 情報の盗み見 (盗聴) 機密性 公開鍵暗号 情報が改竄されて いないことを確認す るための暗号技術 情報の破壊 (改竄) 一方向 ハッシュ関数 正真性 完全性 電子署名 情報を送った相手 を確認するための 暗号技術 他人のふり (なりすまし) 信頼性
4
RSAの暗号化処理 (公開鍵暗号でもっとも普及している)
平文の値を「E」回掛け合わせ、この結果の値を「N」で割り、余りの 値を求める。この計算結果が暗号文になる。「E」と「N」は公開鍵の 値になる。 暗号文=平文 mod N E 例)平文12、E=5、N=221 暗号文=12 mod 221 暗号文=207 平文 公開鍵 5 E N 暗号化処理 暗号文=平文 mod N E 暗号化処理そのものは、 とてもシンプルだが、 秘密鍵の情報がわからない限り、 現実的な時間で解読するのは困難 暗号文
5
RSAの復号化処理 暗号文の値を「D」回掛け合わせ、この結果の値を「N」で割り、余り の値を求める。この計算結果が平文になる。「D」と「N」は秘密鍵の 値になる。 平文=暗号文 mod N D 暗号文 例)暗号文207、D=29、N=221 平文=207 mod 221 平文=12 秘密鍵 29 D N 暗号化処理 平文=暗号文 mod N D 暗号化処理同様、 復号化処理もとてもシンプルなため、 秘密鍵が他の人の手に渡ると 解読は簡単にできてしまうため、 秘密鍵は厳重に管理する必要がある。 平文
6
公開鍵と秘密鍵は対(ペア)になっている必要があり、この 2つのキーのことをキーペアと呼ぶ。
キーペアの生成手順 公開鍵と秘密鍵は対(ペア)になっている必要があり、この 2つのキーのことをキーペアと呼ぶ。 PとQを使ってNを計算する N=PxQ L=lcm(P-1,Q-1) P-1とQ-1の最小公倍数 PとQを使ってLを計算する 1<E<L gcd(E,L)=1 EとLの最大公約数が1になるEを求める Lを使ってEを計算する EとLを使ってDを計算する E x D mod L =1 EとDを掛けmodLを計算した値が 1になるようにDを求める
7
キーペアの生成の具体例 まずPとQの2つの素数を用意(説明を簡単にするため小さい数字で行なう) P=13、Q=17
N=PxQ=13x17=221 L=lcm(P-1,Q-1)=lcm(13-1,17-1)=lcm(12,16) 12と16の最小公倍数は48なのでL=48 1<E<L god(E,L)=1 Gcd(E,48)=1 Eと48の最大公約数が1になるようなEを求める。 E=5,7,11,13,17,19,23,25,29,31,35,37,41,43,47 この中から素数を1つを選ぶ。ただし、25、35は素数ではないので外す。 仮に5を選ぶ。 ExD mod L=1 5xD mod 48=1 D=29
8
アルゴリズム 復号化アルゴリズム 暗号化アルゴリズム No Yes No Yes 数字入力 キー値入力 素数判定 暗号化txt読み込み
素数が2つ No 復号化処理 Yes キーペア生成 暗号化処理 暗号化txt
9
暗号化実行例
10
暗号化実行例
11
復号化実行例
12
復号化実行例
13
まとめ 簡単な暗号化のプログラムは作れることはわ かったが、問題点がいくつか見つかった。
素数の値やテキストが膨大などの場合、ごく わずかだが処理に多少の時間がかかること。 文字コードによっては正しく暗号化できないも のもあった。 今後の課題として処理効率の向上などがあげ られる。
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.