本書主要闡述如何使用C和C++語言實現(xiàn)密碼學算法,包括編寫專家級的密碼所需要掌握的知識和技術(shù),以及如何安全并高效地實現(xiàn)密碼學算法。
出版者的話
譯者序
序
英文第2版前言
英文第1版前言
德文第1版前言
第一部分 算術(shù)與數(shù)論:C實現(xiàn)
第1章 緒論
第2章 數(shù)的格式:C中大數(shù)的表示
第3章 接口語義
第4章 基本運算
4.1 加法和減法
4.2乘法
4.2.1 小學乘法方法
4.2.2更快的平方運算
4.2.3 Karatsuba能否做得更好
4.3帶余除法
第5章 模算術(shù):剩余類計算
第6章 百川歸海:模冪運算
6.1 第一種方法
6.2 M進制取冪
6.3 加法鏈及窗口
6.4 Montgomery約簡和取冪
6.5取冪運算的密碼學應(yīng)用
第7章 位運算與邏輯函數(shù)
7.1 移位運算
7.2 有或無:位關(guān)系
7.3 對單個二進制數(shù)字的直接訪問
7.4 比較運算符
第8章 輸入、輸出、賦值和轉(zhuǎn)換
第9章 動態(tài)寄存器
第10章 基本數(shù)論函數(shù)
10.1 最大公約數(shù)
10.2剩余類環(huán)中的乘法逆
10.3根‘j對數(shù)
10.4剩余類環(huán)中的平方根
10.4.1 Jacobi符號
10.4.2 模聲6的平方根
10.4.3 模"的平方根
10.4.4 基于二次剩余的密碼學
10.5 素性檢驗
第1 1章 Rijndael:數(shù)據(jù)加密標準的
后繼者 一
11.1 多項式運算
11.2 Rijndael算法
11.3 計算輪密鑰
11.4 S盒
11.5行移位變換
11.6 列混合變換
11.7 輪密鑰加
11.8-個完整的加密過程
11.9 解密
1 1.10性能
11. 11 運行模式
第12章 大隨機數(shù)
12.1 -個簡單的隨機數(shù)生成器
12.2密碼學的隨機數(shù)生成器
12.2.1 初始值的生成
12.2.2 BBS隨機數(shù)生成器
12.2.3 AES生成器
12.2.4 RMDSHA-1生成器
12.3質(zhì)量測試
12.3.1 卡方檢驗
12.3.2單位檢驗
12.3.3撲克檢驗
? 12.3.4游程檢驗
12.3.5 長游程檢驗
12.3.6 自相關(guān)檢驗
12.3.7 FLINT/CLINT隨機數(shù)
生成器的質(zhì)量
12.4更復雜的函數(shù)
第13章 測試LINT的策略
13.1靜態(tài)分析
13.2運行時測試
第二部分 算術(shù):C++實現(xiàn)與LINT類
第14章 用C++精簡生活
14.1 非公共事務(wù):LINT中數(shù)的
表示
14.2構(gòu)造函數(shù)
14.3重載運算符
第15章 LINT公共接口:成員函數(shù)
和友元函數(shù)
15.1算術(shù)
15.2數(shù)論
15.3 LINT對象的I/O流
15.3.1 LINT對象的格式化
輸出
15.3.2操縱器
15.3.3 LINT對象的文件I/O
第16章 錯誤處理
16.1杜絕慌亂
16.2用戶定義的錯誤處理
16.3 LINT異常
第17章 一個應(yīng)用實例:RSA
密碼體制
17.1非對稱密碼體制
17.2 RSA算法
17.3 RSA數(shù)字簽名
17.4 C++的RSA類
第18章 自己動手測試LINT
第19章 更進一步的擴展方法
第三部分 附錄
附錄AC函數(shù)目錄
附錄B C++函數(shù)目錄
附錄C 宏
附錄D 計算時間
附錄E符號 一
附錄F運算和數(shù)論軟件包
參考文獻