Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >非对称加密和对称加密的区别

非对称加密和对称加密的区别

作者头像
sunsky
发布于 2020-08-20 08:36:23
发布于 2020-08-20 08:36:23
2.1K0
举报
文章被收录于专栏:sunskysunsky

在了解对称加密非对称加密的区别之前我们先了解一下它们的定义:

对称加密(Symmetric Cryptography),又称私钥加密

对称加密是最快速、最简单的一种加密方式,加密(encryption)与解密(decryption)用的是同样的密钥(secret key),这种方法在密码学中叫做对称加密算法。对称加密有很多种算法,由于它效率很高,所以被广泛使用在很多加密协议的核心当中。对称加密通常使用的是相对较小的密钥,一般小于256 bit。因为密钥越大,加密越强,但加密与解密的过程越慢。如果你只用1 bit来做这个密钥,那黑客们可以先试着用0来解密,不行的话就再用1解;但如果你的密钥有1 MB大,黑客们可能永远也无法破解,但加密和解密的过程要花费很长的时间。密钥的大小既要照顾到安全性,也要照顾到效率,是一个trade-off。

非对称加密(Asymmetric Cryptography),又称公钥加密

1976年,美国学者Dime和Henman为解决信息公开传送和密钥管理问题,提出一种新的密钥交换协议,允许在不安全的媒体上的通讯双方交换信息,安全地达成一致的密钥,这就是“公开密钥系统”。相对于“对称加密算法”这种方法也叫做“非对称加密算法”。非对称加密为数据的加密与解密提供了一个非常安全的方法,它使用了一对密钥,公钥(public key)和私钥(private key)。私钥只能由一方安全保管,不能外泄,而公钥则可以发给任何请求它的人。非对称加密使用这对密钥中的一个进行加密,而解密则需要另一个密钥。比如,你向银行请求公钥,银行将公钥发给你,你使用公钥对消息加密,那么只有私钥的持有人--银行才能对你的消息解密。与对称加密不同的是,银行不需要将私钥通过网络发送出去,因此安全性大大提高。

下面说一下这两种方式的使用

对称密钥加密我们从定义中应该就可以明白,它是信息的发送方和接收方都用同一个秘钥去加密和解密数据。这样做它的最大优势是加/解密速度快,适合于对大数据量进行密,但密钥管理困难。

非对称密钥加密,它需要使用“一对”密钥来分别完成加密和解密操作,一个公开发布,即公开密钥,另一个由用户自己秘密保存,即私用密钥。信息发送者用公开密钥去加密,而信息接收者则用私用密钥去解密。公钥机制灵活,但加密和解密速度却比对称密钥加密慢得多。 非对称密钥加密的使用过程: 1. A要向B发送信息,A和B都要产生一对用于加密和解密的公钥和私钥。 2. A的私钥保密,A的公钥告诉B;B的私钥保密,B的公钥告诉A。 3. A要给B发送信息时,A用B的公钥加密信息,因为A知道B的公钥。 4. A将这个消息发给B(已经用B的公钥加密消息)。 5. B收到这个消息后,B用自己的私钥解密A的消息,其他所有收到这个报文的人都无法解密,因为只有B才有B的私钥。 6. 反过来,B向A发送消息也是一样。

从上面大家应该可以看出对称加密和非对称加密的区别,下面稍微进行一下总结:

(1) 对称加密加密与解密使用的是同样的密钥,所以速度快,但由于需要将密钥在网络传输,所以安全性不高。 (2) 非对称加密使用了一对密钥,公钥与私钥,所以安全性高,但加密与解密速度慢。 (3) 解决的办法是将对称加密的密钥使用非对称加密的公钥进行加密,然后发送出去,接收方使用私钥进行解密得到对称加密的密钥,然后双方可以使用对称加密来进行沟通。

