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

news2025/1/17 18:00:40

公钥密码学解释:它是什么? 公钥基础设施 (PKI) 用于管理互联网通信中的身份和安全性。 启用 PKI 的核心技术是公钥密码术,这是一种依赖于使用两个相关密钥(公钥和私钥)的加密机制。 这两个密钥一起用于加密和解密消息。 以这种方式配对两个加密密钥也称为非对称加密。 公钥加密使用加密算法来保护身份和数据免遭未经授权的访问或使用,防止来自网络犯罪分子和其他恶意行为者的攻击。

公钥加密的工作原理

公钥由一串随机数组成,可用于加密消息,只有预期的接收者才能使用相关联的私钥解密和读取该消息,私钥也是由一长串随机数组成的。此私钥是秘密密钥,并且必须只为接收者所知。密钥对在数学上是相关的,因此使用公钥或私钥加密的任何内容都只能由其对应的对应方解密。

公钥加密的好处

公钥加密的主要好处是大规模提高数据和身份安全性。使该过程安全的是私钥由其所有者保密,并且不需要任何人透露或共享私钥。

虽然这似乎违反直觉,但使用由两个私钥组成的密钥对来加密和解密敏感信息并不比非对称加密更安全。使用具有两个私钥的对称密钥算法要求通信双方都可以访问密钥,从而增加了风险,因为现在双方都需要保密。此外,对称密钥算法不能轻易扩展,因为几乎不可能协调私下共享所有必要的私钥组合所需的大量连接。

公钥密码体系结构的可扩展性如此之高,以至于它能够保护组织每天通过自己的网络和互联网交换的数十亿条消息。实现这一点的原因是,公钥可以广泛且公开地分发,而恶意行为者无法发现解密消息所需的私钥。

公钥和私钥的区别

在公钥密码术中,加密密钥(可以是公钥或私钥)用于加密纯文本消息并将其转换为称为密文的编码格式。然后用另一个密钥作为解密密钥来解密这个密文,以便接收者可以阅读原始消息。简而言之,公钥与私钥之间的主要区别在于一个加密而另一个解密。

请注意,此加密和解密是自动发生的,对用户是不可见的。

公钥如何工作

什么是公钥?公开密钥供全世界查看。公钥是使用复杂的非对称算法创建的,以将它们与关联的私钥配对。用于生成公钥的最常用算法是:

  • Rivest-Shamir-Adleman (RSA)
  • 椭圆曲线密码学 (ECC)
  • 数字签名算法 (DSA)

这些算法使用各种计算方法来生成不同长度的随机数字组合,因此它们不能被蛮力攻击所利用。公钥的密钥大小或比特长度决定了保护的强度。例如,2048 位 RSA 密钥通常用于 SSL 证书、数字签名和其他数字证书。此密钥长度提供了足够的加密安全性,以防止黑客破解算法。 CA/浏览器论坛等标准组织定义了支持的密钥大小的基线要求。

私钥如何工作

什么是私钥?与可公开访问的公钥不同,私钥是只有其所有者知道的密钥,私钥和公钥配对,以便接收者可以使用相应的密钥来解密密文并读取原始消息。私钥是使用创建公钥的相同算法生成的,以创建以数学方式绑定的强密钥。

使用公钥对确保安全性和身份

使用公钥对的非对称加密的独特优势之一是能够确保加密消息的安全性和发送者的身份。在寻求确保消息的安全性时,发送者会查找接收者的公钥并使用它来加密消息。消息可以在 Internet 上公开传输,并且由于只有接收者可以使用适当的私钥解密消息,因此可以确保安全传输。

但是使用密钥对的顺序可以翻转以确保发送者的身份。如果发件人使用私钥对消息进行加密,收件人可以使用发件人的公钥对其进行解密和阅读。由于任何人都可以使用发件人的公钥解密消息,因此消息传输不一定安全,但由于只有发件人知道私钥,因此可以保证消息来自该机器。

公钥密码学的常见应用

许多协议依赖于非对称加密,并且该技术有许多应用,包括 Web 服务器安全、数字签名 和文档签名 以及数字身份。

网络服务器安全

公钥加密是安全套接字层 (SSL) 和传输层安全 (TLS) 协议的基础,它们是 HTTPS 安全浏览器连接的基础。如果没有 SSL 证书或 TLS 来建立安全连接,网络犯罪分子可以利用 Internet 或其他 IP 网络使用各种攻击媒介(例如中间人攻击)来拦截消息并访问其内容。公钥密码学作为一种数字指纹验证来验证收件人和发件人的身份,并可以阻止中间人攻击。

