在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
Atitit.加密算法 des aes 各个语言不同的原理与解决方案java php c#
2.1. Md5——16bit 填充key,使其长度达到128(或其他规定的长度)2 9.1.1. 引擎和算法。引擎可以理解为操作,如加密、解密等11
/* 模型化密钥的概念。由于密钥必须在不同实体之间传输,因此所有的密钥都必须是可以序列化的*/
还有字符编码方式,特别是以中文做密钥的时候。
2. 标准加密api使用流程
2.1. Md5——16bit 填充key,使其长度达到128(或其他规定的长度)key=MD5.getMD5_16bit(key,"utf-8"); byte[] bytes = key.getBytes();
SecretKeySpec keySpec = new SecretKeySpec(bytes, "AES"); return keySpec; 2.2. 生成key2.3. 运算
作者:: 老哇的爪子 Attilax 艾龙, EMAIL:[email protected] 转载请注明来源: http://www.cnblogs.com/attilax/
3. Aes加密原理架构图
AES对称加密:
4. Key的算法不一致
原来是我指定key的方式不对, 直接将字符串做为参数, 想当然的以为这就是key, 其实不然, CryptoJS会根据这个字符串算出真正的key和IV(各种新鲜名词不解释, 问我也没用, 我也不懂 -_-")
5. 加密模式五中模式:CBC,CFB,ECB,OFB,PCBC 不带模式和填充来获取AES算法的时候,其默认使用ECB/PKCS5Padding。
模式 更安全,不同的模式可能安全性更高点。。。
5.1. EcbECB:是一种基础的加密方式,密文被分割成分组长度相等的块(不足补齐),然后单独一个个加密,一个个输出组成密文。
优点: 1.简单; 2.有利于并行计算; 3.误差不会被传送; 缺点: 1.不能隐藏明文的模式; 2.可能对明文进行主动攻击;
5.2. 3.2 CBC模式:
优点: 1.不容易主动攻击,安全性好于ECB,适合传输长度长的报文,是SSL、IPSec的标准。 缺点: 1.不利于并行计算; 2.误差传递; 3.需要初始化向量IV
5.3. OFB模式:
1.隐藏了明文模式; 2.分组密码转化为流模式; 3.可以及时加密传送小于分组的数据; 缺点: 1.不利于并行计算; 2.对明文的主动攻击是可能的; 3.误差传送:一个明文单元损坏影响多个单元;
5.4. 3.3 CFB模式:
1.隐藏了明文模式; 2.分组密码转化为流模式; 3.可以及时加密传送小于分组的数据; 缺点: 1.不利于并行计算; 2.误差传送:一个明文单元损坏影响多个单元 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论