pki 体系_基于PKI体系的认证方式进行论述

pki 体系_基于PKI体系的认证方式进行论述首先,PKI(PublicKeyInfrastructure)是一个体系。公钥基础设施是一个包括硬件、软件、人员、策略和规程的集合,用来实现基于公钥密码体制的密钥和证书的产生、管理、存储、分发和撤销等功能。PKI体系是计算机软硬件、权威机构及应用系统的结合。它为实施电子商务、电子政务、办公自动化等提供了基本的安全服务,从而使那些彼此不认识或距离很远的用户能通过信任链安全地交流。—百度百科说白了,PKI还是提供了彼此身份确认的服务,确保通信的安全。…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

这是目前工作中遇到的一些知识点搜集整理。

一、什么是 PKI

首先,PKI(Public Key Infrastructure)是一个体系。

公钥基础设施是一个包括硬件、软件、人员、策略和规程的集合,用来实现基于公钥密码体制的密钥和证书的产生、管理、存储、分发和撤销等功能。

PKI体系是计算机软硬件、权威机构及应用系统的结合。它为实施电子商务、电子政务、办公自动化等提供了基本的安全服务,从而使那些彼此不认识或距离很远的用户能通过信任链安全地交流。
— 百度百科

说白了,PKI还是提供了彼此身份确认的服务,确保通信的安全。
接下来,打开百度的网址,进一步了解PKI体系中的各种角色。

1. 数字证书

我跟你对话,如果确认彼此就是自己要对话的人?那么我们可以互相亮出身份证,来证实彼此身份是可靠的。

那么,在网络通信里,也需要用到这样的介质,那就是数字证书。

点开百度网址左边的小锁图标,浏览器会显示如下,告诉你这个连接是安全的。
pki 体系_基于PKI体系的认证方式进行论述

浏览器之所以能确认百度的身份,就是因为数字证书。点击这个按钮,进一步可以看到证书相关信息。

pki 体系_基于PKI体系的认证方式进行论述

信息大概可以分为 3 类:

1.1 使用者
  • 使用者的信息,如果是企业这里就是域名,示例中为baidu.com…。
  • 公钥信息,这里是非对称加密中用户公开的密钥,谁都可以看到。、
  • 有效期
1.2 颁发者
  • 颁发者:谁颁发的证书,这里的GlobalSign Organization Validation。
  • 颁发者的签名:颁发者对该证书的所有信息的数字签名,表明他对这个证书的真实性负责。
1.3 证书的其他信息

证书相关的其他信息

基于此,当浏览器访问https的网址,就会检查证书的有效性,通过后使用证书里的信息(主要是公钥)与网址进行通信。

2. 公开密钥加密(非对称加密)

数字证书的关键在于公钥,也就是非对称加密算法。它有2个角色:

  • 私有密钥 (private key):私有密钥不能让其他任何人知道。
  • 公开密钥(public key):公开密钥则可以随意发布,任何人都可以获得。
    交互过程是这样的(发送密文方A,接收方B):
  1. A 使用 B 的公开密钥进行加密。
  2. A 发送加密后的信息给 B。
  3. B 收到加密的信息后,用自己的私有钥匙进行解密。

利用这种方式,不需要发送用来解密的私有密钥,也就不必担心密钥被攻击者窃听而盗走。

另外,就算你知道了公开密钥和密文,想要恢复到信息原文是异常困难的。因为解密过程就是在对离散对数进行求值,这并非轻而易举就能办到。

再退一步讲,如果能对一个非常大的整数做到快速地因式分解,那么密码激活成功教程还是存在希望的。但就目前的技术来看是不太现实的。

pki 体系_基于PKI体系的认证方式进行论述

3. PKI登场

上面在上述的公开密钥加密方式还是存在一个问题:

  • 无法证明公开密钥本身就是货真价实的公开密钥。

比如,A 正准备和 B 服务器建立公开密钥加密方式下的通信,A 也确实收到了公开密钥。但是 A 不知道这个公开密钥是不是真的来自于 B,或许在传输途中,真的公开密钥已经被攻击者替换掉了。

所以,还需要一套机制来证明过程中的这些内容都是可靠的,这里就需要开头提到的PKI体系了,其核心是证书的产生和分发层级。

证书的产生则来自一位的重要角色:数字证书认证机构(CA,Certificate Authority)。

全世界有大概几十家左右的根CA(Certificate Authority),计算机上都会预置这些CA的数字证书。比如Amazon、Verisign这种,他们有一整套的机制保证自己是可信的。基于此,他们有自己的数字证书,及与之匹配的私钥。

网站若想拿到自己的证书,就可以找个子CA,填好信息付好年费,就可以拿到证明了。当浏览器访问网站的时候,看到你有业内权威开的证明,自己也核对没问题后就无条件信任你了。

