一、公钥与私钥

在非对称加密中,我们会用到两个密钥,一个是公钥,另一个是私钥。公钥是给别人的,别人持有的;而私钥是你自己的,只能你持有,别人是不可以持有的。

二、签名验证算法和加密算法

1.首先,我们要知道什么是签名验证算法,什么是加密加密算法。
签名验证算法:用来证明这个消息是自己发的,别人不可以冒充自己发送消息。
加密算法:用来对要发送的消息内容进行加密,不想让别人看见你发送的消息内容。
2.如何进行签名验证,如何进行加密。
签名验证算法中,我们需要使用自己的私钥去对消息摘要数据(哈希值)进行加密,公钥是用来对签名进行验证的。因为只有你持有私钥,因此,别人是无法冒充你,去对消息摘要数据进行加密,进而无法冒充你去发信息,或者对消息进行篡改。因此,它保证了消息的不可抵赖性与不可篡改性。
在加密算法中,别人使用你给他的公钥对它要发生给你的消息进行加密,由于其他人没有你的私钥,是无法进行解密的。因此,他是保证消息的机密性的。

三、总结

1.非对称加密中的公钥和私钥的用途:

一是用来加解密:公钥加密,私钥解密。

使用公钥加密,私钥解密,用于向公钥所有者发布信息,这个信息可能被他人篡改,但是无法被他人获得.

二是用来签名:私钥签名,公钥验证。

使用私钥加密,公钥解密,用于让所有公钥所有者验证私钥所有者的身份并且用来防止私钥所有者发布的内容被篡改.但是不用来保证内容不被他人获得.既然是签名,那肯定是不希望有人冒充我发消息,只有我才能发布这个签名,所以可得出私钥负责签名,公钥负责验证。

2.发送的消息既要保证机密性、不可篡改性、不可抵赖性。
如果甲想给乙发一个安全的保密的数据,那么应该甲乙各自有一个私钥,甲先用自己的私钥加密这段的数据消息摘要数据进行加密,再用乙的公钥加密这段数据,最后再发给乙,这样确保了内容即不会被读取,也不会被篡改,并且可以确认发送者的身份。

公钥和私钥的区别与应用-----到底谁来加密谁来解密相关推荐

  1. 【加密】对称加密DES和非对称加密AES、数字签名|非对称加密--公钥和私钥的区别

    目录 对称加密DES和非对称加密AES.数字签名 对称加密 1.1 定义 1.2 优缺点 1.3 常用对称加密算法 非对称加密( Asymmetric Cryptography ) 非对称加密(现代加 ...

  2. RSA算法习题 (采用RSA算法,其中e=7,p=11,q=13,求出公钥和私钥,并求出明文85进行加密后的密文。)

    1.采用RSA算法,其中e=7,p=11,q=13,求出公钥和私钥,并求出明文85进行加密后的密文. 2. 找出质数 P.Q P=11 Q=13 3. 计算公共模数 N = P * Q = 143 4 ...

  3. 公钥和私钥怎么生成_有趣图文帮你通俗易懂地理解公钥和私钥的区别以及与CA证书等概念...

    导读:Linux系统上非对称性加密需要用到公钥.私钥.也常涉及到数字签名.数字证书.CA证书等概念.本文通过有趣的海绵宝宝和它小伙伴故事搭配有趣的图片形式来阐述这些概念,希望能帮助读者更简单易懂地理解 ...

  4. 公钥和私钥的作用和区别

    1. 加密和认证 在认识公私钥之前,首先我们需要区分加密和认证这两个基本概念: 加密是将数据资料加密,使得非法用户即使取得加密过的资料,也无法获得正确的资料内容,所以数据加密可以保护数据,防止监听攻击 ...

  5. 公钥密码学中的公钥和私钥

    公钥密码学解释:它是什么? 公钥基础设施 (PKI) 用于管理互联网通信中的身份和安全性. 启用 PKI 的核心技术是公钥密码术,这是一种依赖于使用两个相关密钥(公钥和私钥)的加密机制. 这两个密钥一 ...

  6. 公钥私钥 多久过期_公钥和私钥的解释

    先前我曾经写了一篇"网站的安全登录认证设计",可能是讲述的不够清楚,有一位读者就留言质疑到,"公钥顾名思义就是公开的啦,只要你愿意,谁都会有你的公钥,何来安全?应该是用网 ...

  7. windows使用openssl生成公钥和私钥

    本文首先简单介绍一下openssl.接着描述如何在windows环境下简单使用openssl,并生成公钥和私钥.最后介绍使用了RSA非对称加密传输应用实例的微信小程序:密码盾. 一.openssl简介 ...

  8. 密码学===公钥和私钥解释

    先前我曾经写了一篇"网站的安全登录认证设计",可能是讲述的不够清楚,有一位读者就留言质疑到,"公钥顾名思义就是公开的啦,只要你愿意,谁都会有你的公钥,何来安全?应该是用网 ...

  9. 公钥和私钥怎么生成_科普 | Eth2 验证者如何生成和保护取款密钥

    来源 | 以太坊爱好者 作者|Jim McDonald责编|晋兆雨 取款密钥是什么? 取款密钥(withdrawal key)是以太坊 2.0 中的验证者用来提现以太币的密钥 [1].以太坊 2.0 ...

  10. 公钥,私钥和数字签名

    一.公钥加密  假设一下,我找了两个数字,一个是1,一个是2.我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥. 我有一个文件,不能让别人看,我就用1加密了.别人找到了这 ...

最新文章

  1. Java 学习内容总结
  2. Open NI for Kinect安装测试
  3. 【ThinkPHP系列篇】Thinkphp框架的CURD操作(三)
  4. VTK:Filtering之PerlinNoise
  5. Android Canvas画图形(更新中)
  6. Poj 1611 The Suspects
  7. 一个工作一年的程序员的告白
  8. oslo.config资源
  9. Python3多进程与多线程区别及使用(1.进程)
  10. 【python】pyhton中的and
  11. unity 导入STL格式模型(STL二进制格式文件)
  12. CAD的输出成高清jpg图片
  13. 计算机符号mi,在线特殊符号大全
  14. Software Protection无法启动造成slmgr.vbs激活win10失败
  15. vue中获取后一页面,前一页面的url
  16. [云原生专题-16]:容器 - 在Windows主机上搭建Docker环境
  17. 转载 PVE 防火墙
  18. 阿里云服务器配置远程打印机,电脑启用打印服务器配置
  19. 纪中游记 - Day 1
  20. Kafka SCRAM和PLAIN权限认证

热门文章

  1. python+selenium实现12306模拟火车票的查询及预订
  2. CS模式(客户端到服务器端)
  3. 点滴故事-写在我个人网站的0岁生日
  4. python三国演义人物 统计分析_使用python统计《三国演义》小说里人物出现次数前十名,并实现可视化。...
  5. ylinux系统找到软件_你的 linux 上都有什么值得推荐的软件?
  6. 阅读:IA-GCN: Interactive Graph Convolutional Network forRecommendation
  7. 通过Wachete实时监控网站更新
  8. 电脑 蓝屏 问题签名: 问题事件名称: BlueScreen OS 版本: 6.1.7600.2.0.0.256.1 区域设置 ID: 2052...
  9. 【第五届集创赛备赛】三、紫光同创李星钢赛题解读直播要点总结
  10. Java绩效评语_导师评语(转) - Java, Only Java! - BlogJava