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

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

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

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

戻る