对称加密及AES加密算法

简介: 对称加密及AES加密算法

1、对称加密:

加密和解密使用同一个密钥的加密方式


2、对称加密的优点:

加密计算量小、速度块,适合对大量数据进行加密的场景


3、AES加密算法

(1)Advanced Encryption Standard,高级加密标准

(2)替代之前的DES加密算法


4、AES采用分组密码体制

每个分组数据的长度为128位16个字节

密钥长度可以是128位16个字节、192位24字节 或256位32字节

通常采用128位16个字节初始向量IV的CBC模式

五个关键词

1、分组密码体制

AES加密会首先把明文切成一段一段的,而且每段数据的长度要求必须是128位16个字节,如果最后一段不够16个字节了,就需要用Padding来把这段数据填满16个字节,然后分别对每段数据进行加密,最后再把每段加密数据拼起来形成最终的密文。


2、Padding

Padding就是用来把不满16个字节的分组数据填满16个字节用的

(1)PKCS5

(2)PKCS7

(3)NoPadding

我们开发通常采用PKCS7 Padding模式。


3、密钥

AES要求密钥的长度可以是128位16个字节、192位或者256位

通常采用128位16个字节的密钥


4、初始向量IV

定为128位16个字节,初始向量的来源为随机生成


5、四种加密模式

(1)ECB(电子密码本模式)

(2)CBC(密码分组链接模式)需要参数iv

(3)CFB

(4)OFB


我们一般使用的是CBC模式


注意:

服务端和我们客户端必须使用一样的:

密钥、初始向量IV、加密模式、Padding模式参考

第二篇:对称加密及AES加密算法

相关文章
|
存储 安全 Java
学成在线笔记+踩坑(12)——用户认证
连接用户中心数据库、账号密码认证、验证码认证
学成在线笔记+踩坑(12)——用户认证
|
3月前
|
存储 缓存 测试技术
开发文档的模版(参考)
本文档为[模块名称]的开发文档,详细介绍了系统模块的数据库表结构设计、接口定义、关键设计方案及外部API集成等内容,涵盖了核心表、从表、废弃表的设计规范,以及接口请求方式、参数说明、响应格式和异常处理机制。
287 0
|
6月前
|
存储 分布式计算 大数据
数据湖——大数据存储的新思维,如何打破传统束缚?
数据湖——大数据存储的新思维,如何打破传统束缚?
245 16
|
6月前
|
安全 Linux
阿里云linux服务器使用脚本通过安全组屏蔽异常海外访问ip
公网网站可能会遭受黑客攻击导致访问异常,使用此脚本可以屏蔽掉异常IP 恢复访问。也可自行设置定时任务定期检测屏蔽。
509 28
|
存储 安全 数据安全/隐私保护
浅谈对称加密(AES与DES)
浅谈对称加密(AES与DES)
361 1
|
监控 数据可视化 Linux
在Linux中,如何进行系统监控?
在Linux中,如何进行系统监控?
|
算法 安全 Java
AES加解密算法:原理、应用与安全性解析
AES加解密算法:原理、应用与安全性解析
|
10月前
|
算法 数据安全/隐私保护 Python
DES加密初探
本文介绍了Python中常用的DES和3DES加解密方法,包括ECB和CBC模式。通过示例代码展示了如何使用`Crypto`和`pyDes`库实现加解密,并讨论了不同的填充方式。最后,通过一道CTF例题,详细解析了从图像中提取密文、进行ASCII转换、Base64解码、凯撒解码和最终的DES解密过程。
378 4
DES加密初探
|
存储 算法 安全
一文带你学习“国密算法”
一文带你学习“国密算法”
2001 3
一文带你学习“国密算法”