図解即戦力シリーズ図解即戦力
暗号と認証のしくみと理論がこれ1冊でしっかりわかる教科書

書籍の概要

この本の概要

テレビ会議やリモートワークが普及する中,情報を守る暗号や本人確認のための認証技術の重要性が増しています。本書は公開鍵暗号や署名などの理論を基礎から詳しく解説し,TLS1.3やHTTP/3,FIDOなどの新しい技術も紹介します。更にブロックチェーンで注目されている秘密計算,ゼロ知識証明,量子コンピュータなど最先端の話題も扱います。

こんな方におすすめ

  • 暗号と認証の基礎を学習したい人
  • Web担当者やセキュリティ担当者など

この書籍に関連する記事があります!

安全にWebサービスを利用するには
普段,インターネットでいろいろなサービスを利用しているときに,パスワードの設定を求められることは多いと思います。

本書のサンプル

本書の一部ページを,PDFで確認することができます。

目次

1章 暗号の基礎知識

  • 01 情報セキュリティ
    •  情報セキュリティの三要素
    •  情報セキュリティと暗号技術
    •  利便性とコスト
    •  追加された要件
  • 02 暗号
    •  暗号とは
    •  よい暗号と使い方
    •  暗号の動向を知る
  • 03 認証
    •  パスワードによる認証
    •  パスワード攻撃者の能力
    •  パスワードの攻撃手法
    •  認証の分類
    •  認可
    •  OAuth
  • 04 古典暗号
    •  シフト暗号
    •  換字式暗号
    •  符号化

2章 アルゴリズムと安全性

  • 05 アルゴリズム
    •  アルゴリズムとは
    •  アルゴリズムのステップ数
    •  効率のよい探索
  • 06 安全性
    •  O記法
    •  ビットと表現可能な範囲
    •  セキュリティパラメータ
  • 07 暗号技術の危殆化
    •  コンピュータの性能向上と暗号の安全性
    •  運用監視暗号リストと推奨暗号リスト
    •  危殆化の問題点

3章 共通鍵暗号

  • 08 共通鍵暗号
    •  共通鍵暗号とは
    •  共通鍵暗号に求められる安全性
    •  共通鍵暗号の種類
  • 09 ビットと排他的論理和
    •  1ビットの基本変換
    •  論理積と論理和
    •  排他的論理和
    •  交換法則と結合法則
    •  排他的論理和の重要な性質
  • 10 乱数
    •  真の乱数
    •  コンピュータで扱う乱数
    •  擬似乱数
    •  擬似ランダム関数
  • 11 ワンタイムパッド
    •  排他的論理和とワンタイムパッド
    •  情報理論的安全性
    •  ワンタイムパッドの欠点
  • 12 ストリーム暗号
    •  ワンタイムパッドとストリーム暗号
    •  計算量的安全性
    •  ストリーム暗号の歴史
    •  ナンス
    •  ChaCha20
  • 13 ブロック暗号
    •  ブロック暗号
    •  ブロック暗号の歴史
    •  AESの概要
    •  AESの初期設定
    •  ラウンド関数
    •  AES-NI
  • 14 確率的アルゴリズム
    •  いつでも同じ暗号文は危険
    •  確率的アルゴリズム
  • 15 暗号化モード
    •  ECB(Electronic CodeBook)モード
    •  CBC(Cipher Block Chaining)モード
    •  CTR(CounTeR)モード
    •  CBCモードとCTRモードの比較
    •  CBCモードに対する攻撃
  • 16 ディスクの暗号化
    •  TPM
    •  ディスクの構造
    •  XTS-AESの概要
    •  XTS-AESの暗号化
    •  XTS-AESの安全性
    •  自己暗号化ドライブ
  • 17 暗号文の改竄とリプレイ攻撃
    •  暗号文の改竄
    •  リプレイ攻撃

4章 公開鍵暗号

  • 18 鍵共有
    •  現代暗号の始まり
    •  ベキ乗
    •  DH鍵共有
    •  DH鍵共有の安全性
    •  DLPと一方向性関数
    •  ベキ乗の計算方法
  • 19 有限体と拡大体
    •  有限体
    •  拡大体
  • 20 公開鍵暗号
    •  公開鍵暗号の概念
    •  共通鍵暗号との違い
    •  強秘匿性と頑強性
    •  ハイブリッド暗号
  • 21 RSA暗号
    •  RSA暗号の具体例
    •  RSA暗号の作り方
    •  RSA暗号の安全性
  • 22 OpenSSLによるRSA暗号の鍵の作り方
    •  OpenSSL
    •  RSA暗号の秘密鍵と公開鍵の作成方法
    •  秘密鍵と公開鍵の確認方法
    •  Pythonによる鍵の設定方法
    •  PythonによるRSA暗号の動作確認
  • 23 楕円曲線暗号
    •  楕円曲線
    •  楕円曲線上の演算
    •  楕円曲線の加算公式
    •  ECDHPとECDLP
    •  ECDH鍵共有
    •  楕円曲線暗号の特長
  • 24 中間者攻撃
    •  ECDH鍵共有への中間者攻撃
    •  公開鍵暗号への中間者攻撃

