スポンサーリンク

数学が苦手な人向けの,「暗号理論」の入門テキスト・PDF。 RSA暗号から認証・署名などのセキュリティ技術


数学が苦手な人が暗号技術を学ぶための資料。

セキュリティ技術に詳しくなりたいが,数式はあまり使いたくない・・・

という場合に役立つ。


独学に使える物として,下記の2種類を集めた。

  • (1)数式をあまり使わず暗号理論を説明。
    • 要点:共通鍵暗号,公開鍵暗号,RSA暗号の仕組み
  • (2)暗号理論に必要な数学(=初等整数論)を,やさしく学ぶ。
    • 整数の合同式,素因数分解の難しさ,フェルマーの小定理

使いやすいテキストだけに絞ってある。

※もし数学が得意なら,こちらのノートを使うとよい。

(1)数式をあまり使わずに暗号理論を説明

暗号理論を,細かい数式をほとんど使わずに,文章を中心に学ぶ。


Webページとして閲覧できるもの:

ライブラリ|SBINS Developer Center
http://dev.sbins.co.jp/cryptography/0...

  • 暗号技術の基礎知識。図解が多く見やすい。
  • 内容:共通鍵暗号と公開鍵暗号,ハイブリッド暗号・認証・鍵共有,暗号の攻撃方法と実装の失敗例,最近の動向。


サルにもわかるRSA暗号: はじめに
http://www.maitou.gr.jp/rsa/

  • 内容:暗号の用途,公開鍵暗号とRSA,素因数分解の難しさと暗号解読。
  • 紹介文:
    • 「この読み物は、現代暗号を RSA 暗号を中心に分かりやすく解説したものです。 詳しい話は実際に本文を読んでもらうとして、 現在までの知識と、 ここまでの説明をもって興味が湧いた方は是非お読みになってみてください。
    • 読者対象は中高生、および純文系の大学生、 そして専門書では RSA 暗号を理解できなかった理系の大学生です。 決して専門書で理解できる方や、 既に理解している方のための読み物ではありません。 」
  • 流れ:RSA暗号の重要なミソ。公開鍵は大きな素数の積PQであり,素因数分解に成功すれば復号用の秘密鍵を作れてしまう。積P×Q = 10 が分かれば、誰でも素因数分解 P=2, Q=5 って分かっちゃうんじゃじゃないの…?→素因数分解は,桁数に対して指数関数的に難しくなるので実行が困難。よって公開鍵がわかっても素因数分解して秘密鍵を得るのは無理。


セキュリティコラム|シーアイシーシステムズ
http://www.cics.co.jp/column/

  • 暗号の基本知識を扱ったコラム。数式は使わないが,図がよく出てくる。
  • 内容:暗号化の弱点,鍵,暗号アルゴリズム


RSA暗号体験入門 (目次)
http://www.cybersyndrome.net/rsa/inde...

  • 4ページから構成されている。細かい数式は使わない。数式は結果のみ。
  • 紹介文:「主にRSA暗号あるいは公開鍵暗号について,入門者・初心者レベルの方を対象に解説しています。 しかも,RSA暗号についてより感覚的に理解しやすくするために,実際にRSAによって暗号化や復号ができる プログラム(Javaアプレット)を用意しています。 必要に応じて暗号化を体験しながら本文を読み進めると, 感覚的にも理論的にもRSA暗号を理解できるはずです。 これを読破すれば,RSA暗号の概要から詳細な仕組みまでを一通り知ることができるでしょう。」
  • 「平文をM,暗号文をCとすると,M<nであれば,C=M^e mod n, M=C^d mod n。RSA暗号の原理は,これらの関係式が必ず成り立つという数学的特性を利用しています。 」


PDFとして閲覧できるもの:

暗号入門
http://hp.vector.co.jp/authors/VA0239...

  • 16ページ。
  • 暗号・認証・署名についての解説と,実装例。


