物联网安全——关键加密功能

时间:2023-03-02

SHA 算法广泛用于以下应用:

大多数哈希函数都建立在 Merkle-Damg?rd 结构之上。在这里,输入被分成大小相等的块,这些块使用压缩函数与先前压缩的输出相结合进行串行处理。初始化向量( IV )用于为过程播种。通过使用压缩函数,散列可以抵抗冲突。SHA-1 建立在这个 Merkle-Damg?rd 结构之上:

点击查看大图 
SHA-1 算法。输入分成五个 32 位块

一般来说,SHA 算法的输入信息必须小于 264 位。消息以 512 位块顺序处理。SHA-1 现在已被 SHA-256 和 SHA-3 等强大的内核所取代。发现 SHA-1 在散列中存在“冲突”。虽然查找碰撞大约需要 251 到 257 次操作,但只需花费几千美元租用 GPU 时间来解决哈希问题。因此,建议转向强大的 SHA 模型。

公钥基础设施

非对称加密(公钥)是互联网商务和通信的支柱。它通常用于 Web 上的 SSL 和 TLS 连接。典型的用途是公钥加密,传输中的数据由持有公钥的任何人加密,但只能由私钥的持有者解密。另一种用途是数字签名,其中使用发送方的私钥对一团数据进行签名,如果接收方持有公钥,则可以验证其真实性。

为了协助提供公钥的信心,使用了一个称为公钥基础设施( PKI ) 的过程。为保证真实性,称为证书颁发机构( CA ) 的受信任第三方管理角色和策略以创建和分发数字证书。Symantec、Comodo 和 GoDaddy 是 TLS 证书的公共发行商。X.509 是定义公钥证书格式的标准。它是 TLS/SSL 和 HTTPS 安全通信的基础。X.509 定义了诸如使用的加密算法、到期日期和证书颁发者等内容。

PKI 由验证发送者并管理特定角色和策略并可以撤销证书的注册机构( RA )组成。RA 还与验证机构( VA ) 通信以传输撤销列表。CA 向发件人颁发证书。当收到消息时,VA 可以验证密钥以验证它没有被撤销。

下图显示了 PKI 基础结构的示例。显示了使用的 CA、RA 和 VA 系统以及授予和验证为加密消息授予的密钥的阶段:

点击查看大图 
 
PKI 基础结构示例

网络栈——传输层安全

传输层安全性( TLS ) 涵盖在本书的许多领域,从用于 MQTT 和 CoAP 的 TLS 和 DTLS 到 WAN 上的网络安全和 PAN 安全。每个人都对 TLS 有某种形式的依赖。TLS 还汇集了我们提到的所有加密协议和技术。本节简要介绍 TLS1.2 技术和过程。

初是 SSL(安全套接字层),它于 1990 年代引入,但在 1999 年被 TLS 取代。TLS 1.2 是 2008 年 RFC5246 中的当前规范。TLS 1.2 包括一个 SHA-256 哈希生成器来取代 SHA-1 并加强其安全形象。

在TLS加密中,过程如下:

  1. 客户端打开与支持 TLS 的服务器的连接(HTTPS 端口 443)

  2. 客户端提供可以使用的受支持密码列表

  3. 服务选择密码和哈希函数并通知客户端

  4. 服务器向客户端发送数字证书,其中包括证书颁发机构和服务器的公钥

  5. 客户确认秘密的有效性

  6. 会话密钥由以下任一方式生成:

    1. 使用服务器的公钥加密的随机数,并将结果发送到服务器。服务器和客户端然后使用随机数创建一个会话密钥,该密钥在通信期间使用。

    2. 使用 Dixie-Hellman 密钥交换生成用于加密和解密的会话密钥。会话密钥一直使用到连接关闭

    3.     通信开始使用加密通道

下图是两个设备之间TLS1.2通信的握手过程:

点击查看大图 
 
TLS 1.2 握手序列

Datagram Transport Layer Security ( DTLS ) 是一种基于 TLS 的数据报层通信协议(DTLS 1.2 基于 TLS 1.2)。它旨在产生类似的安全保证。CoAP 轻量级协议使用 DTLS 来确保安全。

上一篇:使用反射计芯片进行非接触式液位测量
下一篇:调试 USB Type-C 和 USB 供电系统设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料