一、公钥加密 
假设一下,我找了两个数字,一个是1,一个是2。我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥。

我有一个文件,不能让别人看,我就用1加密了。别人找到了这个文件,但是他不知道2就是解密的私钥啊,所以他解不开,只有我可以用
数字2,就是我的私钥,来解密。这样我就可以保护数据了。

我的好朋友x用我的公钥1加密了字符a,加密后成了b,放在网上。别人偷到了这个文件,但是别人解不开,因为别人不知道2就是我的私钥,
只有我才能解密,解密后就得到a。这样,我们就可以传送加密的数据了。

二、私钥签名
如果我用私钥加密一段数据(当然只有我可以用私钥加密,因为只有我知道2是我的私钥),结果所有的人都看到我的内容了,因为他们都知
道我的公钥是1,那么这种加密有什么用处呢?

但是我的好朋友x说有人冒充我给他发信。怎么办呢?我把我要发的信,内容是c,用我的私钥2,加密,加密后的内容是d,发给x,再告诉他
解密看是不是c。他用我的公钥1解密,发现果然是c。
这个时候,他会想到,能够用我的公钥解密的数据,必然是用我的私钥加的密。只有我知道我得私钥,因此他就可以确认确实是我发的东西。
这样我们就能确认发送方身份了。这个过程叫做数字签名。当然具体的过程要稍微复杂一些。用私钥来加密数据,用途就是数字签名。

转载于:https://www.cnblogs.com/laizhd/archive/2011/08/09/2132449.html

从些知道公钥密钥了,呜呜,激动ing~相关推荐

  1. linux 多个秘钥,linux管理多个ssh公钥密钥

    很多网上免ssh密码使用git的命令都没有考虑到多个公钥密钥的情况,这里搜集并整理一下管理多个ssh公钥密钥的步骤. 首先生成公钥和密钥,默认情况公钥的文件名比密钥末尾多.pub ssh-keygen ...

  2. [zz] 使用ssh公钥密钥自动登陆linux服务器

    目录 1.生成密匙对 2.拷贝公匙到远程机 3.启动登陆代理 这种方法处理后每次需要运行命令:ssh-add ~/.ssh/id_dsa 作为一名 linux 管理员,在多台 Linux 服务器上登陆 ...

  3. 转载:Openssl生成rsa和椭圆曲线加密公钥密钥创建根ca签名https服务器证书签名...

    转载:Openssl生成rsa和椭圆曲线加密公钥密钥创建根ca签名https服务器证书签名 Openssl生成rsa和椭圆曲线加密公钥密钥创建根ca签名https服务器证书签名 July 20, 20 ...

  4. 【服务器使用】SSH公钥密钥连接

    使用步骤 1.在本地的电脑上生成公钥和密钥,打开cmd命令行,输入: ssh-keygen 然后出现如下所示的效果图: 可以在本地的文件夹内看到对应的生成文件,如下 2.将本地生成的公钥上传到服务器当 ...

  5. 多个linux服务器免密登录,使用公钥密钥直接连接

    现有A.B两个服务器 1.在A服务器上生成密钥:ssh-keygen -t rsa 2.进入 A root/.ssh 目录下,下载 id_rsa.pub 文件 . 进入 B 服务器 root/.ssh ...

  6. 密码学---公钥密钥---背包密码体制

    背包密码体制 背包密码体制概念 背包密码体制流程 加密过程 加密实例 解密过程 超递增背包问题 贪婪算法 解密实例 改进 伪装超递增背包的实例 背包密码体制概念 背包问题就是从n个不同的正整数构成的n ...

  7. 私有密钥与公钥的用途与原理解析

    私有密钥与公钥的用途与原理解析 数字签名是什么? 作者: 阮一峰        http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_sig ...

  8. 密钥--公钥、私钥方式

    文件加密的方式为 密钥, 然后传输加密后的文件, 分为两种方式 私钥密钥方式-------对称密码体制,在传输过程中密钥是不公开的,解密密钥可以通过加密密钥推算出来,发送和接收方各有一个密钥,所以几个 ...

  9. 密钥,私钥,公钥的区分

    首先明确几个基本概念: 1.密钥对,在非对称加密技术中,有两种密钥,分为私钥和公钥,私钥是密钥对所有者持有,不可公布,公钥是密钥对持有者公布给他人的. 2.公钥,公钥用来给数据加密,用公钥加密的数据只 ...

最新文章

  1. 可恶的爬虫直接把生产6台机器爬挂了!
  2. 企业运维监控平台架构设计与实现
  3. java中的ThreadLocal
  4. osadmin php,OSAdmin - PHP开源管理后台
  5. 基于C++中常见内存错误的总结
  6. ffmpeg——vs集成ffmpeg相关开发
  7. C#时常需要调用C++DLL
  8. Csico CCNA学习笔记1_cdp telnet
  9. 数据治理为何越来越重要
  10. sql server 纵横表的转换
  11. 深圳地图echarts
  12. 第2章 大数据处理架构Hadoop
  13. Ubuntu20.04 electron ssr配置完不好用可能的原因
  14. 管理信息系统案例分析_BIM案例分析—地下空间工程(二)
  15. 破解使用radius实现802.1x认证的企业无线网络
  16. ADS1110/ADS1271
  17. 【Unity】基于顶点色的海边波浪效果(适用移动端)
  18. 使用Python+Appuim 清理微信
  19. 联想台式电脑重装系统教程
  20. GD32F303固件库开发(16)----移植兆易创新SPI Nor Flash之GD25Q64Flash

热门文章

  1. android 访问web.py,Appium 测试 Android 时,python 用例调用 Webdriver.remote 后无回应
  2. android 编程 输入矩阵,Android中Matrix的pre post set方法理解
  3. 学生成绩管理 php,php学生成绩管理系统(模板)
  4. STM8 ADC转换模式-------单次模式
  5. python 近期用到的基础知识汇总(八)
  6. python 近期用到的基础知识汇总(四)
  7. 2021高通人工智能应用创新大赛踩坑指南
  8. KmeansDBSCAN
  9. Pipenv – 超好用的 Python 包管理工具 1
  10. java多线程采集+线程同步-【多线程数据采集之四】