パーソナルツール
現在位置: ホーム 授業 インターネットと情報科学 暗号通信

暗号通信

暗号の歴史

  • 参考書:「暗号解読(上・下)」サイモン・シン 著 青木薫 訳(新潮文庫)
  • ウィキペディア 暗号史

スキュタレー暗号

  • スキュタレー=木製の巻き軸
  • ひも状の革を巻き付けて、文書を書く
  • 革ひもをほどいて(ベルトのようにみせかけて)伝令が運ぶ
  • 受け取った革ひもをスキュタレーに巻き付けて読む
  • 紀元前5世紀、スパルタ(対ペルシャ)

スキュタレー

転置式暗号

  • 文書に書いた文字の順番を変える
  • スキュタレー暗号
  • レールフェンス暗号
    • 上段、下段に交互に文字を書く

解いてみよう

  • しおろてやがぎみさつんいかたら
    • しろやぎさんからおてがみついた
  • くさよたろんまべやたずたぎらに
  • わみいうびつたみのみきかしはみのをしのかみひなむ

シーザー暗号

  • 『ガリア戦記』
  • ABCDEF... -> DEFGHI...
  • 敵に包囲されて降伏寸前の味方に、伝令を送った
  • 槍に手紙を付けて投げ込んだ
  • 「すぐに行くからがんばれ!」
    • (こんなものでも暗号にするんですね)

換字式暗号

  • 平文の各文字を別の文字で置き換える
  • シーザー暗号は 3文字ずらす
  • ずらす数を変えれば 25通りの暗号ができる
  • どのように置き換えてもよければ 26! 通り
    • 26! = 403,291,461,126,605,635,584,000,000

解いてみよう

  • (以下はシーザー暗号 ずらした文字数は 6以下)
  • ERBV EH DPELWLRXV
    • BOYS BE AMBITIOUS (3)
  • YNRJ NX RTSJD
    (5)

暗号の方式と鍵

  • スキュタレー暗号 ... 何文字で一周するスキュタレーを使うか
  • シーザー暗号 ... 何文字ずらすか
  • シーザー暗号に 限らない 換字式暗号なら、鍵が 400x1兆x1兆 (四百しorじょ:禾扁に予)
  • 総当たりでは解けない

換字式暗号の鍵

  • 鍵の作り方(例)
  • "Yes we can" -> YESWCAN + N の次から
  • ABCDEFGHIJKLMNOPQRSTUVWXYZ =>
  • YESWCANOPQRTUVXZBDFGHIJKLM

暗号化の例

  • There is not a black America and a white America, there's the United States of America
  • =>
  • GOCDC PF VXG Y ETYSR YUCDPSY YVW Y JOPGC YUCDPSY GOCDCF GOC HVPGCW FGYGCF XA YUCDPSY

換字式暗号を解く

  • イスラム帝国アッバース朝(750-1258)
  • 暗号通信を多用
  • 暗号解読技術も発達
  • 400x1兆x1兆 もの総当たりは不可能
  • 文字の出現頻度を調べる
    • ETAOIN SHRDLU

英語の文字出現頻度

もっと難しい暗号へ

  • ルイ14世の大暗号
  • ヴィジュネル暗号
  • エニグマ

ルイ14世の大暗号

  • ロシニョール父子 (1600年代)
  • 字を単位にではなく、音節(対字)を単位にする
  • 字に換えるのでなく、数字(3桁)に換える
    • 124-22-125-46-345 => les en-ne-mi-s (敵)
  • バズリー (1890年頃) 解読に成功
    • 「鉄仮面」の秘密(?)

ヴィジュネル暗号

  • ヴィジュネル方陣

ヴィジュネル暗号の例

  • 鍵を KING とすると
  • KIN GK ING KINGKIN GK
  • but he has nothing on (でも、なんにも着てないよ)
  • LCG NO PNY XWGNSVT UX

ヴィジュネル暗号の解読法

  • チャールズ・バベッジ
    • 「階差機関」を設計、「解析機関」を構想(今日の計算機の原型)
  • 繰り返し現れる文字列に注目
  • その文字数から「鍵」の長さを推定
  • 鍵の文字毎に暗号文中の文字の頻度分布をみる

教訓

  • 暗号文が長い (長い間同じ鍵を使う) と解読しやすい
  • 鍵を長く/乱雑な文字列にすると解読できない
    • が、実用的でない
  • -> 暗号を作る機械の発明

エニグマ

  • 第二次世界大戦 (1939-1945) ドイツ軍で使用

エニグマの機構

  • スイッチ -> ローター(換字盤) -> リフレクター -> ローター -> ランプ(文字表示)
  • ローターは 1文字毎に回転
  • リフレクターはプラグボード(配線を変えられる)
  • ローターの種類・初期位置、プラグボードの配線が鍵

エニグマの機構(図)

使い方 (ドイツ軍の)

  • 日ごとに鍵を決めておく (日鍵)
  • メッセージ毎にローターの初期位置を変える (メッセージ鍵)
  • メッセージ鍵を日鍵を使って送る
  • 鍵が合っていることを確かめる ... 最初に 3文字x2回の繰り返し

エニグマ暗号の解読

  • 換字式 400x兆x兆
  • ローター(3個)がわかれば
    • ローターの順 = 3! = 6
    • 各ローターの初期位置の組み合わせ = 26x26x26 =17576

エニグマ暗号の解読

  • マリヤン・レイェフスキ (ポーランド)
  • アラン・チューリング (イギリス)
  • 鍵を見つけるための機械 (計算機) Bombe(a)
  • スパイを泳がせニセ情報
  • コードブックを奪取 (Uボート を捕獲)

現代の暗号

  • 電子計算機が誰でも使える
  • 共通鍵暗号と公開鍵暗号
  • 文字種を多くする
  • 26 文字 -> 鍵の数は最大 400x兆x兆 個
    • 鍵の決め方で制限される
  • DES 暗号 = 56bit = 8文字分
  • 256 = 72,057,594,037,927,936 種類の文字 -> 鍵の最大数はその階乗
    • 実際には印字できる文字(94)が8文字 = 948 = 6,095,689,385,410,816

暗号の歴史のまとめ

  • 暗号には「方式」と「鍵」がある
  • 使える鍵の数が多いと、破られにくい
  • 同じ鍵を使い続けると、破られやすくなる
    • One Time Pad (乱数で生成) を使う方法もある
  • 暗号化、解読の道具の進化
  • 数学(統計)-> 機械 -> 計算機 共通鍵暗号と公開鍵暗号
  • 共通鍵は、鍵の持ち運びに問題
ドキュメントアクション