#原文来自:https://www.cnblogs.com/xdp-gacl/p/3744053.html  截取的片段,博主写的很好。

3.1、对称加密

采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。
需要对加密和解密使用相同密钥的加密算法。由于其速度快,对称性加密通常在消息发送方需要加密大量数据时使用。对称性加密也称为密钥加密。
所谓对称,就是采用这种加密方法的双方使用方式用同样的密钥进行加密和解密。密钥是控制加密及解密过程的指令。算法是一组规则,规定如何进行加密和解密。
加密的安全性不仅取决于加密算法本身,密钥管理的安全性更是重要。因为加密和解密都使用同一个密钥,如何把密钥安全地传递到解密者手上就成了必须要解决的问题
常用的对称加密有:DES、IDEA、RC2、RC4、SKIPJACK、RC5、AES算法等

3.2、非对称加密

  非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。另一方面,甲方可以使用乙方的公钥对机密信息进行签名后再发送给乙方;乙方再用自己的私匙对数据进行验签。

非对称加密工作原理

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的私钥

  发送方使用接收方的公钥对数据加密,而接收方则使用自己的私钥解密,这样,信息就可以安全无误地到达目的地了,即使被第三方截获,由于没有相应的私钥,也无法进行解密。通过数字的手段保证加密过程是一个不可逆过程,即只有用私有密钥才能解密。

  非对称性加密依然没有解决数据传输的安全性问题,比如A想向B发数据,B首先生成一对密钥(公钥和私钥),然后将公钥发给A,A拿到B发给他的公钥有就可以使用公钥加密数据后发给B,然而在B公钥发送给A的这个过程中,很有可能会被第三方C截获,C截获到B的公钥后,也使用B的公钥加密数据,然后发给B,B接收到数据后就晕了,因为搞不清楚接收到的数据到底是A发的还是C发的,这是其中一个问题,另一个问题就是,C截获到B发的公钥后,C可以自己生成一对密钥(公钥和私钥),然后发给A,A拿到公钥后就以为是B发给他的,然后就使用公钥加密数据发给B,发送给B的过程中被C截获下来,由于A是用C发给他的公钥加密数据的,而C有私钥,因此就可以解密A加密过后的内容了,而B接收到A发给他的数据后反而解不开了,因为数据是用C的公钥加密的,B没有C的私钥,所以就无法解密。所以,非对称性加密存在一个问题:A想向B发数据,A如何确定拿到的公钥一定是B发的呢?那么如何解决这个问题呢?只能靠一个第三方机构(CA机构,即证书授权中心(Certificate Authority ),或称证书授权机构)来担保。A想向B发数据,B首先将公钥发给CA机构,CA机构拿到B的公钥后跑到B的家里问:这是你发的公钥吗?B确认过后说是:没错,是我发的!那么此时CA机构就会为B的公钥做担保,生成一份数字证书给B,数字证书包含了CA的担保认证签名和B的公钥,B拿到CA的这份数字证书后,就发给A,A拿到数字证书后,看到上面有CA的签名,就可以确定当前拿到的公钥是B发的,那么就可以放心大胆地使用公钥加密数据,然后发给B了。

转载于:https://www.cnblogs.com/stuka/p/11242240.html

加密原理公钥私钥CA相关推荐

  1. 数字证书原理,公钥私钥加密原理

    文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用.接着对数字证书做一个详细的解释,并讨论一下windows中数字证书的管理, ...

  2. 加密/解密 公钥/私钥

    一:加密/解密 加密:将明文转换成密文的过程 解密:将密文转换成明文的过程 二:秘钥 秘钥的实质是一个字符串,其度量单位为bit(位),按照秘钥的使用方式,加密可以分为两大类,对称加密和非对称加密,对 ...

  3. 网络安全、安全服务、加密原理及加密流程

    [声明]本文摘自 思锐论坛 第一部分:网络安全介绍 一.安全简介 第一节:安全系统概念 简介和目标 安全攻击:情况(SITUATION) 安全系统:属性(ATTRIBS) 资源组:威胁(threats ...

  4. http_认证机制https加密TLSSSL密钥对(公钥私钥)

    文章目录 http_认证机制&https加密&TLS&SSL&密钥对(公钥&私钥) references 更多详情(MDN::HTTP) session& ...

  5. ca证书原理以及加密原理

    转自:https://www.cnblogs.com/JeffreySun/archive/2010/06/24/1627247.html 尊重原创 文中首先解释了加密解密的一些基础知识和概念,然后通 ...

  6. RSA不对称加密,公钥加密私钥解密,私钥加密公钥解密

    RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作. RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一 ...

  7. Git原理 SSH 公钥 私钥的理解

    参考URL:[Jenkins][Git]ssh原理以及与https的区别 - 疲惫的豆豆 - 博客园 基本概念 密钥对:在非对称加密技术中,有两种密钥,分为私钥和公钥,私钥是密钥对所有者持有,不可公布 ...

  8. JAVA产生加密公钥私钥_Java生成非对称型加密的公钥和私钥

    下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. import java.io.*; import java.security.*; imp ...

  9. WebAPi接口安全之公钥私钥加密

    WebAPi使用公钥私钥加密介绍和使用 随着各种设备的兴起,WebApi作为服务也越来越流行.而在无任何保护措施的情况下接口完全暴露在外面,将导致被恶意请求.最近项目的项目中由于提供给APP的接口未对 ...

最新文章

  1. 第106天:Ajax中同步请求和异步请求
  2. 在虚拟机上linux系统上上网
  3. 暖通空调水系统分类、“管制”和同程异程式的优缺点
  4. 如何把winPE装到硬盘隐藏起来
  5. 招生 | 上海交通大学人工智能课题组招收博士生
  6. 力压华为小米!安兔兔1月安卓性能榜第一名是它!
  7. js跨域的各种方法总结。
  8. 关于Linux下使用Windows应用程序的尝试总结
  9. 解决Android SDK Manager更新、下载速度慢
  10. ASP.NET MVC 5高级编程 (pdf书)
  11. ddm模型公式_DDM模型绝对估值模型的理解和运用 分析师会利用DDM模型来给公司定价,如果投资者过于依赖,这样可能会给我们很好的机会,在他们犯错误时,就是我们把握机会的时... - 雪球...
  12. fifo的rdata_同步Fifo和异步fifo
  13. 嵌入式linux 使用ntpdate命令同步时间
  14. 2.VIM文本编辑器的下载与使用
  15. adb安装apk失败解决办法
  16. 问君硅谷几多渣?先把Snapchat总裁扒一扒
  17. Python爬虫的起点!学爬虫从起点开始!
  18. linux宝塔视频教程,linux 宝塔面板安装rtmp简陋教程 (已加视频版教程)
  19. mit数据库 matlab,[zz]MIT-BIH开放数据库使用指南
  20. 基于神威·太湖之光的超大规模图计算系统“神图” 2019-12-16 14:10:29 作者:Fma

热门文章

  1. MongoDB数据库操作
  2. Node js npm 包管理工具的基本使用
  3. rsync同步工具学习笔记
  4. Oracle 12c与GoldenGate 12c的一些问答
  5. 第一个flash游戏--配对游戏
  6. 在GridView里使用CheckBox
  7. 三菱数据移位指令_三菱plc移位指令用法详解
  8. python3字典菜鸟教程_Python3 字典(map)
  9. php按城市显示搜索结果,在php错误中突出显示搜索结果
  10. Oracle 复制一条 改主键,在一个表中复制一条同样的记录到同一个表中,只修改主键内容(200分)...