数字签名和文件签名

除了用于加密消息外,密钥对还可用于数字签名和文档签名。公钥密码术使用发送者的私钥来验证数字身份。这种加密验证在数学上将签名绑定到原始消息,以确保它没有被更改。

数字身份

公钥和私钥对也提供有效的身份认证。随着数据和应用程序从传统网络扩展到移动设备、公共云、私有云和物联网设备,保护身份变得比以往任何时候都更加重要。数字身份不必局限于设备;它们还可用于对人员、数据或应用程序进行身份验证。使用非对称加密的数字身份证书使组织能够通过替换密码来提高安全性,攻击者越来越擅长窃取密码。

公钥加密的其他应用包括 S/MIME 证书 ,用于验证电子邮件发件人并加密电子邮件内容以防止鱼叉式攻击,以及 SSH 密钥以控制员工对服务器的访问。

证书颁发机构在公钥密码学中的作用

启用公钥加密的关键组件是发布与个人私钥相关联的公钥的受信任代理。如果没有这种受信任的权威,发件人就不可能知道他们实际上使用的是与收件人的私钥相关联的正确公钥,而不是意图拦截敏感信息并将其用于邪恶目的的恶意行为者的密钥。

这些受信任的代理称为证书颁发机构 (CA)。 WoTrus等受信任的第三方组织充当私有证书颁发机构,但许多企业和技术提供商也选择充当自己的 CA。无论哪种方式,都必须信任证书颁发机构来检查和保证他们发布其公钥的所有发件人的身份,确保这些公钥确实与发件人的私钥相关联,并保护其内部的信息安全级别自己的组织来防范恶意攻击。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/10070.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CM311-3_YST_晨星MSO9385_2+8_安卓9.0_TTL免费升级固件【含教程】

新魔百盒CM311-3_YST_晨星MSO9385_28_安卓9.0_TTL免费升级固件【含教程】 固件特点: 1、修改dns,三网通用; 2、开放原厂固件屏蔽的市场安装和u盘安装apk; 3、无开机广告,无系统更新,不在被强制升级&…

网站攻击技术,一篇打包带走!

大家好,今天给大家介绍一下,Web安全领域常见的一些安全问题。 1. SQL 注入 SQL注入攻击的核心在于让Web服务器执行攻击者期望的SQL语句,以便得到数据库中的感兴趣的数据或对数据库进行读取、修改、删除、插入等操作,达到其邪恶的…

分布式应用之监控平台zabbix的认识与搭建

内容预知 1.监控系统的相关知识 1.1 监控系统运用的原因 1.2 网站的可用性 1.3 市面上常用的监控系统 2.zabbix的相关知识 2.1 zabbix的概述 2.2 zabbix 是什么? 2.3 zabbix的监控原理 2.4 zabbix监控系统中五个常用程序 3. zabbix 服务端的部署 4. 部署…

C++ 不知图系列之基于链接表的无向图最短路径搜索

1. 前言 图的常用存储方式有 2 种: 邻接炬阵。 链接表。 邻接炬阵的优点和缺点都很明显。优点是简单、易理解,但是对于大部分图结构而言,都是稀疏的,使用矩阵存储,空间浪费就较大。 链接表相比较邻接矩阵存储方案…

团队的Code Review实践

高效地进行 Code Review 一直是我们想要做的事情,如何持续保持高效 Review 也是我们日常开发中所亟需解决的问题。 在疫情爆发之前,团队大多是线下一起办公。大家会聚在一起 Code Review,把讨论出的反馈记录在便利贴并贴在白板上。而当远程、…

Baklib|如何为你的营销计划制作Wiki页面

当你需要快速查找信息时,你会怎么做?很有可能,你会直接去谷歌——在输入你的查询之后,十有八九,搜索引擎会带你去wiki百科。wiki百科是一个巨大的在线百科全书。在这个数据库中,几乎所有的文章都有链接。 现在想象一…

Maven之POM介绍

POM介绍前言POM基础为什么要学习POM什么是POMSuper POMMinimal POM(POM的最低配置)POM特点Project Inheritance(项目继承性)Project Aggregation(项目聚合)Project Inheritance VS Project AggregationProject Interpolation and …

《FFmpeg Basics》中文版-00-简介

