『暗号技術入門』

暗号技術入門

対象鍵であるとか非対称鍵であるとか署名であるとかを、「なんでそれで安全が守られるの」というレベルで理解する上で調度良い本。

仕組みなんていらねぇやり方をよこせ、みたいな考えもあるのだけど、仕組みをしらないと、例えば公開鍵暗号で秘密鍵と公開鍵の役割が交換可能だとか勝手に夢想して公開鍵の代わりに秘密鍵送ってもいいよねみたいな話になる。

本著の内容は大方、暗号関係を使う可能性がある技術者として、常識とするべき範囲にとどまっている。暗号を開発する方でもない。

数学的に何故個別のアルゴリズムが安全だと言えるのか => どう証明されているのかについての理論的な解説などはほぼない。数学の本ではない。せいぜいmodくらいだが、modの解説がやや蛇足に見える程度に解説がない。まったく正反対に、実際に世の中で使われているソフトウェアのどこでどう操作すれば個別のアルゴリズムを選択できるか、どのアプリでどのような主要な脆弱性がもたらされてどう対応がなされているのか、といった実務的な解説もほぼない。

そのかわり、技術者ならちらりと見たい仕組みについては解説があることもある。例えばエニグマのしくみ。証明も何もないが、まぁなるほどそういう「感じ」なのかと分かるのは有益な気がする。もっとも興味があればWikipediaで調べられるが。

多分、この本だけ読んでRSAが安全であることを数学的に「証明」することは出来ないけど「ああ、なんか難しそう」という感じはつかめるだろうし、また、コマンドライン叩いてる時にも「ああ、MD5にするか」という判断に陥る代わりに「SHA2的なのはどれだっけ」とググろうとするマインドセットは作れる。それで大方の人にとっては良いのだと思う。

最近では開発者なら自分のソフトに署名を施していることが多いわけで、そういうツールを無闇に使うくらいは出来るんだろう。ただ、「自分のなんでその『署名』とやらが第三者によってぶち破られないか」は当然説明出来るべきでもある。それが出来ないと逆に「何を行うと署名の妥当性が危うくなるか」の感覚もつかめなくなり、まともなエンジニアのベストプラクティスを知らないということになり、つまりあんたはアホ。さぁ読むのだ。


このブログの人気の投稿

LibreOfficeで表紙、目次、本体でフッターのページ番号のスタイルを変える

WiiUのコントローラが通信不良に陥った話

技術書典2 あ-03 『もわねっとのPythonの本』