Thermochron的应用范围从易腐货物或温度敏感化学品容器的运输监控到过程验证。温度测量的真实性很重要,因为它们可用于证明运输处理不当或提供正确过程控制的文档。Thermochron具有几种内置硬件机制,可用于检测温度收集任务的篡改。通过利用用户可编程存储器来保存任务验证证书,可以轻松添加任务的进一步验证。
介绍
Thermochron是一种自动温度记录设备,装在一个小型16毫米钢iButton容器中。它有一个内部能量源,通常对超过一百万个温度读数有效。记录以用户定义的速率完成,既可以直接存储温度值,也可以以直方图的形式进行。可以存储多达 2048 个等距间隔(从 1 到 255 分钟)采集的温度值。Thermochron还具有512字节的用户可编程存储器。
Thermochron的应用范围从易腐货物或温度敏感化学品容器的运输监控到过程验证。温度测量的真实性很重要,因为它们可用于证明运输处理不当或提供正确过程控制的文档。
据说收集温度数据的Thermochron正在执行任务。本文档介绍了温度时空的内置硬件保护,以及如何使用存储在用户存储器中的证书来增强给定温度任务的验证。
(为清楚起见,特殊术语、命令或代码以斜体显示。)
防篡改保护
温度时空具有检测温度任务篡改的硬件机制。日志、直方图和报警寄存器存储器是只读的。数据进入这些存储器位置的唯一方法是通过设备执行的温度测量。执行设备任务时,必需的步骤是清除内存操作。此外,任务计数寄存器指示日志记录内存的哪一部分有效。使用这些机制,永远不可能读取内存中的旧数据或无效数据。
请注意,在任务期间可以清除指示温度高或低跳变点违反的警报标志位。这是为了允许 iButton 读取器清除事件,直到下一次检查。但是,记录温度违规持续时间的温度报警寄存器无法在不擦除整个内存的情况下清除,因此应用作整个任务的“标志”。
尝试写入任何只读控制寄存器将自动停止正在进行的任务。如果有人试图通过隐藏温度违规来欺骗系统,唯一可用的选择是停止并删除旧任务,然后开始新任务。如果任务重新启动,则将重写任务时间戳寄存器和采样率寄存器。直方图和日志将被清除。因此,任务包含的日志值数量将低于预期。这就引出了一个问题:任务Thermochron的接收者如何知道一个有效的代理是否开始了任务?
任务身份验证
虽然Thermochron中存在的硬件机制可以防止改变正在进行的任务,但无法方便地确定这是一个有效的任务。在任务启动时将证书插入用户内存可以解决此问题。证书格式必须具有可以验证任务者是系统的有效代理的功能。有一种众所周知的加密技术称为消息身份验证代码 (MAC),它可以验证共享公共密钥的参与者之间的消息。更具体地说,使用哈希的 MAC 称为 HMAC。HMAC 技术在 ISO/EC 9797-3 和 RFC 2104 中有详细说明。请参阅下面的表 1,其中显示了 HMAC 计算的输入数据字段。随机字段用于使每个证书唯一。唯一的注册号对于包括温度时线在内的所有iButton设备都是通用的。
数据字段说明 | 长度(以字节为单位) |
系统参与者已知的机密 | 20 |
唯一注册号(ROM ID) | 8 |
任务时间戳登记册 | 5 |
采样率寄存器 | 1 |
Ramdom 字段,使每个证书唯一(也称为盐) | 2 |
输入数据通过 HMAC 算法生成摘要,该摘要将包含在保存到温度时空用户存储器的证书中。HMAC 输出的大小取决于所使用的哈希算法。HMAC-SHA1 使用安全哈希算法 (SHA-1),该算法在 ISO/IEC 10118-3 和 FIPS-180 中定义。SHA-1 输出为 20 字节。
Thermochron的用户存储器可用于保存证书以外的信息。为了容纳多条数据,创建了1-Wire文件结构(参见应用笔记114:“1-Wire文件结构”)。包含文件内容的单页(32 字节)数据被视为任务身份验证证书。有关基于 HMAC-SHA2 的证书中字段的完整列表,请参阅下面的表 1。®
偏移量(在页面上) | 字段说明 | 长度(以字节为单位) |
0 | 长度(1线文件结构) | 1 |
1 | 任务开始时间登记 | 5 |
6 | 采样率寄存器 | 1 |
7 | 随机场(盐) | 2 |
9 | 输入数据的 HMAC-SHA1 | 20 |
29 | 页面指针(1-Wire文件结构) | 1 |
30 | CRC16 (1线文件结构) | 2 |
任务开始时间寄存器和采样率寄存器对于验证证书并不是绝对必要的,因为它们可以直接从设备的寄存器中读取;但是,它们对于跟踪很有价值。如果任务重新启动并且旧 HMAC 的证书保持不变,则可以恢复原始任务标准。
图 1 显示了 Thermochron 读取器使用定义的任务身份验证证书验证到达 Thermochron 的任务的流程。请注意,必须对照已知良好的源检查实时时钟(RTC)值。
图1.验证流。
温度精度
目前,温度控制管的精度在大多数工作范围内被规定为±1°C。达拉斯半导体目前不提供NIST可追溯验证,但独立的测试实验室可以做到这一点,并利用用户可编程的内存区域来保存NIST证书。
物理访问
限制对设备的物理访问可以降低风险,甚至降低篡改任务温度时空的诱惑。iButton软件包体积小,可以将整个记录器插入集装箱内,甚至可以隐藏。
结论
Thermochron具有几种内置硬件机制,可用于检测温度收集任务的篡改。通过利用用户可编程存储器来保存任务验证证书,可以轻松添加任务的进一步验证。
Thermochron系列的DS1922和DS1923具有额外的读写密码保护功能,有助于防止篡改。这些设备还具有称为“温度警报时启动”的功能,该功能在发生温度警报时启动任务。由于任务开始时间是任务身份验证证书的一部分,并且在为任务设置设备时实际任务开始时间未知,因此无法创建证书。因此,只有在不使用启动温度报警的情况下,本文所述的方法才能应用于DS1922和DS1923。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !