現代暗号入門 いかにして秘密は守られるのか
ゲンダイアンゴウニュウモン イカニシテヒミツハマモラレルノカ
- 著者:
- 神永 正博(カミナガ マサヒロ)
- 出版社:
- 講談社
- 出版日:
- 2017年10月18日頃
- ISBN:
- 9784065020357
- シリーズ:
- ブルーバックス
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
現代の暗号技術には、純粋数学者が追究した緻密で膨大な研究成果が惜しみなく投入されている。開発者と攻撃者の熾烈な争いを追いながら、実際に使われている暗号技術を解説する。現代的な暗号の基本要素である「共通鍵暗号」「ハッシュ関数」「公開鍵暗号」にくわえ、類書ではほとんど解説のなかった、ハードウェアの面からの暗号解読についても紹介する。
ネットも、携帯も、SUICA などのカードもみんな暗号で守られている現代社会、でも果たして安全か!? サイバー空間ではハッカーたちとどのような攻防が繰り広げられているのか、暗号はどのように守られ、あるいは破られるのか、その舞台裏を実際に起きた事件や実例をもとに描きながら、社会の隅々に浸透した暗号技術の実態 (どのように実装されているか) と、現代暗号の進化とその仕組みについて分かりやすく解説します。
第 1 章 共通鍵暗号
戦争から始まった暗号の歴史をたどりながら、現代暗号の基礎を学ぶ
第 2 章 ハッシュ関数
ウェブサービスのパスワード認証や情報の改竄を防ぐための技術を知る
第 3 章 公開鍵暗号ーー RSA 暗号
閉める鍵と開ける鍵が異なる「公開鍵暗号」の基本的な原理を学ぶ
第 4 章 公開鍵暗号ーー楕円曲線暗号
現在の世界標準であり、ビットコインにも使われる「楕円曲線暗号」とは何か
第 5 章 サイドチャネルアタック
ハードウェアの脆弱性から暗号を解読する技術とその対策
技書の森解説
『現代暗号入門 いかにして秘密は守られるのか』 (神永 正博 著、講談社、2017 年 10 月発売) は、共通鍵暗号、ハッシュ関数、公開鍵暗号という現代暗号の基本要素に、ハードウェアの面からの暗号解読を加えた全 5 章で、実際に使われている暗号技術の仕組みを解説するブルーバックスの一冊 (B-2035) です。版元の紹介文によれば、開発者と攻撃者の争いを追いながら、暗号がどのように守られ、あるいは破られるのかを実際に起きた事件や実例をもとに描き、暗号技術がどのように実装されているかと、現代暗号の進化とその仕組みを分かりやすく解説しています。
全 5 章の構成、共通鍵暗号からサイドチャネルアタックまで
第 1 章「共通鍵暗号」は、戦争から始まった暗号の歴史をたどりながら現代暗号の基礎を学ぶ章です。第 2 章「ハッシュ関数」はウェブサービスのパスワード認証や情報の改竄を防ぐための技術を扱います。第 3 章と第 4 章はどちらも公開鍵暗号の章で、閉める鍵と開ける鍵が異なる公開鍵暗号の基本的な原理を RSA 暗号で学んだあと、ビットコインにも使われる楕円曲線暗号へ進みます。第 5 章「サイドチャネルアタック」は、ハードウェアの脆弱性から暗号を解読する技術とその対策の章で、版元はこの題材を、類書ではほとんど解説のなかったものとして紹介しています。
鍵の受け渡しの問題と、機器から漏れる手がかり
暗号の基本は、決まった手順と鍵を使ってデータを第三者に読めない形へ変える 暗号化 と、その逆の復号です。送り手と受け手が同じ鍵を使う方式は処理が速い反面、その鍵を相手に安全に渡す方法が別に要ります。公開してよい鍵と秘密にする鍵を分ける方式は、この受け渡しの問題に答えるもので、RSA 暗号は大きな数の素因数分解の難しさに、楕円曲線暗号は楕円曲線上の離散対数問題の難しさに安全性の根拠を置いています。楕円曲線暗号は同程度の安全性をより短い鍵で得られるため、計算資源の限られた機器でも扱いやすい方式です。Web の通信を守る HTTPS / TLS も、鍵の受け渡し、通信相手の確認、内容の秘匿と改ざんの検出に、こうした部品を組み合わせて使っています。
一方で、数学的に破ることが難しい方式でも、それを動かす機器から秘密が漏れることがあります。処理にかかる時間や消費電力の揺らぎ、機器が発する電磁波といった物理的な手がかりから鍵を推定する攻撃は、攻撃者が IC カードのような機器を手元に置ける場面で特に問題になります。版元の紹介文が、暗号技術の実態としてどのように実装されているかを解説すると述べているとおり、本書は方式の原理だけでなく、実装の面から破られる暗号にも 1 章を充てています。
刊行時点の暗号技術と、全 5 章で扱う範囲
内容は 2017 年の刊行時点の暗号技術を前提にしています。
本書は共通鍵暗号、ハッシュ関数、公開鍵暗号 (RSA 暗号と楕円曲線暗号)、サイドチャネルアタックを 5 章で扱います。
言及した記事 (1 件)
この本に興味がある方におすすめ
関連する本
関連記事
エンジニアが最初に読むべき技術書 5 冊の選び方 - ジャンル配分が鍵
新人エンジニアやキャリアチェンジ組が最初に読むべき技術書のジャンル配分と、言語 / 設計 / 運用 / CS 基礎 / ソフトスキルの 5 冊を選ぶチェックリストを紹介します。
なぜ同じ本を読んだのに、あの人と理解が違うのか
読書会で同じ本を読んだはずなのに、メンバーごとに理解が異なる。この現象は欠陥ではなく、読書の本質的な特性です。理解の差が生まれる仕組みと、その差を学びに変える方法を解説します。
技術書の輪読会のすすめ - 友達と同じ本を読むと理解が深まる理由
1 人で技術書を読むのが続かないなら、友達と同じ本を読む形の輪読会を試してみてください。読んだところを話すだけで理解が深まり、続けやすくもなる進め方を紹介します。
関連用語
フォーマッター
ソースコードのスタイル (インデント、改行、スペース) を自動的に統一するツール
リンター (Linter) とは - 静的解析ツールの役割と導入方法
リンターはソースコードを静的解析してバグやスタイル違反を検出するツール。ESLint / Biome / Ruff など言語ごとのリンターの比較と CI への組み込み方を解説
Prettier
コードのフォーマットを自動的に統一するオピニオネイテッドなコードフォーマッター
パターンマッチ
値の構造に基づいて分岐処理を行う制御構文で、switch 文の強化版
画像最適化
Web ページの画像サイズを削減し、表示速度と Core Web Vitals を向上させる技術群
JSON
JavaScript 由来の軽量なデータ交換フォーマットで、Web API のデファクトスタンダード