アルゴリズム論特論(塩田) 2012年度教材

今年度は暗号アルゴリズムとその計算量について講義します。

  • 第1回 序、四則演算の計算量 (4.12)
  • 第2回 mod 2 の計算(2元体) (4.19)
  • 第3回 mod 3 の計算(3元体) (4.26)
  • 第4回 mod n の計算 (5.10)
  • 第5回 mod n の除法と最大公約数 (5.17)
  • 第6回 完全数、メルセンヌ素数、フェルマの小定理 (5.24)
  • 第7回 ユークリッドのアルゴリズム (5.31)
  • 第8回 素数判定、高速べき乗法 (6.7)
  • 第9回 シーザー暗号、換字式暗号と置換式暗号、共通鍵暗号と公開鍵暗号 (6.14)
  • 第10回 法べき乗暗号、RSA 暗号 (6.21)
  • 第11回 RSA 暗号の攻撃法 (6.28)
  • 第12回 離散対数問題 (7.5)
  • 第13回 Diffie-Hellman 鍵交換システム (7.12)
  • 第14回 中国剰余アルゴリズム、Pohlig-Hellman 法による離散対数計算 (7.19)
Python のサンプルプログラムは IDLE または cygwin のコマンドラインで実行することを 想定して書いてあります(コードはシフトJIS)ので、 各自の環境に合わせて適宜変更を加えてください。
  • 計算機システムの Mac では
    • 1行目を #!/usr/bin/env python に書き換え、
    • 2行目を #-*- coding: utf-8 -*- に書き換え、
    • コードを UTF-8 に変換してください。

  • ダブルクリックで起動させて使いたい人は、 実行後ウィンドウが閉じてしまうので、 プログラムの最後に
            fin = stdin.readline()
    という行を付け加えてください。 Enter キーを押すまでウィンドウが閉じなくなります。

戻る