对称加密典型算法总结
1. DES算法
DES(Data Encryption Standard)是一种单一密钥对称加解密算法。通信主体之间只有一个密钥,该密钥不对第三方公开。但由于密钥长度较短,导致安全性不高。DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密,如果Mode为加密,则用Key去把数据Data进行加密,生成Data的密码形式作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式作为DES的输出结果。在使用DES 时,双方预先约定使用的”密码”即Key,然后用Key去加密数据;接收方得到密文后使用同样的Key解密得到原数据,这样便实现了安全性较高的数据传输。
2. 3DES算法
三重DES(TDEA,Triple Data Encryption Algorithm)算法,这种方法用两个密钥对明文进行三次加密,假设两个密钥是K1和K2,三个步骤:1. 用密钥K1进行DEA加密。 2. 用K2对步骤1的结果进行DES解密。 3. 用步骤2的结果使用密钥K1进行DES加密。这种方法的缺点,是要花费原来三倍时间,从另一方面来看,三重DES的112位密钥长度是很“强壮”的加密方式了。
3. AES算法
AES(Advanced Encryption Standard,高级加密标准),用于替代DES成为新一代的加密标准。具有128比特的分组长度,并支持128、192和256比特的密钥长度,可在全世界范围内免费得到。其前身为Rijndael(读作:Rain Doll)。Rijndael算法与AES的唯一区别在于各自所支持的分组长度和密码密钥长度的反胃不同。Rijndael是具有可变分组长度和可变密钥长度的分组密码,其分组长度和密钥长度均可独立地设定为32比特的任意倍数,最小值128bit,最大256bit。而AES将分组长度固定为128位,而且仅支持128、192和256位的密钥长度,分别称为AES-128,AES-192,AES-256。
算法对比
对称加密典型算法总结相关推荐
- 对称加密——AES算法使用
对称加密 我们知道MD5加密的本质上是无法解密,是一个不可逆的过程,而网上有很多解密其实都是一种穷举法对比,根本不存在破解方法. 但是在业务中,很多时候存在解密的需要,这个时候我们可以采用对称加密,对 ...
- DES对称加密(1)算法说明
DES数据加密标准(Data Encryption Standard) 又称作DEA(Data Encryption Algorithm) , 它由霍斯特·费斯妥Horst Feistel设计,又名 ...
- 黄聪:【转】C# 对称加密解密算法
/// <summary> /// 对称加密算法类,使用系统自带的函数 /// </summary> public class SymmetricMet ...
- aes默认填充算法 mysql_Go 实现加密算法系列之对称加密
点击上方蓝色"Go语言中文网"关注我们,领全套Go资料,每天学习 Go 语言 加密算法简介 加密算法就是加密的方法,在密码学中,加密是将明文信息隐藏起来,使之缺少特殊信息时不可读. ...
- JackHttp -- 浅谈编码、加密(对称加密,非对称加密,Hash算法)
如果你还不清楚 JackHttp 是什么,请戳这里!!! JackHttp 是一个网络框架系列,为什么还要分享编码和加密呢?主要有如下几个原因: HTTP 在网络传输过程中是明文的. HTTP 在网络 ...
- Android安全加密:对称加密
Android安全加密专题文章索引 Android安全加密:对称加密 Android安全加密:非对称加密 Android安全加密:消息摘要Message Digest Android安全加密:数字签名 ...
- 对称加密、工作模式和填充模式
对称加密密钥长度分析 DES秘钥长度:8个字符 AES秘钥长度:16个字符 DES加密后密文长度是8的整数倍 AES加密后密文长度是16的整数倍 工作模式和填充模式 IOS加密,android没有解密 ...
- JWT对称加密非对称加密
JWT JWT原理图: JWT的数据结构 jwt头:JWT头部分是一个描述JWT元数据的JSON对象 有效载荷:七个默认字段+自定义私有字段 签名=HMACSHA256(base64UrlEncode ...
- java简单对称加密_聊聊java中的对称加密机制
对数据的加密算是一个老生常谈的话题了,加密的方式很多,java也为这些加密算法提供了支持.今天就来聊聊对称加密算法的java实现方式.本文对加密算法不了解也没关系,我会从0开始讲解,保证小白也能看懂. ...
最新文章
- IntelliJ IDEA 、 Android Stadio 不显示Version Contro窗口
- 怎么判断时double和floatc++_安居客堂:您知道怎么选择优质的轻钢龙骨吗?
- JMS (Java消息服务) 入门教程
- 音视频技术开发周刊 | 175
- 连续设置多张背景图片并且平铺
- CentOS 6 和 CentOS 7 防火墙的关闭
- linux---基础03
- 江苏师范大学计算机全国排名,国内131所二本师范大学最新排名(按录取分数线)...
- python //运算符
- qt 进度条最小_QT:圆形进度条设计
- Python cheat sheet 大全
- 一个U盘走天下,装机大神撩妹的不二之选
- C 语言的数据类型宽度扩展
- filebeat配置文件
- getch方法_C++中getch函数使用时注意事项
- Flowers Sky Wallet First school/Primary school holiday Getting up early Reading Home c
- 计算机课睡觉检讨书,上课睡觉检讨书范文三篇
- 蔡康永--说话之道(一)
- vue+draggable +jsPlumb 表格数据连线
- 爬取王者荣耀皮肤-点券领取
热门文章
- 开发一个android桌面
- 青岛地铁交通咨询系统
- 5G新基建虚拟仿真技术助力大中专专业VR实训室建设
- 计算机论文展望未来,计算机本科毕业论文参考例文.docx
- 实验室设计建设方案主要内容
- 自考计算机操作,自考计算机操作系统02326历年试题及答案(最新到18年4月份)...
- 运用python将数据转为refworks格式
- 基于Java毕业设计学生选课系统源码+系统+mysql+lw文档+部署软件
- java全栈前景_Java全栈开发哪个发展前景好
- 基于LPWAN技术的低成本 IoT 物联网企业资产管理解决方案