内容简介:
Java安全领域的百科全书,密码学领域的权威经典
Java应用架构师的必备参考手册
-------------------------
本书是Java安全领域的百科全书,密码学领域的权威经典,4大社区一致鼎力推荐。
全书包含3个部分,基础篇对Java企业级应用的安全知识、密码学核心知识、与Java加密相关的API和通过权限文件加强系统安全方面的知识进行了全面的介绍;实践篇不仅对电子邮件传输算法、消息摘要算法、对称加密算法、非对称加密算法、数字签名算法等现今流行的加密算法的原理进行了全面而深入的剖析,而且还结合翔实的范例说明了各种算法的具体应用场景;综合应用篇既细致地讲解了加密技术对数字证书和SSL/TLS协议的应用,又以示例的方式讲解了加密与解密技术在网络中的实际应用,极具实践指导性。
Java开发者将通过本书掌握密码学和Java加密与解密技术的所有细节;系统架构师将通过本书领悟构建安全企业级应用的要义;其他领域的安全工作者也能通过本书一窥加密与解密技术的精髓。
作者简介:
梁栋,资深Java开发者,有丰富的Spring、Hibernate、iBatis等Java技术的使用和开发经验,擅长Java企业级应用开发;安全技术专家,对Java加密与解密技术有系统深入的研究,实践经验亦非常丰富。他还是一位出色的项目经理,是V8Booker(手机电子书)项目的核心开发团队人员之一,负责核心模块的开发;同时他还在V8NetBank(网银系统)项目中担任项目经理,负责系统的架构和核心模块的开发。
目录:
第一部分 基础篇第1章 企业应用安全 1.1 我们身边的安全问题 1.2 拿什么来拯救你,我的应用 1.3 捍卫企业应用安全的银弹 1.4 为你的企业应用上把锁 1.5 小结第2章 企业应用安全的银弹—密码学 2.1 密码学的发家史 2.2 密码学定义、术语及其分类 2.3 保密通信模型 2.4 古典密码 2.5 对称密码体制 2.6 非对称密码体制 2.7 散列函数 2.8 数字签名 2.9 密码学的未来 2.10 小结第3章 Java加密利器 3.1 Java与密码学 3.2 java.security包详解 3.3 javax.crypto包详解 3.4 java.security.spec包和javax.crypto.spec包详解 3.5 java.security.cert包详解 3.6 javax.net.ssl包详解 3.7 小结第4章 他山之石,可以攻玉 4.1 加固你的系统 4.2 加密组件Bouncy Castle 4.3 辅助工具Commons Codec 4.4 小结 第二部分 实践篇第5章 电子邮件传输算法—Base64 5.1 Base64算法的由来 5.2 Base64算法的定义 5.3 Base64算法与加密算法的关系 5.4 实现原理 5.5 模型分析 5.6 Base64算法实现 5.7 Url Base64算法实现 5.8 应用举例 5.9 小结第6章 验证数据完整性—消息摘要算法 6.1 消息摘要算法简述 6.2 MD算法家族 6.3 SHA算法家族 6.4 MAC算法家族 6.5 其他消息摘要算法 6.6 循环冗余校验算法—CRC算法 6.7 实例:文件校验 6.8 小结第7章 初等数据加密—对称加密算法 7.1 对称加密算法简述 7.2 数据加密标准—DES 7.3 三重DES—DESede 7.4 高级数据加密标准—AES 7.5 国际数据加密标准—IDEA 7.6 基于口令加密—PBE 7.7 实例:对称加密网络应用 7.8 小结第8章 高等数据加密—非对称加密算法 8.1 非对称加密算法简述 8.2 密钥交换算法—DH 8.3 典型非对称加密算法—RSA 8.4 常用非对称加密算法—ElGamal 8.5 实例:非对称加密网络应用 8.6 小结第9章 带密钥的消息摘要算法—数字签名算法 9.1 数字签名算法简述 9.2 模型分析 9.3 经典数字签名算法—RSA 9.4 数字签名标准算法—DSA 9.5 椭圆曲线数字签名算法—ECDSA 9.6 实例:带有数字签名的加密网络应用 9.7 小结 第三部分 综合应用篇第10章 终极武器—数字证书 10.1 数字证书详解 10.2 模型分析 10.3 证书管理 10.4 证书使用 10.5 应用举例 10.6 小结第11章 终极装备—安全协议 11.1 安全协议简述 11.2 模型分析 11.3 单向认证服务 11.4 双向认证服务 11.5 应用举例 11.6 小结第12章 量体裁衣—为应用选择合适的装备 12.1 实例:常规Web应用开发安全 12.2 实例:IM应用开发安全 12.3 实例:Web Service应用开发安全 12.4 小结附录A Java 6支持的算法附录B Bouncy Castle支持的算法