当前位置:网站首页>对称加密和非对称加密
对称加密和非对称加密
2022-07-31 05:18:00 【m0_59138290】
对称加密
对称加密:也称为对称密码,是指在加密和解密时使用同一密钥的加密方式
对称加密指的就是加密和解密使用同一个秘钥,所以叫对称加密。 对称加密只有一个秘钥,作为私钥。
加密过程:
加密: 原文+密钥 = 密文
解密:密文-密钥 = 原文
常见的对称加密算法: DES(已破解,不再安全,基本没有企业在用了),
AES:最常用的对称加密算法
密钥建立时间短、灵敏性好、内存需求低(不管怎样,反正就是好)
实际使用中,使用工作模式为CTR(最好用BC去实现),此工作模式需要引入IV参数(16位的字节数组)
IDEA
常用的电子邮件加密算法
工作模式只有ECB
密钥长度128位
PBE
综合了消息摘要算法和对称加密算法,最常见的是PBEWithMD5AndDES
工作模式只有CBC(已丧失安全性,不推荐使用),所以PBE也不推荐使用了
优点 - 算法简单,加解密容易,效率高,执行快。
缺点 - 相对来说不安全,只有一把钥匙,密文如果被拦截,且密钥被劫持,那么信息很容易被破译。
非对称加密
非对称加密指的是:加密和解密使用不同的秘钥,一把作为公开的公钥,另一把作为私钥。 公钥加密的信息,只有私钥才能解密。
私钥加密的信息,只有公钥才能解密。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-grJZEK45-1658669762823)(D:\Typora\img\image-20220723220355033.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c5rQPjoG-1658669762824)(D:\Typora\img\image-20220724102651211.png)]
常见的非对称加密:
RSA算法:本质是数学,公钥和私钥是数学上关联的,无须直接传递
ECC:是一种公钥加密算法,其数学基础是利用椭圆曲线上的有理点构成 Abel 加法群上椭圆离散对数的计算困难性。
DH算法:他是一种确保共享KEY安全穿越不安全网络的方法,也就是密钥一致协议
优点 - 安全,即使密文和公钥被拦截,但是由于无法获取到私钥,也就无法破译到密文。
缺点 - 加密算法复杂,安全性依赖算法和密钥, 且加密和解密效率很低。
对称加密和非对称加密的区别
一: 对称加密: 加密解密使用同一个密钥,被黑客拦截不安全
二:非对称加密:公钥加密,私钥解密。公钥可以公开给别人进行加密,私钥永远在自己手里,非常安全,黑客拦截也没用,因为私钥尚未公开。 著名的RSA加密算法就是用的非对称加密。
对称加密算法,加解密的效率要高很多。 但是缺陷在于对秘钥的管理上,以及在非安全信道中通讯时,密钥交换的安全性不能保障。 所以在实际的网络环境中,会将两者混合使用。
简单理解:
对称加密: A和B传输数据,使用同一个密钥,不安全
非对称加密: A和B传输数据, A具有自己的公私钥,B具有自己的公私钥。
(公钥是在公网上公开的,任何人都能看见, 私钥自己保留)
A拿着B的公钥+信息数据, 传递给B。 这个时候 , 只有B手里的密钥才能解开。
假设C拦截了A传递的信息,他是解不开的, 因为C没有这个公钥对应的私钥。
给B。 这个时候 , 只有B手里的密钥才能解开。
假设C拦截了A传递的信息,他是解不开的, 因为C没有这个公钥对应的私钥。
所以比较安全。
边栏推荐
猜你喜欢
衡量 DevOps 成功与否的重要度量指标
一种用QT实现即时通信软件表情发送与接收的思路
Cholesterol-PEG-DBCO 胆固醇-聚乙二醇-二苯基环辛炔化学试剂
什么样的人不适合入行编程?你真的适合学习编程吗?
cenos7配置IP,配置IP不生效
box-shadow related properties
CSDN上markdown编写的一些便捷操作
Incredibuild 宣布支持 Yocto
The content of the wangeditor editor is transferred to the background server for storage
【Latex】TexLive+VScode+SumatraPDF 配置LaTex编辑环境
随机推荐
C语言知识点(二)
浏览器中的画中画(Picture-in-Picture)API
安装显卡过程中遇到问题汇总
Pytorch study notes 13 - Basic_RNN
box-shadow related properties
IDEA概述和安装及调试
Pytorch learning notes 09 - multiple classification problem
一种用QT实现即时通信软件表情发送与接收的思路
哈希表基础
Natural language processing related list
C语言对文件的操作(完整版)
Phospholipids-Polyethylene Glycol-Active Esters for Scientific Research DSPE-PEG-NHS CAS: 1445723-73-8
学习JDBC之获取数据库连接的方式
a:自我介绍
Unity版本升级问题总结
Fluorescein-PEG-DSPE Phospholipid-Polyethylene Glycol-Fluorescein Fluorescent Phospholipid PEG Derivatives
Pytorch study notes 7 - processing input of multi-dimensional features
Getting Started with MySQL: The Case Statement Works Well
VS2019配置配置项目属性自定义输出目录与中间目录
WIN10,配置adb环境