あすたぴのブログ

astap(あすたぴ)のブログ

暗号技術入門を読んだ

暗号化周りの知識が全くなくて、SSL/TLSやその他、周辺技術をを扱うにあたって非常に困った。言語ごとにライブラリがあるにはあるが、詳細はOpenSSLのドキュメントを読んだください。とか書いてあったりして、そもそもの知識がなければ何をどうすればいいかはわからなすぎた。実際、知らない人が使うものではないのだと思う。 というわけで、早急に知識が必要。だけど数学的なことはわからない。そこでこの本を読むことにした。

暗号技術入門 第3版

暗号技術入門 第3版

本書は数学的なことを控えめにし、暗号技術の概要をうまく説明してくれる本になっていた。ざっくりいうと以下の感じ

まぁ目次とほぼ同じなんだけど、単語を見ると大体聞いたことがあるのではないかと思う。何かしらのプログラムを書くときになんとなく使ってきたのではないだろうか。最後にSSL/TLSがでてくるがこの技術はそこまで説明した暗号技術をすべてといっていいほど使用している。その為、最初からしっかりと読み進めることで理解ができるようになっている。

これを読むまでは公開鍵暗号を至るところで自分で使用しておいて、その中身として何をしているかを理解していなかった。詳細な数学のことは読んでもわからないが、なぜこのアルゴリズムが解読困難なのか、なぜ公開鍵、秘密鍵に別れているのか、なぜ、秘密鍵で暗号化したものを公開鍵で復号化できるのか。がわかるようになる。 あとは乱数とか。乱数にも種類があり、弱い擬似乱数、強い疑似乱数、真の乱数という3つに本書では分類している。昔、公開鍵のペアをWindowsのアプリで作るときにマウスをぐりぐりしていたことがある。それが何をしていたのかがわかった。真の乱数というのは再現不可能であることが必要でマウスのぐりぐりなどは再現ができない。それを乱数の元にしていたということだった。

この本は今後SSL/TLS化が必須になってくる時代でエンジニアとして生きるのであれば一度は読んでおいてもいいのではないかと思った。またSSL/TLSプロトコルについて詳細に知りたい場合はReal World HTTPも併せて読むといい。

暗号技術入門 第3版

暗号技術入門 第3版

Real World HTTP ―歴史とコードに学ぶインターネットとウェブ技術

Real World HTTP ―歴史とコードに学ぶインターネットとウェブ技術