5章 認証

  • 25 ハッシュ関数
    •  指紋とハッシュ関数
    •  ハッシュ関数とは
    •  誕生日パラドックス
    •  ハッシュ関数の歴史
    •  パスワードとハッシュ関数
    •  パスワードの安全な保存方法
    •  ファイルのパスワード暗号化
  • 26 SHA-2とSHA-3
    •  SHA-2
    •  SHA-3
    •  安全性
  • 27 SHA-1の衝突
    •  SHA-1への攻撃の歴史
    •  衝突したPDFとSHA-1のアルゴリズム
    •  衝突困難性の破り方
    •  PDFに2個のJPEGを埋め込む方法
  • 28 メッセージ認証符号
    •  MACのアルゴリズム
    •  完全性と秘匿性
    •  MACの安全性
    •  MACの構成法
  • 29 署名
    •  紙の署名とデジタル署名
    •  署名のモデル
    •  署名の安全性
    •  MACと署名
    •  ECDSA
    •  公開鍵認証
    •  FIDO
  • 30 サイドチャネル攻撃
    •  電力解析攻撃
    •  コールド・ブート攻撃
  • 31 タイムスタンプ
    •  否認防止と署名の失効
    •  ハッシュ値の連鎖によるタイムスタンプ
    •  署名を用いたタイムスタンプ
    •  日本のタイムスタンプ
  • 32 ブロックチェーンとビットコイン
    •  ブロックチェーン
    •  ビットコイン
    •  トランザクション
    •  二重送金の防止とマイニング

6章 公開鍵基盤

  • 33 公開鍵基盤
    •  互いに依存する暗号技術
    •  信用の輪
    •  公開鍵基盤と認証局
    •  フィンガープリント
  • 34 公開鍵証明書の失効
    •  証明書失効リスト
    •  CRLの問題点
    •  OCSP
    •  OCSPステープリング
    •  その他の方法
  • 35 公開鍵証明書と電子証明書の発行方法
    •  ドメイン名
    •  ドメイン認証
    •  ドメイン認証の問題点
    •  組織認証
    •  拡張認証
    •  署名の電子証明書
  • 36 証明書の透明性
    •  問題のある認証局や証明書
    •  証明書の透明性

7章 TLS

  • 37 TLS
    •  HTTPとHTTPS
    •  SSL/TLSの歴史
    •  TLS 1.3の特長
    •  ハンドシェイクの効率化
    •  暗号化アルゴリズムの整備
    •  新しい鍵導出アルゴリズム
    •  形式手法による安全性検証
  • 38 認証付き暗号
    •  秘匿性と完全性
    •  AEADのアルゴリズム
    •  AES-GCM
    •  ChaCha20-Poly1305
  • 39 前方秘匿性
    •  盗聴と秘密鍵の漏洩
    •  前方秘匿性

8章 ネットワークセキュリティ

  • 40 DNS
    •  権威DNSサーバとキャッシュDNSサーバ
    •  キャッシュ・ポイズニング
    •  DNSSEC
    •  パブリックDNSサーバ
    •  DoTとDoH
    •  ESNIとECH
    •  HPKE
  • 41 メール
    •  SMTPとPOP3
    •  S/MIME
    •  Webメール
  • 42 VPN
    •  インターネットプロトコルスイート
    •  データ構造
    •  LANからインターネットへ
    •  VPN
    •  VPNの種別
    •  IPsec
  • 43 HTTP/3
    •  HTTP/2
    •  QUIC
    •  HTTP/3
  • 44 無線LAN
    •  無線LANの概要
    •  スプーフィングと認証解除攻撃
    •  WEP
    •  WPA2
    •  KRACK
    •  WPA3

9章 高機能な暗号技術

  • 45 準同型暗号
    •  準同型
    •  加法準同型暗号
    •  完全準同型暗号
    •  準同型暗号の種類と用途
  • 46 秘密計算
    •  MPC
    •  秘密分散
    •  VSSとDKGとBLS署名
    •  3PC
    •  3PCの詳細
  • 47 ゼロ知識証明
    •  動機
    •  ゼロ知識証明
    •  ゼロ知識証明の性質
    •  ゼロ知識証明とブロックチェーン
  • 48 量子コンピュータ
    •  量子ビットと観測
    •  量子ゲート
    •  CNOTゲートと量子もつれ
    •  量子コンピュータにおける計算
    •  量子超越性
    •  暗号技術に対する影響
    •  量子ゲート方式と量子アニーリング方式
    •  量子鍵配送
    •  耐量子計算機暗号

著者プロフィール

光成滋生(みつなりしげお)

サイボウズ・ラボで暗号とセキュリティに関するR&Dに従事。
ペアリング暗号やBLS署名ライブラリ,JITアセンブラXbyakを開発し,Ethereumなど多数のブロックチェーンプロジェクトやIntelの深層学習ライブラリに採用されている。
またスーパーコンピュータ富岳の深層学習ライブラリの開発にも関わる。
2004年IPA未踏スーパークリエータ,2005年情報化月間推進会議議長表彰,2010年電子情報通信学会論文賞,2015年CODE BLUE登壇,Microsoft MVP(2015~2021)など。
著書に『応用数理ハンドブック』 (朝倉書店:楕円曲線暗号とペアリング暗号の項目担当),『クラウドを支えるこれからの暗号技術』(秀和システム),『パターン認識と機械学習の学習普及版』(暗黒通信団)などがある。