随笔分类 - 加解密
摘要:1.引入依赖 <!-- 加密工具包 包含MD5、RSA、AES等加密方式--> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> </dependency> <dependency
阅读全文
摘要:13.1、DH 非对称算法的基石 仅能用于密钥分配,不能用于加解密数据,一般加密数据用AES 密钥长度:512~1024中的64的整数倍 双方各有自己的密钥对 13.2、RSA 最经典的非对称加密算法 也可认为是使用最多的非对称加密算法 能用于密钥分配,也能用于加解密数据(“私钥加密,公钥解密”和“
阅读全文
摘要:10.1、DES 已破解,不再安全,基本没有企业在用了 是对称加密算法的基石,具有学习价值 密钥长度56(JDK)、56/64(BC) 10.2、DESede(三重DES) 早于AES出现来替代DES 计算密钥时间太长、加密效率不高,所以也基本上不用 密钥长度112/168(JDK)、128/192
阅读全文
摘要:6.1、MD5 推荐使用CC(即Commons Codec)实现 虽然已被破解,但是仍旧广泛用于注册登录模块与验证下载的文件的完整性 可以自己写一个注册登录模块;自己下载一个MD5加密的文件,然后通过之前编写的工具类(或者使用CC的方法)进行验证(具体的例子在《Java加密与解密艺术(第二版)中有》
阅读全文
摘要:2.1、算法基本规则: 加密的算法公开 加密的密钥不公开 Base64算法公开、密钥也公开的特性不符合基本算法规则,所以很容易被破解,所以一般不用于企业级的加密操作。 2.2、应用场景 简单加密(加密要求不高的情况下,即一眼看不穿的那种情况下使用) 加密(改造字符映射表,即私藏秘钥) 电子邮件传输(
阅读全文
摘要:如基本的单向加密算法: BASE64 严格地说,属于编码格式,而非加密算法 MD5(Message Digest algorithm 5,信息摘要算法) SHA(Secure Hash Algorithm,安全散列算法) HMAC(Hash Message Authentication Code,散
阅读全文
摘要:1、简单介绍 这几天一直在看非对称的加密,相比之前的两篇内容,这次看了两倍多的时间还云里雾里的,所以这篇文章相对之前的两篇,概念性的东西多了些,另外是代码的每一步我都做了介绍,方便自己以后翻阅,也方便大家理解。最后就是关于代码的demo,DH算法、RSA算法本文中只有最基础的用法,实际在工作中可能会
阅读全文
摘要:说起加密,我的第一印象就是电视剧各种密码本破解解密的场景,这两天在看加密相关的东西,做下笔记以便以后查看,也提供给大家个参考。 本文是java加密的第一篇,主要讲述下消息编码Base64以及简单的消息摘要算法MD5,SHA,MAC等,如果有不对的地方还望大家指正。 1、算法概念简述 1.1、加密算法
阅读全文
摘要:1、简单介绍 什么是对称加密算法? 对称加密算法即加密和解密使用相同密钥的算法。 优缺点: 优点:算法公开、计算量小、加密速度快、加密效率高。 缺点: (1)交易双方都使用同样钥匙,安全性得不到保证。 (2)每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的
阅读全文
摘要:Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。 简单的java加密算法有: BASE64 严格地说,属于编码格式,而非加密算法 MD5(Message Digest algorithm 5,信息摘要算法) S
阅读全文
摘要:一、Java常用加密方式Base64加密算法(编码方式)MD5加密(消息摘要算法,验证信息完整性)对称加密算法非对称加密算法数字签名算法数字证书 加密算法: 移位、替代(古典加密) 对称加密:DES、AES 非对称加密:RSA 散列函数算法(单向加密):MD5、SHA、Mac 数字签名算法:RSA、
阅读全文