pki 体系_基于PKI体系的认证方式进行论述

在这里,PKI 体系必须为用户提供安全和透明的服务,用户不必考虑 PKI 体系中的证书是怎样生成、更新、撤销及恢复的,密钥是如何管理的,只要用户自己能够方便地获得数字签名即可。

二、PKI在汽车行业的应用

PKI体系在汽车行业的应用场景非常广泛,如远程车控、近场车控、安全启动、Ethernet通信安全等等。在此处讲一个优先级最高的“远程车控”的实例。

1. 建立自己的PKI体系

企业应该先行建立自己的PKI体系,即引入一个PKI供应商,将证书的颁发、申请、吊销等公用模块建立起来。接下来,在其之上,建立各应用的流程。

pki 体系_基于PKI体系的认证方式进行论述

2. 各端接入PKI体系

手机端、云端与车端Tbox,都在本地生成自己的私钥,并在云端申请完自己的证书。这也需要制定相应的业务流程。

三端都需要妥善保管好自己的私钥,手机端可以将私钥存储在TEE中,云端可存储的选择会较多,车端可存储在HSM或TEE中。若没有这些硬件的存储方式,可以使用软件的白盒加密方法,安全性也有一定保障。白盒加密也就是说即使遭遇白盒攻击,其密钥也较难被激活成功教程。

3. 开始业务

大家都具备证书与私钥后,业务流程就变的相当简单了。

pki 体系_基于PKI体系的认证方式进行论述

  • 云端与车端由于交互较多,建议两端通过双向认证交换“会话密钥”(对称密钥)。因为对称加密要比非对称加密要快上千倍,根据密钥长度不同会稍有变化。交换会话密钥的流程可参考TLS的双向认证的握手流程。
  • 手机端将车端指令发给云端,并使用自己的私钥进行签名。云端收到之后,使用手机A的数字证书,进行验签。
  • 云端将车控指令用协商好的“会话密钥”加密后,发送给车端。车端验证后,即可在内部执行。

所以,基于PKI体系的方案是更加可靠的。

参考文章:
https://zhuanlan.zhihu.com/p/237155609

https://www.cnblogs.com/pingguo-softwaretesting/p/14970453.html

https://zhuanlan.zhihu.com/p/377562137

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172004.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ROS中启动超声波雷达节点「建议收藏」

    ROS中启动超声波雷达节点「建议收藏」超声波雷达型号为KS136,KS136使用I2C接口与主机通信,自动响应主机的I2C控制指令。指令为8位数据,指令发送流程如下,先接收I2C控制指令,寄存器2接收控制指令,选择超声波探头号(因为主控板接12个收发一体式防水探头,每个探头独立工作,每个探头占据8位地址,分别对应8种不同的数据收发方式),流程图如下所示:超声波与主控之间通过串口通信代码如下: r…

    2025年9月7日
    6
  • kafuka 的安装以及基本使用

    kafuka 的安装以及基本使用最近因为项目需要所以需要使用kafka所以自己最近也实践了下。下面为大家简单介绍下在windows下的安装使用因为它是基于zookepper的使用也要安装zookepper1.安装ZookeeperKafka的运行依赖于Zookeeper,所以在运行Kafka之前我们需要安装并运行Zookeeper1.1下载安装文件:http://mirror.bit.edu.cn/apache…

    2022年6月11日
    45
  • 感知机原理小结

    感知机原理小结  感知机由Rosenblatt于1957年提出,是神经网络和支持向量机的基础。这里先简单介绍一下什么是感知机。本篇博客为《统计学方法》第二章和博客《感知机原理小结》的总结。感知机模型  感知机是二分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别,分别取+1+1+1和−1−1-1二值。感知机对应于输入空间(特征空间)中将实例划分为正负两类的分离超平面,属于判别模型。这还是很…

    2022年10月8日
    3
  • MATLAB三维绘图[通俗易懂]

    MATLAB三维绘图[通俗易懂]绘制三维图像一、plot3函数x=0:pi/50:10*pi;sin=sin(x);cos=cos(x);plot3(sin,cos,x);title(‘helix’),text(0,0,0,’origin’);xlabel(‘sin(x)’),ylabel(‘cos(x)’),zlabel(‘x’)二、mesh函数x=0:0.15:2*pi;…

    2025年8月18日
    4
  • .Net Framework 中设置Web Proxy 的方法

    .Net Framework 中设置Web Proxy 的方法正在进行MapAPI到.NetFramework平台移植。涉及到HttpConnection.其中可能用到Webproxy的设置。有两种简单的方法。WebProxyproxy=newWebProxy(“proxyaddress”,port);proxy.Credentials=newNetworkCredential(“username”,”pa

    2022年6月21日
    29
  • Grid布局

    Grid布局

    2021年7月7日
    102

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号