对称加密和非对称加密(一)初步理解
先查大范围 专业术语 再查小范围 便于理解 宏观概念
然后针对小范围的点,去精准查询 理解细节
一、面临的问题: 密钥分发
在加密算法之外,面临一个问题,那就是:秘钥的分发。就是说,解密方如何获得加密方的秘钥呢? 从而出现了:对称加密和非对称加密。
二、对称加密和非对称加密
1. 对称加密
对称加密指的就是加密和解密使用同一个秘钥,所以叫做对称加密。对称加密只有一个秘钥,作为私钥。
常见的对称加密算法:DES,AES,3DES等等。
2. 非对称加密
非对称加密指的是:加密和解密使用不同的秘钥,一把作为公开的公钥,另一把作为私钥。公钥加密的信息,只有私钥才能解密。私钥加密的信息,只有公钥才能解密。
常见的非对称加密算法:RSA,ECC
3. 区别
对称加密算法相比非对称加密算法来说,加解密的效率要高得多。但是缺陷在于对于秘钥的管理上,以及在非安全信道中通讯时,密钥交换的安全性不能保障。所以在实际的网络环境中,会将两者混合使用.
例如针对C/S模型,
1. 服务端计算出一对秘钥pub/pri。将私钥保密,将公钥公开。
2. 客户端请求服务端时,拿到服务端的公钥pub。
3. 客户端通过AES计算出一个对称加密的秘钥X。 然后使用pub将X进行加密。
4. 客户端将加密后的密文发送给服务端。服务端通过pri解密获得X。
5. 然后两边的通讯内容就通过对称密钥X以对称加密算法来加解密。
对称加密和非对称加密的区别
1对称加密:加密解密用同一个密钥,被黑客拦截不安全
2非对称加密:公钥加密,私钥解密;公钥可以公开给别人进行加密,私钥永远在自己手里,非常安全,黑客拦截也没用,因为私钥未公开。著名的RSA加密算法用的就是非对称加密。
第一步:ipB先给A发送B公钥,ipA用B公钥加密A公钥发送给ipB,ipB拿到后,用B私钥去取里面内容,ipB拿到A公钥。
第二步:双方通信用对方公钥直接加密后发送。接收方用自己的私钥去解密。
举例子理解:
最简单易懂的非对称加密
北京的张三发了一个快递到广州的李四,途中经过了上海,上海快递中心出现了一个黑客老王,他偷偷打开了张三给李四的快递,然后偷偷把里边的衣服剪烂,再按照原样包装好发往广州,可以看到对于这样简单包装的传输在中途是可以偷偷修改里边的东西。
HTTP的数据包是明文传输,也即是如果中途某个黑客嗅探到这个HTTP包,他可以偷偷修改里边包的内容,至于张三跟李四是互相不知道这个动作的,因此我们必须要有一个方案来防止这种不安全的篡改行为,有个方法就是加密!
非对称加密
张三将衣服放到一个保险箱里边锁起来,他打了个电话告诉李四保险箱开柜密码是1234,而黑客老王不知道密码,所以他看不到保险箱里边的东西,李四收到快递后用预先沟通好的密码就可以打开保险箱了。
这里保护的手段就是张三对物品进行加密,同时给了告诉李四解密的方法!
那如果现在要求张三的密码只能通过快递传给李四呢?如果张三直接传密码给李四,老王如果嗅探到这个快递,那老王也知道密码了,这就无法保护快递的安全性了。因此还需要有个方案,让张三能够告诉李四密码的同时,老王又无法查看到张三跟李四通信的数据。
非对称加密在这个时候就发挥作用了,来看看怎么回事:
张三拥有两把钥匙,一把叫做公钥,一把叫做私钥。公钥是公开让全社会都知道,没关系,张三告诉所有人,你们要传递数据给我的时候请先用这个密钥(公钥)去加密一下你们的数据,加密后的数据只能通过张三私自藏着的私钥才能解密。
回到刚刚例子,
张三先发给保险柜(张三公钥)给李四,
接着李四把自己的保险柜(李四公钥)放到张三的保险柜(即使用张三的公钥加密李四的公钥)里边发还给张三,
接着张三拿到李四的数据包后,用自己的私钥解开了外层保险柜(张三的公钥),拿到了里边李四保险柜(李四的公钥)。
此时李四跟张三都有了各自的公钥(并且都有他们自己的私钥),接着只要保证每次互相传递数据的时候,把数据放在对方的保险柜里边即可(即每次都用对方的公钥加密数据),这样无论如何,老王都无法解开保险柜(因为只有各自的私钥才能解开各自的保险柜)。
对称加密和非对称加密(一)初步理解相关推荐
- 对称加密、非对称加密、公钥、私钥究竟是个啥?
文章目录 前言 对称加密 对称加密示例 对称加密的问题 密钥配送 非对称加密 公钥与私钥 非对称加密的示例 怎么判断解开 非对称加密的问题 对称加密和非对称加密对比 总结 前言 世界上有没有不能破解的 ...
- 浅谈对称加密与非对称加密
在数字加密算法中,通过可划分为对称加密和非对称加密. 一:什么是对称加密? 在对称加密算法中,加密和解密使用的是同一把钥匙,即:使用相同的密匙对同一密码进行加密和解密: 加密过程如下: 加密:原文 + ...
- 对称加密、非对称加密深度解析
密码学的发展 加密的发展史随着人类的进化逐步复杂.严谨也更安全,对于早期的移位和字母对应等加密方式我们不难理解. 移位 : 比如恺撒密码, 简单点说将 26个英文字母的顺序打乱,得到一个新的字母顺序, ...
- HTTPS是对称加密还是非对称加密?
你知道,HTTPS用的是对称加密还是非对称加密? HTTPS灵魂拷问 1)为什么用了 HTTPS 就是安全的? 2)HTTPS 的底层原理如何实现? 3)用了 HTTPS 就一定安全吗? 不用担心,本 ...
- 对称加密、非对称加密、RSA、消息摘要、数字签名、数字证书与 HTTPS 简介
文章目录 1.加密算法简介 1.1 对称加密(Symmetric Key Algorithms) 1.2 非对称加密(Asymmetric Key Algorithms) 1.3 非对称加密 RSA ...
- JackHttp -- 浅谈编码、加密(对称加密,非对称加密,Hash算法)
如果你还不清楚 JackHttp 是什么,请戳这里!!! JackHttp 是一个网络框架系列,为什么还要分享编码和加密呢?主要有如下几个原因: HTTP 在网络传输过程中是明文的. HTTP 在网络 ...
- SSL/TLS、对称加密和非对称加密和TLSv1.3
本文主要对对称加密和非对称加密的原理以及过程进行分析,同时还会简单介绍一下TLS/SSL的一些相关内容,并且对比TLSv1.2和TLSv1.3的不同. 1.SSL和TLS的历史 其实早期的互联网协议基 ...
- 通俗解释对称加密、非对称加密、散列算法与PKI
这是我前些年写在51的,现在转过来,其实是CISSP的学习笔记,用自己的语言组织起来的,用通俗的话说明对称加密.非对称加密.散列算法.PKI(CA)到底都是干啥的.OK,进入主题: 密码学要解决的问题 ...
- 对称加密、非对称加密、数字证书
(转)白话数字签名(1)--基本原理(新!) 摘要 本系列通过通俗易懂的讲解,让您就像读小说一般,轻轻松松就能理解数字签名的基本原理和应用方法(即使您是一个并不精通计算机的企业老总,也能读懂本篇文章) ...
最新文章
- 苹果手机微信声音小怎么调大声_成都市苹果手机维修服务网点查询
- matlab simulink笔记05 —— 积分模块
- php组合查询,PHP组合查询多条件查询实例代码第1/2页
- python中的进程, 线程
- python线程wait_python基础线程-管理并发线程
- 来FAL学风控|风控策略分析师的日常是怎样的?(案例+代码详解篇)
- 60个有用CSS代码片段
- nx编译安装车牌检测库hyperlpr
- 【python6】快递分拣小程序
- golang解决数据库中null值的问题
- C++生成0到1之间的随机数
- Android SIGABRT的可能原因及开启手机Log日志
- VsCode插件安装及推荐
- 工业元宇宙 三人行系列直播 12场规划
- win32模态与非模态对话框
- 微信支付的软件架构也太特么牛逼了吧...
- Oracle v12.2 Bug 27163928触发ORA-4031 导致实例crash.
- 【笨木头Unity】入门之旅010(完结):Demo之四处找死(五)_UI
- CSS笔记 (参考很多文章 非原创)
- SAP系统邮件功能配置