现代秘密 – 基于秘钥算法:算法的保密行基于对秘钥的保密(保证漏洞及时修正,以防算法发明者做过度操作)
b.对称密码:加密秘钥和解密秘钥相同 非对称密码:加密秘钥为公钥,解密秘钥为私钥 c.散列函数:用于验证数据完整性 消息摘要算法 MD5 SHA 安全散列算法 MAC消息认证码算法 长度不受限制 哈希值容易计算 散列运算过程不可逆(单向函数) d.分组密码:加密时将名为分成固定长度的组,用统一秘钥和算法对每一块加密,输出也是固定长度的密文。多用于网络加密 e.流密码:序列密码 每次加载一个序列或一个字节数字签名:主要是针对以数字的形式存储的消息进行的处理
OSI安全体系 – TCP/IP安全体系
Java安全组成 JCA – Java Cryptography Architecture JCE – Java Cryptography Extension DES AES RSA JSSE – Java Secure Socket Extension SSL:网络传输 保证在网络传输数据不被获取 JAAC – Java Authentication and Authentication service
相关java包和类 java.secutity :提供了对第三方包的扩展用法,只能用于实现消息摘要算法 javax.crypto : 安全消息照耀,消息认证码 java.NET.ssl : 安全套接字(网络加解密)
第三方扩展 Bouncy Castle 配置或者调用 和表单验证第三方库名称冲突导致秘钥无效 Commons Codec:Apache -Base64 二进制 十六进制 字符集编码 -url编码、解码
一般来说JDK是对加密算法的实现, Bouncy Castle做一些补充的操作, Commons Codec对JDK进行优化
JAVA加解密案例源码地址:http://download.csdn.net/detail/jacxuan/9774737