情報セキュリティ (平成24年度前期)
http://www.wakayama-u.ac.jp/~takehiko...

  • 和歌山大の講義スライド。

 第1回:2012年4月13日(金)  はじめに
 第2回:2012年4月20日(金)  ユーザ認証
 第3回:2012年4月27日(金)  暗号系
 第4回:2012年5月11日(金)  秘密鍵暗号系
 第5回:2012年5月18日(金)  公開鍵暗号系(1)
 第6回:2012年5月25日(金)  公開鍵暗号系(2)
 第7回:2012年6月1日(金)  メッセージ認証
 第8回:2012年6月8日(金)  鍵管理・PKI
 第9回:2012年6月15日(金)  信頼される第三者を用いないセキュリティ
 第10回:2012年6月22日(金)  セキュリティソフトウェア
 第11回:2012年6月29日(金)  サーバサイドセキュリティ
 第12回:2012年7月6日(金)  セキュリティ基礎
 第13回:2012年7月13日(金)  暗号プロトコル
 第14回:2012年7月20日(金)  組織のセキュリティ


暗号技術の数理としくみ・メールでじゃんけん?する方法
http://www.quest.is.uec.ac.jp/ogawa/i...

  • 44ページあるスライド。電通大が調布市で行なった公開講座の資料。
  • 内容:暗号の歴史,共通鍵暗号,公開鍵暗号,ビットコミットメント。


暗号入門
http://hirose.sendai-nct.ac.jp/~kaoru...

  • 仙台電波工業高専,わずか9ページ。ほんの少ししか数式や記号を使っていない。
  • 内容:共有鍵暗号,公開鍵暗号,認証


動画で学ぶ:

暗号理論のわかりやすい初歩的な入門の動画
http://computer-technology.hateblo.jp/entry/20140519/p3

(2)暗号理論に必要な数学

暗号理論で必要になる数学(=初等整数論)を,かみくだいて学べる。


Webページとして閲覧できるもの:

プログラムの背景
http://www2.cc.niigata-u.ac.jp/~takeu...

  • 新潟大の資料。「初等整数論」の話題
  • 内容:ユークリッドの互除法,拡張ユークリッドの互除法,エラトステネスの篩,整数の合同と1次合同式,中国の剰余定理,フェルマーの小定理。

フェルマーの小定理からRSA暗号の仕組みまでを,平易な言葉で説明:

フェルマーの小定理 〜さんすう・数学のお勉強〜
http://www3.ocn.ne.jp/~fukiyo/math-ob...


ユークリッドの互除法 〜さんすう・数学のお勉強〜
http://www3.ocn.ne.jp/~fukiyo/math-ob...


 剰余 〜さんすう・数学のお勉強〜
http://www3.ocn.ne.jp/~fukiyo/math-ob...


公開鍵と秘密鍵 〜さんすう・数学のお勉強〜
http://www3.ocn.ne.jp/~fukiyo/math-ob...


RSA暗号 〜さんすう・数学のお勉強〜
http://www3.ocn.ne.jp/~fukiyo/math-ob...


C++によるサンプルコード付きの解説:

暗号化アルゴリズム (1) 19世紀より前の暗号
http://fussy.web.fc2.com/algo/algo9-1...


暗号化アルゴリズム (2) 暗号機の発達
http://fussy.web.fc2.com/algo/algo9-2...


暗号化アルゴリズム (3) 公開鍵暗号
http://fussy.web.fc2.com/algo/algo9-3...


暗号化アルゴリズム (4) エルガマル暗号
http://fussy.web.fc2.com/algo/cipher4...


PDF形式の簡易テキスト:

素数と暗号・初等整数論とRSA暗号系入門
http://www.math.tohoku.ac.jp/~atsushi...

  • 最初の「プロローグ」だけ読むとよい。


RSA暗号の仕組み
http://www-math.ias.tokushima-u.ac.jp...

  • 2ページしかない。変数の選び方がよくまとまっている。


関連する記事:

量子コンピュータ・量子情報の講義ノートPDF。 量子計算や量子通信の理論を,基礎から応用まで勉強するための教科書や資料
http://language-and-engineering.hatenablog.jp/entry/20140607/QuantumComputati...


大学の数学で,微積分(解析学)の講義ノートPDF。演習問題と解答付き(大学1年で学ぶ,1変数と多変数の微分積分学のオンライン教科書)
http://language-and-engineering.hatenablog.jp/entry/20140509/UniversityCalcul...


「群論入門」や代数学の講義ノートPDFまとめ。群・環・体の基礎から物理への応用までのオンライン教科書
http://language-and-engineering.hatenablog.jp/entry/20140505/AlgebraAndGroupT...