暗号ハードウェアのセキュリティ
暗号処理を行うハードウェアの物理攻撃や安全解析を中心に,セキュリティエンジニアに必要となる知識を理論から実践まで網羅。
- 発行年月日
- 2019/06/13
- 判型
- A5
- ページ数
- 190ページ
- ISBN
- 978-4-339-02894-2
- 内容紹介
- まえがき
- 目次
- レビュー
- 広告掲載情報
本書は,社会インフラの安全・安心を支えるハードウェアのセキュリティ技術を基礎から解説する。暗号処理を行うハードウェアの物理攻撃や安全性解析を中心に,セキュリティエンジニアに必要となる知識を理論から実践まで網羅する。
情報通信ネットワークのオープン化が進む中で,ネットワークセキュリティ,システムセキュリティの確保が最重要課題となっている。情報漏えい対策に対する社会の強いニーズに鑑み,本書で取り扱う内容として,情報・制御システムを含む社会インフラの安全・安心を支えるハードウェアのセキュリティ技術(hardware security)を基礎から解説する。暗号ハードウェア(cryptographic hardware)の物理攻撃(physical attack)や安全性解析を中心に,セキュリティエンジニアに必要となる知識を理論から実践まで網羅する。
スマートフォン(smartphone)やネットワーク家電など,あらゆる情報機器がネットワークに接続され,クラウドサーバ(cloud server)を中心としたさまざまなサービスが展開されている。この結果,新たなビジネス分野が創出され,日常生活における利便性が向上している。
一方で,ネットワーク上に流れる情報漏えいが社会問題となっている。この種の問題のほとんどが,人為的なミスに起因するといっても過言ではない。したがって,情報セキュリティ確保の第一歩は,情報システムを設計・開発・運用する高度技術者が,適切に情報リテラシー(literacy)を身につけることである。設計・開発者は,情報は漏えいするものという観点から,システムの脆弱な部分を見つけ,その部分の強化を図らねばならない。意図的に情報を盗み取ろうとする攻撃者は,システムの最も脆弱な部分(weakest link)を狙ってくるからである。
暗号技術は,情報セキュリティの基盤技術の一つとして経済活動や社会生活に広く浸透してきた。暗号技術が提供する秘匿通信(secure communication)や利用者の認証(authentication)やサービスの真正性(authencity)の保証などは,情報セキュリティを達成するのに欠かせないものである。具体的な応用例としては,暗号電子メールや電子商取引に用いられるSSL(secure socketlayer)/TLS(transport layer security),利用者認証や電子マネーに用いられるSIM(subscriber identity module)カード,パーソナルコンピュータ(personal computer,PC)の個体識別やデータの保護などを提供するTPM(trusted platform module),マイクロプロセッサ(microprocessor)にセキュアな領域を確保するTEE(trusted execution environment)などが挙げられる。
情報システムへの暗号技術の導入により,多くのセキュリティ上の問題が回避できていることはいうまでもない。しかしながら,暗号技術を実装した際に生じる新たな問題にも直面している。暗号技術の理論的観点における想定と,物理的観点における現実との間のギャップを巧妙につく,いわゆるサイドチャネル攻撃(side–channel attack)を代表とする物理攻撃の脅威である。
本書の目的は,暗号ハードウェアの安全性に関する基礎知識を身につけることである。学部生,大学院生,セキュリティエンジニア/研究者を対象として,学術的に重要と思われる基礎的な攻撃手法や対策技術を厳選している。本書を読むにあたって,計算機アーキテクチャ,暗号理論,および数論アルゴリズムの基礎知識を前提としている。高度な攻撃が続々と登場する中,情報を守る最後の砦であり,信頼の基点(root of trust)である暗号ハードウェアの重要性は増すばかりである。その基礎を学ぶ本書が,安心・安全な情報社会の一助となれば幸いである。
本書出版にあたっては,多くの方からご協力をいただいた。まず,電気通信大学の授業「ハードウェアセキュリティ」のティーチングアシスタントを担当してくれた中曽根俊貴さん,松原有沙さん,町田卓謙さん,粕谷桃伽さん,庄司奈津さんからのフィードバックは非常に役に立った。辰巳恵里奈さん,羽田野凌太さんには本書で扱うデータや図の作成に協力いただいた。この場を借りて感謝したい。また,本書出版の労をとってくださったコロナ社に厚くお礼申し上げる。
2019年5月 﨑山 一男
1. 暗号技術と暗号ハードウェアへの脅威
1.1 はじめに
1.2 暗号技術の概要
1.3 ハードウェア実装される代表的な暗号プリミティブ
1.3.1 公開鍵暗号
1.3.2 共通鍵暗号
1.3.3 暗号学的ハッシュ関数
1.3.4 乱数生成器
1.4 暗号アルゴリズムの安全性
1.5 暗号ハードウェアへの脅威
引用・参考文献
2. 共通鍵暗号の実装
2.1 共通鍵暗号方式
2.1.1 共通鍵暗号を用いた秘匿通信
2.1.2 共通鍵暗号を用いた認証
2.1.3 ブロック暗号アルゴリズム
2.1.4 暗号利用モード
2.2 AES暗号
2.2.1 AES暗号のアルゴリズム
2.2.2 AESのハードウェア実装
2.3 有限体の演算
2.3.1 有限体GF(2)
2.3.2 拡大体GF(28)
2.3.3 合成体を用いたS-box実装
2.3.4 正規基底を用いたS-box実装
引用・参考文献
3. 公開鍵暗号の実装
3.1 公開鍵暗号方式
3.1.1 RSA暗号
3.1.2 楕円曲線暗号(ECC)
3.2 基本的な算術演算
3.2.1 加算器の基礎
3.2.2 高速な加算器
3.2.3 マルチオペランド加算
3.2.4 乗算器
3.3 基本的な剰余演算アルゴリズム
3.3.1 剰余加算と剰余減算のアルゴリズム
3.3.2 素朴な剰余乗算アルゴリズム
3.3.3 乗法逆元演算アルゴリズム
3.4 RSA暗号の実装
3.4.1 モンゴメリー剰余乗算
3.4.2 加算器を用いたモンゴメリー剰余乗算
3.4.3 乗算器を用いたモンゴメリー剰余乗算
3.4.4 バイナリ法によるべき剰余演算
3.4.5 ダミー演算付きバイナリ法
3.4.6 モンゴメリーラダー法によるべき剰余演算
3.4.7 k-ary法によるべき剰余演算の高速化
3.5 ECCの実装
3.5.1 GF(p)上のECC
3.5.2 GF(2m)上のECC
引用・参考文献
4. 暗号モジュールへの脅威と対策
4.1 物理攻撃とは
4.2 暗号モジュールとその利用例
4.3 敵性の利用環境
4.4 物理攻撃への対策
4.4.1 暗号モジュールの安全性評価
4.4.2 対策法の考え方
引用・参考文献
5. サイドチャネル攻撃
5.1 サイドチャネル攻撃とは
5.2 ブロック暗号へのサイドチャネル攻撃の概要
5.3 リーケージの発生メカニズムとモデル化
5.3.1 論理回路において生じるリーケージ
5.3.2 リーケージモデル
5.4 信号処理と統計
5.4.1 平均と分散
5.4.2 共分散と相関係数
5.4.3 相関係数と信号雑音比
5.5 相関電力解析
5.5.1 解析対象とリーケージ
5.5.2 相関電力解析による鍵復元攻撃
5.5.3 シミュレーションによる実験例
5.5.4 仮説検定
5.6 対策法
5.6.1 プロービングモデル
5.6.2 ThresholdImplementation
引用・参考文献
6. フォールト攻撃
6.1 フォールト攻撃の概要
6.1.1 フォールト誘発法
6.1.2 解析技術によるフォールト攻撃の分類
6.2 RSA暗号へのフォールト攻撃
6.2.1 セーフエラー攻撃
6.2.2 Bellcore攻撃
6.3 AES暗号へのフォールト攻撃
6.3.1 S-boxの差分特性
6.3.2 MixColumns処理によるバイト差分の拡散
6.3.3 DFA攻撃
6.3.4 FSA攻撃
6.3.5 フォールトの検出と対策
引用・参考文献
7. マイクロアーキテクチャへのサイドチャネル攻撃
7.1 攻撃の全体像
7.1.1 キャッシュの基礎
7.1.2 キャッシュヒットとキャッシュミス
7.1.3 キャッシュレベル
7.1.4 キャッシュライン
7.1.5 暗号アルゴリズムに対するキャッシュ攻撃
7.2 キャッシュ攻撃の例
7.2.1 トレースベースのキャッシュ攻撃
7.2.2 時間ベースのキャッシュ攻撃
7.3 アクセスベースのキャッシュ攻撃
7.3.1 Prime+Probe攻撃
7.3.2 Flush+Reload攻撃
7.3.3 AES暗号への鍵復元攻撃
7.3.4 投機的実行とキャッシュ攻撃
引用・参考文献
演習問題の解答
索引
amazonレビュー
-
掲載日:2020/12/02
-
掲載日:2020/06/18
-
掲載日:2020/01/09
-
掲載日:2019/11/01