欢迎 亲爱的读者们, 欢迎来到这本书,它将使您熟悉FFmpeg项目的许多有趣的特性。下面的几个大公司都是FFmpeg使用者: Facebook,最大的社交网络,用FFmpeg技术处理用户的视频。Google Chrome,流行的web浏览器&#xff0…

EDI通信中常用的网络排查方法

在知行之桥EDI系统运维工作中不可避免会碰到各种网络问题,本文将分享一些我们运维同事常用的一些网络问题排查定位方法,帮助大家快速的定位原因,解决通信问题。 1.Ping: 作用:ping用于确定本地主机是否能与另一台主机…

shell脚本下用plot给iostat和CPU的采样画图的写法

目前大多的互联网客户,在导入SSD之前,基本会要求OEM或者SSD厂商提供一些性能数据图,所以 作图也基本成了测试人员的必备技能,单盘的性能可以用Excel表格导入,但是复杂的可能会比较麻烦。就需要我们借助工具来作图了。 本篇文章简单…

第9章 Apache-Dbutils实现CRUD操作

1. Apache-DBUtils简介 *commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影响程序的性能。 *API介绍: org.…

java和vue的大学生奖学金助学金系统奖学金系统助学金系统

简介 大学生奖学金助学金系统。学生申请自己需要的奖助学金,上传证明材料。该学院的辅导员可以下载学生的证明材料以及根据学生的综合成绩来审核是否通过,若不通过请输入不通过原因。管理员可以导入学生excel和辅导员excel以及学生综合成绩excel、分布公…

鲲鹏代码迁移工具介绍

鲲鹏代码迁移工具介绍 代码迁移工具介绍 代码迁移工具是什么? ✨我们为什么会需要用到代码迁移工具? ✨处理器所支持的指令集不同,意味着开发者可能需要对代码进行跨平台的迁移。 这里我们常见到便是x86平台的代码往arm平台进行迁移 通常…

主流组件库学习

主流组件库差异性对比 NutUI - 京东研发的移动端 UI 组件库,支持 Vue3、Taro 多端适配,面向电商业务场景Vant - 有赞研发的移动端 UI 组件库,支持 Vue3、微信小程序、支付宝小程序TDesign Mobile - 腾讯研发的移动端组件库,适合在…

Redis第二章_实战篇_短信登录+缓存策略+秒杀+分布式锁>>

Redis第二章_实战篇_短信登录缓存策略秒杀分布式锁>> 文章目录Redis第二章_实战篇_短信登录缓存策略秒杀分布式锁>>开篇导读1、短信登录1.1、导入黑马点评项目1.1.1 、导入SQL1.1.2、有关当前模型1.1.3、导入后端项目1.1.4、导入前端工程1.1.5 运行前端项目1.2 、基…

Spring(十一)- Spring Bean的依赖注入注解

文章目录一、Spring Bean的依赖注入注解1. 通过Value直接注入普通属性2. 通过Value注入properties文件中的属性3. Autowired注解,用于根据类型进行注入4. Qualifier配合Autowired可以完成根据名称注入Bean实例,使用Qualifier指定名称5. Resource注解既可…

三款Zookeeper可视化工具、ZooInspector、prettyZoo、ZooKeeperAssistant

三款Zookeeper可视化工具、ZooInspector、prettyZoo、ZooKeeperAssistant①Zookeeper图形化工具:ZooInspector1.下载完后,解压压缩包,进入zookeeper-dev-ZooInspector.jar目录后执行run jar包命令2.登录客户端:输入zk服务的ip和端…

XCTF1-web disabled_button weak_auth view_source cookie backup

一个不能按的按钮 题目描述 X老师今天上课讲了前端知识,然后给了大家一个不能按的按钮,小宁惊奇地发现这个按钮按不下去,到底怎么才能按下去呢? 进入场景 题目提示为前端设置的问题,查看网页源码,定位…

Django + Nginx https部署实战(第二辑)

如何使用Nginx把网站升级为Https? Https是Http协议的升级版,由于证书的引入,使得用户与网站之间的通讯变得更加安全。 在使用https之前,我们必须了解的事情 证书颁发机构 证书颁发机构是一家知名且受信任的组织,它对网…

基于MMDetection训练VOC格式数据集

一 环境说明 基于前述安装MMDetection,数据集为VOC格式,主要版本如下: Python:3.7.8 CUDA:11.3 cuDNN:8.4.0 torch:1.12.0 torchvision:0.13.0 mmcv-full:1.6.0 MMDetec…