标红色的地方是重点,这是目前在通信方面最安全的做法。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-09-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
对称加密与非对称加密
对称加密是最快速、最简单的一种加密方式,加密(encryption)与解密(decryption)用的是同样的密钥(secret key)。对称加密有很多种算法,由于它效率很高,所以被广泛使用在很多加密协议的核心当中。
用户7353950
2022/05/10
1K0
对称加密与非对称加密
数据加密和解密总结
虽然非对称加密很安全,但是和对称加密比起来,它非常的慢,所以我们还是要用对称加密来传送消息, 但对称加密所使用的密钥我们可以通过非对称加密的方式发送出去。
对话、
2022/02/22
1.1K0
基础知识补充3:对称加密与非对称加密简介
对称加密是最快速、最简单的一种加密方式,加密(encryption)与解密(decryption)用的是同样的密钥(secret key)。
春风大魔王
2020/07/29
2K0
对称加密算法与非对称加密算法的优缺点
对称加密指的就是加密和解密使用同一个秘钥,所以叫做对称加密。对称加密只有一个秘钥,作为私钥。
MavenTalker
2019/07/19
3.1K0
对称加密与非对称加密
对称加密算法中对于数据的加密与解密使用同一密钥,即使用相同的密码对内容进行加密解密。
WindRunnerMax
2020/08/27
1.6K0
都2022年了,还不会对称加密和非对称加密算法?
下单做一次支付,若还是使用HTTP协议,可能会被黑客盯上。 你发送个请求,买娃娃,但该网络包被截获,于是在服务器回复你之前,黑客先假装自己就是电商网站,然后给你回复一个假消息:“好呀,来把银行卡号、密码拿来。” 这时你真把银行卡密码发给它,就中招了。
JavaEdge
2022/01/19
4970
对称加密和非对称加密
对称加密指的就是加密和解密使用同一个秘钥,所以叫对称加密。 对称加密只有一个秘钥,作为私钥。
小吕
2022/09/26
2.8K0
对称加密VS非对称加密
首先,简要介绍一下加密技术。即将明文加密为密文,并通过通信路径发送,中途窃听者不会阅读或理解课文。在接收端接收时,密文被解密为明文。
素履coder
2022/02/17
2K0
【Java小工匠聊密码学】--非对称加密--概述
  非对称加密算法需要两个密钥:[公开密钥] (publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 非对称加密算法实现机密信息交换的基本过程是:甲方生成一对[密钥] 并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。
Java小工匠
2018/08/10
9540
【Java小工匠聊密码学】--非对称加密--概述
对称加密和非对称加密
1.什么是对称加密,非对称加密 对称加密是指加解密使用的是同样的密钥 非对称加密是指加解密使用的密钥不同。
yaphetsfang
2020/07/30
1.7K0
对称加密和非对称加密
对称加密与非对称加密的区别
👨‍🎓作者:Java学术趴 🏦仓库:Github、Gitee ✏️博客:CSDN、掘金、InfoQ、云+社区 💌公众号:Java学术趴 🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。 🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。 ☠️每日毒鸡汤:放心,闭上眼,睡一觉,反正明天也不一定比今天好。 1.2 对称加密 1.2.1 对称加密算法的概念 对称加密: 对称加密指的是加密和解密使用相同密钥的加密算法,也称为单密码加密。他的
Java学术趴
2022/08/09
1.4K0
对称加密与非对称加密
计算机网络在给我们带来便利的同时,也存在很多安全隐患,比如信息伪造,病毒入侵,端点监听,SQL 注入等,给我们日常生活造成很严重的影响。
ICT系统集成阿祥
2024/12/03
1980
对称加密与非对称加密
非对称加密之RSA是怎么加密的
前几天阿粉刚刚说了这个 MD5 加密的前世今生,因为 MD5 也确实用的人不是很多了,阿粉就不再继续的一一赘述了,今天阿粉想给大家分享的,是非对称加密中的一种,那就是 RSA 加密算法。
Java极客技术
2022/12/04
1.2K0
软考高级:对称加密和非对称加密的区别优缺点以及常见的算法
加密和非对称加密是现代加密技术中最基础也是最重要的两种加密方式,它们在保证信息安全传输方面扮演着重要角色。下面我将分别介绍它们的概念、区别、优缺点以及一些常见的算法。
明明如月学长
2024/05/24
2860
理解证书验证系列——SSH
公钥登录是为了解决每次登录服务器都要输入密码的问题,流行使用RSA加密方案,主要流程包含:
mingjie
2022/05/12
7280
PHP 使用非对称加密算法(RSA)
  以前一直对客户端传给服务器的信息加密这一块一脸懵,如果app里面的用户登录信息被抓包拿到了,大写着 username:root,password:123456,  那不是很尴尬。
Lansonli
2021/10/09
1.9K0
java实现非对称加密
对称加密:加密和解密的过程使用的是相同的密钥 非对称加密 与对称加密不同,非对称加密算法的加密和解密使用不同的两个密钥.这两个密钥就是我们经常听到的”公开密钥”(公钥)和”私有密钥”(私钥). 公钥和
秋白
2018/05/24
2.2K0
重识Nginx - 13 对称加密与非对称加密的应用场景 & Nginx性能指标
接下来我们以RC4(Rivest Cipher 4 , 流加密算法,密钥长度可变) 为例,来推演一下对称加密的过程。 【二进制下用1表示真,0表示假,则异或的运算法则为:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同为0,异为1)】
小小工匠
2022/10/05
4180
重识Nginx - 13 对称加密与非对称加密的应用场景 & Nginx性能指标
每日一博 - 对称加密算法 vs 非对称加密算法
我们今天来梳理一下将分别介绍这两种加密算法的优缺点,并通过Java代码实现和测试结果来验证其效果。
小小工匠
2023/05/29
4820
加密与安全_探索非对称加密算法_RSA算法
加密与安全_探索密钥交换算法(Diffie-Hellman算法) 中我们可以看到,公钥-私钥组成的密钥对是非常有用的加密方式,因为公钥是可以公开的,而私钥是完全保密的,由此奠定了非对称加密的基础。
小小工匠
2024/05/26
2000
相关推荐
对称加密与非对称加密
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档