CN116094719A - 基于物理不可克隆函数的轻量级工业传感器数据流完整性验证方法 - Google Patents
基于物理不可克隆函数的轻量级工业传感器数据流完整性验证方法 Download PDFInfo
- Publication number
- CN116094719A CN116094719A CN202211436657.3A CN202211436657A CN116094719A CN 116094719 A CN116094719 A CN 116094719A CN 202211436657 A CN202211436657 A CN 202211436657A CN 116094719 A CN116094719 A CN 116094719A
- Authority
- CN
- China
- Prior art keywords
- puf
- plc
- data
- sensor
- algorithm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3278—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Abstract
本发明提供基于物理不可克隆函数的轻量级工业传感器数据流完整性验证方法。SCADA系统的边界由工业传感器监控,面临着最严峻的安全挑战。然而,目前的SCADA通信协议缺乏适当的安全策略来保护现场传感器的安全和数据流的完整性。此外,由于传感器是资源有限的物理设备,复杂而昂贵的加密算法并不适用。本发明提出了一种基于工业物联网的物理不可克隆函数的轻量级工业传感器数据流完整性验证方案,可以保护数据流的完整性和传感器的物理安全,保证工业传感器数据流的安全传输。安全分析分析了该方案对已知安全漏洞的抵抗力。实验结果表明,该方案在通信开销和计算开销方面具有优势。
Description
技术领域
本发明涉及工业物联网及数据安全传输保护技术领域。尤其涉及一种基于物理不可克隆函数的轻量级工业传感器数据流完整性验证方法。
背景技术
关键基础设施和蓬勃发展的工业4.0正越来越多地应用更先进的技术和工具,如计算机、电气和机械装置,以监测工业生产的物理过程。由智能计算集成产生的用于收集、监测实时数据以确保工业基础设施的自动化操作、过程控制和监测的网络被称为工业物联网。它广泛应用于炼油、化工生产、电力和电网控制、水厂监控、交通和水利设施保护等。据统计,与国计民生相关的自动化基础设施中,几乎有80%或更多,依靠工业物联网进行流程控制生产。
然而,当前全球网络安全威胁和风险日益突出。针对工业互联+6网的网络攻击的频率和复杂性正在增加。监视控制和数据采集(SCADA)系统是一种常见的工业物联网类型。通用的SCADA网络通信结构如图1所示。它通过收集现场数据和向地理上偏远的现场站发布命令来监视和控制不同种类的工业组件。目前的SCADA系统缺乏可靠的安全机制。与流畅性和可靠的运行相比,一般的安全性和网络安全并不是早期SCADA系统的主要关注点。因此,这种不设防的状态会导致一些安全风险,例如,SCADA系统中的PLC从传感器节点收集感知数据,然而,对手可以恶意截获或篡改传输的数据流,这可能导致PLC节点接收到不正确的数据,从而做出错误的判断。此外,缺乏认证机制的SCADA系统存在安全漏洞,可以被对手利用,引入恶意节点,其恶意行为会导致不安全的数据通信。另一方面,SCADA系统一般监控远程工业生产,其设备通常远离安全区。攻击者可能会试图改变远程传感器节点的配置,将其作为物理攻击的目标,并从节点中获取会话密钥等机密信息,对此,现有的最先进的SCADA系统数据传输方案无法保证安全。
发明内容
本发明用于解决在工业物联网中数据传输不安全的问题,具体提出了一种基于物理不可克隆函数的轻量级可验证数据流传输方法,利用HMAC(哈希运算消息认证码)的轻量级属性和PUF(物理不可克隆函数)机制的安全特性。
为实现上述目的,本发明采用的技术方案基于物理不可克隆函数的轻量级可验证数据流传输方法,以解决前文中提出的问题。该方法适用于工业物联网中SCADA系统的PLC节点与传感器节点之间的通信传输,旨在解决SCADA系统中信息流被恶意篡改、缺乏节点认证机制、无法保证设备的物理安全等问题。该方法的创新性在于:1.本发明设计了一种新的基于物理不可克隆函数的轻量级可验证数据流传输方法,该方法可以提供关键的安全属性,包括抵御拒绝服务攻击、重放攻击、中间人攻击等。同时,本发明引入了先进的比特选择算法,保证了PUF使用的稳定性和效率。2.该方法保障了传感器节点的物理安全,不可能通过侧信道攻击和旁路攻击来获取机密信息,通过解析传感器的内在配置来获取机密信息。3.该方法对现场传感器产生的数据流进行持续的完整性验证。对所提出的方法与其他现有方法的比较表明,该方法具有较小的计算开销和通信开销,这在SCADA系统中是至关重要的。如图所示,该方法的实现步骤如下:
步骤(1)注册阶段:为了该方法中PUF的稳定使用,本发明选择基于SRAM(静态随机存取存储器)的PUF的方法。并结合数据剩磁算法遴选SRAM中稳定性最强的单元;
步骤(2)设置阶段:方法生成并存储认证和数据传输阶段所需的方法参数。该步骤具体流程如图所示;
步骤(3)认证与传输阶段:在这一阶段中,方法侧重于智能传感器和PLC之间的双向认证以及使用HMAC算法进行数据流完整性验证传输。除此之外,还包括密钥协商、时间戳机制、身份和密钥更新等操作。该步骤具体流程如图所示;
进一步的,所属步骤(1),使用SRAM中稳定性最强的单元构建PUF,具体为:
1.1)构建PUF模型。PUF的概念来自于利用微观尺度上现有物理实体的物理随机、不可预测的硬件特性作为密钥生成的来源。它最显著的特点是生成一组一对一对应的挑战-响应对(CRP),它将一个序列作为挑战输入,并产生一串称为响应的比特。这种转变源于物理随机性。PUF对挑战C的响应R可以用公式表示:
Ri=PUF(Ci)
其中,PUF表示一个抽象的函数,它是真实物理设备功能的映射,输入一个二进制序列,输出一串对应的响应。Ci表示第i个输入至PUF函数中的挑战二进制序列;Ri表示第i个对应的响应序列。
PUF通常以集成电路(IC)的形式使用。利用集成电路在制造过程中产生的物理微观结构的独特性,确保没有两个PUF的结构是相同的,不能被人为篡改。然而,由环境条件引起的PUF噪声仍然是PUF设计中的一个限制因素,它可能导致PUF的一个或多个输出位在任何挑战中都不正确。A(d,n,l,l,∈)安全PUF需要满足以下要求:
1.任意两个PUF,PUFi(·)and PUFj(·),对于任意输入C∈{0,1}k,Pr[HD(PUFi(C),PUFj(C))>d]≥1-∈
PUFi(·)和PUFj(·)是两个内部物理微结构不同的PUF函数;k表示一个任意自然数;C表示一个由0和1组成的任意串的子集;HD(a,b)表示a,b之间的汉明码距离;d代表两个PUF响应之间的最小汉明距离;Pr(·)是表示概率。ε是一个概率数字,通常设置为0.001。此公式代表对于两个不同的PUF,输入任意一个挑战C,得到的响应之间的汉明码距离大于最小汉明距离d的概率大于等于1-ε。
2.任意一个PUF,PUFi(·),对于任意一个输入C1,,Cn{0,1}k,Pr[HD(PUFi(C1),PUFi(C2))>d]≥1-∈。
此公式说明对于同一个PUF函数,输入任意两个挑战C1,C2之后得到的响应之间的汉明码距离大于最小汉明距离d的概率大于等于1-ε。
3.任意两个PUF,PUFi(·),PUFi*(·),对于任意一个输入C1,,Cn{0,1}k,Pr[H∞(PUFi(Ck),PUFm(Cj))1≤j,k≤n,i≠m,j≠k>λ]≥1-∈
H∞表示最小熵,用来表示PUF响应的概率分布情况;PUFi(·)和PUFm(·)代表两个不同的PUF;j,k,n,i,m是各个参数的下标。λ一般取0.999-0.9999之间的实数。这个条件表示,在使用多个输入对不同的PUF进行评估时,PUF输出的最小熵必须大概率地大于λ,此事件发生的概率大于等于1-ε。
1.2)使用数据剩磁算法,遴选出状态特性最稳定的SRAM存储单元。SRMA是指静态随机存取存储器。其中,SRAM稳定单元的内存地址作为PUF机制中的挑战C,与内存地址相对应的SRAM稳定单元内存储的值(0/1)作为PUF机制中的响应R。
数据剩磁算法可以找到SRAM中最稳定的单元。首先,数值("0"或"1")被写入整个存储器。其次,短暂地关闭电源,此时一些单元被翻转("1"变成"0"或"0"变成"1")。最稳定的单元是在写完相反的数据后可以很容易和快速翻转的单元。例如,一个强"1"单元是一个当"0"被写入其内存时能迅速翻转的位。相反,如果一个"1"被写入一个内存位置并被快速翻转,这意味着它是一个强"0"单元。方法选择在最短的时间内翻转其数值的单元构建PUF。
进一步的,所属步骤(2)生成并存储认证和数据传输阶段所需的方法参数,具体为:
2.1)PLC生成挑战,挑战是从注册阶段存储的稳定位中选取的一串内存地址序列。PLC将生成的挑战传送给智能传感器。
2.2)智能传感器收到挑战C并使用PUF生成响应R。它将自己的ID和响应R发送给PLC。ID是方案为智能传感器设置的编号,用以表示身份。
2.3)PLC根据收到的传感器ID通过SM3-Hash算法生成SID,这是一个为智能传感器设计的虚拟身份,以实现传感器匿名通信。此外,我们使用模糊提取器算法,以BCH码作为纠错码,计算出(K,hd)=FE.Gen(R)。最后,智能传感器的虚拟身份SID,挑战C,和密钥K被存储在PLC中。{SID,C,hd}被发送到智能传感器。其中,SM3-Hash算法中以ID作为输入,输出256bit的SID,作为此传感器的虚拟身份;模糊提取器算法中,以响应R作为输入,输入密钥K和辅助数据hd。其中。SM3-Hash算法是一种由我国自行研发的密码杂凑(哈希、散列)算法。BCH码是一种消息纠错码。FE.Gen(.)是模糊提取器算法中的密钥生成子算法。
2.4)智能传感器接收从PLC发送的{SID,C,hd}数据。
进一步的,步骤(3)中,执行认证与传输阶段步骤,完成智能传感器和PLC之间的双向认证以,及使用HMAC算法进行数据流完整性验证传输。所述步骤(3)中所述具体为:
3.1)智能传感器节点发送其SID至PLC,通知PLC通信即将开始。
3.2)PLC从数据库中查找SID,成功找到后,相应地读取该智能传感器节点的(C,K)。之后,PLC依据当前时间生成时间戳T1=time.now(),这是为了抵御Dos攻击。接下来,PLC计算出加密后的时间戳其好处是大大节省了加密和解密的计算开销。然后,PLC计算HMAC值H1=Hmac(K,TS)。这一步有两个目的,首先,PLC向智能传感器证明其身份,因为目前只有真实可靠的PLC才有存储的密钥K。其次,H1也验证了T1的真实性,防止它在传输过程中被对手截获和篡改。最后,{T1 *,H1}被发送到智能传感器。其中,T1=time.now()是生成系统当前时间函数;中是异或操作,T1和hash(K)均是256bit的二进制串,所以可以进行异或操作。H1=Hmac(K,TS)中Hmac是一种基于SM3哈希算法的消息认证码算法,输出256bit的二进制数,用于消息完整性认证和信源的身份认证。
3.3)智能传感器收到{T1 *,H1},并依据前一阶段传输并存储的挑战C,产生PUF响应由于构成PUF的SRAM的微观物理特性,此时生成的响应可能是有噪声的,不能直接使用它进行计算。之后,智能传感器从其内存中选择辅助数据hd,并计算K=FE.Rec(R*,hd)以重建密钥K。接下来,智能传感器计算以解密T1。之后计算验证值H11=Hmac(K,T1)。完成上诉步骤之后,智能传感器验证H11和H1是否相同,如果验证成功,就可以从智能传感器存储器中读取感应数据,并计算出H2=Hmac(K,data)。最后,{data,H2}被发送到PLC。其中,FE.Rec(.)是模糊提取器算法中的密钥重建子算法
3.4)PLC收到来自智能传感器数据和H2。然后它开始验证身份和数据。首先,PLC计算出当前的时间戳T2=time.now(),并计算出H22=Hmac(K,data)。如果程序的验证时间在我们设定的阈值t之内,并且传输数据的完整性得到保证,则表明数据是安全的。其中,阈值t是一个时间值,根据当前系统的处理器性能,处理流程的复杂程度等值来确定。如本发明中实验设置的为0.24s。
本方法采用基于物理不可克隆函数的轻量级可验证数据流传输方法,以解决前文中提出的问题。该方法适用于工业物联网中SCADA系统的PLC节点与传感器节点之间的通信传输,旨在解决SCADA系统中信息流被恶意篡改、缺乏节点认证机制、无法保证设备的物理安全等问题。
附图说明
图1为SCADA系统架构图
图2为从传感器到PLC的数据传输图
图3为基于PUF的高效认证安全传输方案的设置阶段
图4为基于PUF的高效认证安全传输方案的认证和数据传输阶段
图5为智能传感器架构图
具体实施方式
本发明的目的在于提出一种基于物理不可克隆函数的轻量级可验证数据流传输方法,利用HMAC(哈希运算消息认证码)的轻量级属性和PUF(物理不可克隆函数)机制的安全特性,保障PLC和现场传感器之间感知数据的安全传输。
以下将结合具体实施例对本发明提供的技术方案进行详细说明,应理解下述具体实施方案仅用于说明本发明而不用于限制本发明的范围
本发明提出一种基于PUF的轻量级工业传感器数据流完整性验证方案,以解决前文中提出的问题。该发明适用于SCADA系统中PLC节点与传感器节点之间的通信传输,旨在解决SCADA系统中信息流被恶意篡改、缺乏节点认证机制、无法保证设备的物理安全等问题。同时,针对安全通信方案中存在的通信和计算开销大等问题也得到了解决。本发明提出的基于PUF的轻量级工业传感器数据流完整性验证方案主要分为三个阶段,分别是注册阶段,设置阶段和验证和数据传输阶段。
步骤(1)注册阶段:本发明使用基于SRAM的PUF算法,其输入挑战实际上是SRAM的一组内存地址,其输出响应是与输入地址相对应的SRAM单元的偏置值("0"或"1")。如果SRAM是PUF的一个组成部分,它必须有一个稳定的输出。由于温度、电压、老化和其他噪声影响,一些SRAM单元的偏置值可能是不稳定的。因此本发明使用了数据剩磁法作为位选择算法,找到SRAM中最稳定的单元。首先,数值("0"或"1")被写入整个存储器。其次,短暂地关闭电源,此时一些单元被翻转("1"变成"0"或"0"变成"1")。最稳定的单元是那些在写完相反的数据后可以很容易和快速翻转的单元。例如,一个强大的"1"单元是一个当"0"被写入其内存时能迅速翻转的位。反之,如果一个"1"被快速翻转,这意味着它是一个强"0"单元。我们选择在最短的时间内翻转其数值的单元进行PUF挑战。PLC有足够的存储空间来存储这些选定的内存地址。由于SRAM的总容量是256KB,所以本发明有256KB的内存位,可以用来供数据剩磁算法选择。本发明从256KB的内存中挑选出最稳定的4662个内存位。这些稳定的位将被打乱,作为PUF的挑战序列的来源。
步骤(2)设置阶段:本阶段传感器和PLC开始进行交互,两端通过计算和传输为认证和数据传输阶段生成并存储所需的方案参数。本发明从注册阶段生成的挑战源中随机选择2331个稳定位作为挑战,镶嵌在智能电表中的PUF在输入挑战之后,生成2331位的响应。其中,每63比特的响应通过BCH加密算法进行加密,产生7比特的密钥K和56比特的辅助数据。本发明使用SM3密码杂凑算法作为哈希算法。SM3主要用于数字签名及验证、消息认证码生成及验证、随机数生成等,其算法公开。此算法对输入的比特消息,经过填充和迭代压缩,生成长度为256比特的杂凑值,其中使用了异或,模,模加,移位,与,或,非运算,由填充,迭代过程,消息扩展和压缩函数所构成。该算法经过这些操作,产生长度为256b的值。C、R、ID、SID、K、hd的长度相应为2331b、2331b、256b、256b、256b、2072b。具体步骤如下:
步骤(2-1):PLC从存储空间中读取所有挑战数据位,共4662b。再从其中随机挑选2331b作为输入挑战Generate:C,它实质上是一串内存地址序列。PLC将生成的挑战传送给智能传感器。
步骤(2-2):智能传感器接收到来自PLC的挑战C并使用PUF机制,通过测量链接的SRAM内部物理微结构,生成2331b的响应此外,智能传感器利用系统自带时钟生成一个随机数,之后通过使用SM3密码杂凑算法,以此随机数作为输入,输入一个256b的串作为代表自身身份的ID。最后,它向PLC发送自己的ID和响应R。
步骤(2-3):PLC根据收到的传感器ID,通过SM3密码杂凑算法生成256b的SIDCompute:这是一个专门为智能传感器设计的虚拟身份,之后的通信,均以虚拟身份进行。此外,本发明使用以BCH码为纠错码的辅助数据算法计算(K,hd)=FE.Gen(R)。其中,每63比特的响应通过BCH加密算法进行加密,产生7比特的密钥K和56比特的辅助数据。最后,智能传感器的虚拟身份SID,挑战C,和密钥K被存储在PLC中。被发送到智能传感器。
步骤(3)这一阶段的重点是智能传感器和PLC之间的双向认证和使用HMAC进行数据流完整性传输。除此之外,还包括密钥协商、时间戳机制、身份和密钥更新等操作。在认证和数据传输阶段。智能传感器端使用系统自带的millis()函数,生成执行时间戳,它的单位为毫秒。本发明使用基于SM3密码杂凑算法作为哈希算法的HMAC来产生256b的Hmac输出值。FE.Rec()函数使用BCH解密算法,以56b的辅助数据和63b的PUF响应作为输入,输出一个7b的密钥K。此外,T1,T*,H1,R*,H11,H2,T2,Knew,SIDnew的长度相应为256b、256b、256b、2331b、256b、256b、256b、256b、256b和256b。具体步骤如下:
步骤(3-1):智能传感器节点向PLC发送其SID和请求通信信号,以通知PLC,认证和数据传输阶段通信即将开始。
步骤(3-2):PLC接收数据后,从自己的存储空间中查找SID,并根据此相应地读取该智能传感器节点的(C,K)。之后,PLC利用系统内部的时钟生成时间戳T1=time.now(),是这一步是为了这是为了抵御Dos攻击。接下来,PLC计算T1和hash(K)都是大小是256b的二进制串,所以可以使用异或操作。这可以起到加密TS的作用,其好处是大大节省了加密和解密的计算开销。然后,PLC计算H1=Hmac(K,T1)。这一步有两个目的,首先,PLC向智能传感器证明其身份,因为目前只有真实可靠的PLC才有存储的密钥。其次,H1也验证了T1的真实性,防止它在传输过程中被对手截获和篡改。最后,PLC将消息队列{T1 *,H1}发送到智能传感器。
步骤(3-3):智能传感器收到{T1 *,H1}。之后,智能传感器使用内嵌PUF机制,产生PUF响应此时,PUF产生的响应可能是含有噪声的,我们不能直接使用它进行计算。之后,智能传感器从其存储空间中选择在设置阶段存储的hd,使用模糊提取器的密钥恢复算法,以带噪声的响应R*和对应的辅助数据hd为输入,复原密钥K=PUF(R*,hd)。接下来,智能传感器计算以解密T1。接着计算H11=Hmac(K,T1)。完成上诉步骤之后,智能传感器验证H1,H11是否相同,如果验证成功,就可以从智能传感器存储器中读取感应数据,并计算出H2=Hmac(K,data)。最后,{data,H2}被发送到PLC。其中,本发明的实验环节,传感器使用温度传感器,每间隔2s发送一次温度数据。如,数据data本次实验所测量的物理量是25.6°
步骤(3-4):PLC从智能传感器接收数据data和H2。接下来就是对数据和身份进行验证。首先,PLC计算出当前的时间戳T2=time.now(),并计算出H22=Hmac(K,data)。如果程序的验证时间在我们设定的阈值t之内,并且传输数据的完整性得到保证,则表明数据是安全的。其中,阈值t是一个时间值,根据当前系统的处理器性能,处理流程的复杂程度等值来确定。如本发明中实验设置的为0.24s。
步骤(3-5):一轮数据传输和验证工作已经完成。接下来,智能电表和PLC开始同步更新密钥和身份。智能电表和PLC分别计算Knew=hash(K)和此后,智能传感器与PLC之间可直接使用此密钥和身份进行通信。
本发明提出了一个基于PUF的轻量级工业传感器数据流完整性验证方案,用于SCADA系统中现场传感器和PLC之间的安全通信。所提出的方案允许现场传感器使用一个共同的协商密钥与PLC进行安全和有效的互动。该方案的轻量级性质和PUF的安全特性对克服安全漏洞有很大帮助。与现有方案相比,所提出的方案具有较少的计算和通信开销。
在本申请所提供的实施例中,应该理解到,所揭露的方法,在没有超过本申请的精神和范围内,可以通过其他的方式实现。当前的实施例只是一种示范性的例子,不应该作为限制,所给出的具体内容不应该限制本申请的目的。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (1)
1.基于物理不可克隆函数的轻量级工业传感器数据流完整性验证方法,其特征在于,实现步骤如下:
步骤(1)注册阶段:选择基于SRAM(静态随机存取存储器)的PUF的方法;并结合数据剩磁算法遴选SRAM中稳定性最强的单元;
步骤(2)设置阶段:方法生成并存储认证和数据传输阶段所需的方法参数;
步骤(3)认证与传输阶段;
步骤(1),使用SRAM中稳定性最强的单元构建PUF,具体为:
1.1)构建PUF模型;PUF对挑战C的响应R可以用公式表示:
Ri=PUF(Ci)
其中,PUF表示一个抽象的函数,它是真实物理设备功能的映射,输入一个二进制序列,输出一串对应的响应;Ci表示第i个输入至PUF函数中的挑战二进制序列;Ri表示第i个对应的响应序列;
A(d,n,l,λ,∈)安全PUF需要满足以下要求:
1)任意两个PUF,PUFi(·)and PUFj(·),对于任意输入C∈{0,1}k,Pr[HD(PUFi(C),PUFj(C))>d]≥1-∈
PUFi(·)和PUFj(·)是两个内部物理微结构不同的PUF函数;k表示一个任意自然数;C表示一个由0和1组成的任意串的子集;HD(a,b)表示a,b之间的汉明码距离;d代表两个PUF响应之间的最小汉明距离;Pr(·)是表示概率;ε是一个概率数字,设置为0.001;此公式代表对于两个不同的PUF,输入任意一个挑战C,得到的响应之间的汉明码距离大于最小汉明距离d的概率大于等于1-ε;
2)任意一个PUF,PUFi(·),对于任意一个输入C1,,Cn{0,1}k,Pr[HD(PUFi(C1),PUFi(C2))>d]≥1-∈;
此公式说明对于同一个PUF函数,输入任意两个挑战C1,C2之后得到的响应之间的汉明码距离大于最小汉明距离d的概率大于等于1-ε;
3)任意两个PUF,PUFi(·),PUFi*(·),对于任意一个输入C1,,Cn{0,1}k,Pr[H∞(PUFi(Ck),PUFm(Cj))1≤j,k≤n,i≠m,j≠k>λ]≥1-∈
H∞表示最小熵,用来表示PUF响应的概率分布情况;PUFi(·)和PUFm(·)代表两个不同的PUF;j,k,n,i,m是各个参数的下标;λ取0.999-0.9999之间的实数;这个条件表示,在使用多个输入对不同的PUF进行评估时,PUF输出的最小熵必须大概率地大于λ,此事件发生的概率大于等于1-ε;
1.2)使用数据剩磁算法,遴选出状态特性最稳定的SRAM存储单元;SRMA是指静态随机存取存储器;其中,SRAM稳定单元的内存地址作为PUF机制中的挑战C,与内存地址相对应的SRAM稳定单元内存储的值(0/1)作为PUF机制中的响应R;
首先,数值0/1被写入整个存储器;其次,短暂地关闭电源,此时一些单元被翻转即"1"变成"0"或"0"变成"1";选择在最短的时间内翻转其数值的单元构建PUF;
进一步的,所属步骤(2)生成并存储认证和数据传输阶段所需的方法参数,具体为:
2.1)PLC生成挑战,挑战是从注册阶段存储的稳定位中选取的一串内存地址序列;PLC将生成的挑战传送给智能传感器;
2.2)智能传感器收到挑战C并使用PUF生成响应R;它将自己的ID和响应R发送给PLC;ID是方案为智能传感器设置的编号,用以表示身份;
2.3)PLC根据收到的传感器ID通过SM3-Hash算法生成SID,这是一个为智能传感器设计的虚拟身份,以实现传感器匿名通信;使用模糊提取器算法,以BCH码作为纠错码,计算出(K,hd)=FE.Gen(R);最后,智能传感器的虚拟身份SID,挑战C,和密钥K被存储在PLC中;{SID,C,hd}被发送到智能传感器;其中,SM3-Hash算法中以ID作为输入,输出256bit的SID,作为此传感器的虚拟身份;模糊提取器算法中,以响应R作为输入,输入密钥K和辅助数据hd;FE.Gen(.)是模糊提取器算法中的密钥生成子算法;
2.4)智能传感器接收从PLC发送的{SID,C,hd}数据;
进一步的,步骤(3)中,执行认证与传输阶段步骤,完成智能传感器和PLC之间的双向认证以,及使用HMAC算法进行数据流完整性验证传输;所述步骤(3)中所述具体为:
3.1)智能传感器节点发送其SID至PLC,通知PLC通信即将开始;
3.2)PLC从数据库中查找SID,成功找到后,相应地读取该智能传感器节点的(C,K);之后,PLC依据当前时间生成时间戳T1=time.now(),这是为了抵御Dos攻击;接下来,PLC计算出加密后的时间戳PLC计算HMAC值H1=Hmac(K,TS);
首先,PLC向智能传感器证明其身份,因为目前只有真实可靠的PLC才有存储的密钥K;其次,H1也验证了T1的真实性,防止它在传输过程中被对手截获和篡改;最后,{T1 *,H1}被发送到智能传感器;其中,T1=time.now()是生成系统当前时间函数;中是异或操作,T1和hash(K)均是256bit的二进制串,所以可以进行异或操作;H1=Hmac(K,TS)中Hmac是一种基于SM3哈希算法的消息认证码算法,输出256bit的二进制数,用于消息完整性认证和信源的身份认证;
3.3)智能传感器收到{T1 *,H1},并依据前一阶段传输并存储的挑战C,产生PUF响应R*=PUFSi(C);由于构成PUF的SRAM的微观物理特性,此时生成的响应可能是有噪声的,不能直接使用它进行计算;之后,智能传感器从其内存中选择辅助数据hd,并计算K=FE.Rec(R*,hd)以重建密钥K;接下来,智能传感器计算以解密T1;之后计算验证值H11=Hmac(K,T1);完成上诉步骤之后,智能传感器验证H11和H1是否相同,如果验证成功,从智能传感器存储器中读取感应数据,并计算出H2=Hmac(K,data);最后,{data,H2}被发送到PLC;其中,FE.Rec(.)是模糊提取器算法中的密钥重建子算法
3.4)PLC收到来自智能传感器数据和H2;然后它开始验证身份和数据;首先,PLC计算出当前的时间戳T2=time.now(),并计算出H22=Hmac(K,data);如果程序的验证时间在我们设定的阈值t之内,并且传输数据的完整性得到保证,则表明数据是安全的;其中,阈值t是一个时间值,根据当前系统的处理器性能,处理流程的复杂程度等值来确定;如本发明中实验设置的为0.24s;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211436657.3A CN116094719A (zh) | 2022-11-16 | 2022-11-16 | 基于物理不可克隆函数的轻量级工业传感器数据流完整性验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211436657.3A CN116094719A (zh) | 2022-11-16 | 2022-11-16 | 基于物理不可克隆函数的轻量级工业传感器数据流完整性验证方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116094719A true CN116094719A (zh) | 2023-05-09 |
Family
ID=86198146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211436657.3A Pending CN116094719A (zh) | 2022-11-16 | 2022-11-16 | 基于物理不可克隆函数的轻量级工业传感器数据流完整性验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116094719A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117614626A (zh) * | 2024-01-17 | 2024-02-27 | 济南大学 | 一种基于puf的轻量级身份认证方法 |
-
2022
- 2022-11-16 CN CN202211436657.3A patent/CN116094719A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117614626A (zh) * | 2024-01-17 | 2024-02-27 | 济南大学 | 一种基于puf的轻量级身份认证方法 |
CN117614626B (zh) * | 2024-01-17 | 2024-04-12 | 济南大学 | 一种基于puf的轻量级身份认证方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Aman et al. | Low power data integrity in IoT systems | |
Saxena et al. | Authentication and authorization scheme for various user roles and devices in smart grid | |
Kaveh et al. | A lightweight mutual authentication for smart grid neighborhood area network communications based on physically unclonable function | |
Abbasinezhad-Mood et al. | An ultra-lightweight and secure scheme for communications of smart meters and neighborhood gateways by utilization of an ARM Cortex-M microcontroller | |
Saxena et al. | Dynamic secrets and secret keys based scheme for securing last mile smart grid wireless communication | |
CN113691380B (zh) | 一种智能电网中多维隐私数据聚合方法 | |
Wang et al. | A secure and efficient multiserver authentication and key agreement protocol for internet of vehicles | |
Qian et al. | Two secure and efficient lightweight data aggregation schemes for smart grid | |
Liu et al. | SEDEA: State estimation-based dynamic encryption and authentication in smart grid | |
Albalawi et al. | A survey on authentication techniques for the internet of things | |
Lounis et al. | T2T-MAP: A PUF-based thing-to-thing mutual authentication protocol for IoT | |
Zhao et al. | ePUF: A lightweight double identity verification in IoT | |
Saxena et al. | Efficient signature scheme for delivering authentic control commands in the smart grid | |
CN113312608B (zh) | 一种基于时间戳的电力计量终端身份认证方法及系统 | |
Liang et al. | Novel private data access control scheme suitable for mobile edge computing | |
Xia et al. | Secure multi-dimensional and multi-angle electricity data aggregation scheme for fog computing-based smart metering system | |
Hoang et al. | A lightweight mixed secure scheme based on the watermarking technique for hierarchy wireless sensor networks | |
CN116094719A (zh) | 基于物理不可克隆函数的轻量级工业传感器数据流完整性验证方法 | |
Cao et al. | A PUF-based lightweight authenticated metering data collection scheme with privacy protection in smart grid | |
Qian et al. | A trusted-ID referenced key scheme for securing SCADA communication in iron and steel plants | |
Hutto et al. | Puf-based two-factor authentication protocol for securing the power grid against insider threat | |
Ding et al. | A lightweight and secure communication protocol for the IoT environment | |
Chang et al. | Practical Privacy-Preserving Scheme With Fault Tolerance for Smart Grids | |
Patel et al. | Analysis of SCADA Security models | |
Elganzoury et al. | A new secure one-time password algorithm for mobile applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |