Lチカ開発ブログ

https://l-chika.com/の開発ブログ

「暗号技術入門 第3版 秘密の国のアリス」を読んで

既にいろんなブログでレビューがあるので今更だけど、最近読んだので自分なりの感じた点をまとめる。

暗号技術入門 第3版 秘密の国のアリス

暗号技術入門 第3版 秘密の国のアリス

読んだきっかけ

本書を読もうと思ったのはNginxやELBでのSSL関連の設定をしている時に、そういった技術体系が理解したくなった。 そこで本書の中にある「SSL/TLS セキュアな通信のために」という章があり、そこだけも読んでみようと思った。 しかし、SSL/TLSをしっかりと理解するには本書の前半にあるそれを支える技術を理解しないといけない。 ただ本書は理解しやすく、最初のきっかけを忘れて読み進める事ができた。

概要

暗号技術の全般的な知識を分かり易く解説。 アリスやボブといった人物を例にした各章の説明・クイズが非常にわかりやすい。

どんな人向け

本書には、

  • 暗号全般に興味がある人
  • 公開鍵暗号やデジタル署名など、暗号技術の仕組みを理解したいと思っている人
  • セキュリティに興味がる人

とあるが、 暗号化技術を全般を体系的に理解でき、プログラマーであれば一度は目を通してみても良いと思う良書。

以下、ザックリとメモ書き程度に。

第Ⅰ部.暗号

P13.暗号学者の道具箱

セキュリティに対する脅威 脅かされる特性 防衛のための暗号技術
盗聴 機密性 対称暗号・公開鍵暗号
改竄 正真性 一方向ハッシュ関数・メッセージ認証コード・デジタル署名
なりすまし 認証 メッセージ認証コード・デジタル署名
否認 否認不可能性 デジタル署名

それぞれの技術がどういった役割があるかを整理されており、その中身がしっかりと本書の中で説明されている。

P15.暗号とセキュリティの常識

  • 秘密の暗号アルゴリズムを使うな
  • 弱い暗号は暗号化しないよりも危険である
  • どんな暗号もいつかは解読される
  • 暗号はセキュリティのほんの一部である

これが本書の中で繰り返し言われる事で、本当に納得した。

そして、第Ⅰ部では

  • シーザー暗号から始まる暗号の歴史
  • ブロック暗号化の処理フローをわかりやすく解説

などがあり読み物としても面白く、数学の知識がなくても理解できる説明。

第Ⅱ部.認証

普段何気なく利用している 一方向ハッシュ関数

MD4,MD5SHA-1,SHA-2の説明や、SHA-3の選定プロセスは興味深かった。

そして どの一方向ハッシュ関数を使えばよいか といった結論まであり大変勉強になった。

第Ⅲ部.鍵・乱数・応用技術

  • SSL/TLS・・・Webアプリケーションを開発する人間であれば、この章はちゃんと理解しておいた方が良いと思った。
  • ビットコイン・・・簡単ではあるば、ビットコインとその暗号化技術についても触れられている。

まとめ

ざっと読んだけど、また読み返したくなる机の横にあって良いようなそんな本。

本書で紹介された

暗号の秘密とウソ

暗号の秘密とウソ