CN116458110A - 用于支持用于物联网的密钥管理系统的设备和方法 - Google Patents

用于支持用于物联网的密钥管理系统的设备和方法 Download PDF

Info

Publication number
CN116458110A
CN116458110A CN202080107076.8A CN202080107076A CN116458110A CN 116458110 A CN116458110 A CN 116458110A CN 202080107076 A CN202080107076 A CN 202080107076A CN 116458110 A CN116458110 A CN 116458110A
Authority
CN
China
Prior art keywords
key
message
server device
mac
iot
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
Application number
CN202080107076.8A
Other languages
English (en)
Inventor
李�泳
廖立军
段立
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN116458110A publication Critical patent/CN116458110A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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/3242Cryptographic 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 keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor

Abstract

本公开涉及用于支持用于物联网IoT的密钥管理系统KMS的服务器设备和用于IoT的设备。服务器设备被配置为从设备接收消息,消息指示针对更新另一设备的第一密钥的请求。服务器设备还被配置为基于主秘密密钥生成用于另一设备的第一密钥,基于主秘密密钥生成用于另一设备的第二密钥,以及向另一设备发送指示第二密钥的消息。设备被配置为向服务器设备发送消息,消息指示针对更新设备的第一密钥的请求,以及从服务器设备接收消息,消息指示设备的第二密钥。

Description

用于支持用于物联网的密钥管理系统的设备和方法
技术领域
本公开总体上涉及物联网(IoT)领域,并且具体涉及用于IoT的密钥管理系统(KMS)。
提出了用于支持这样的KMS的服务器设备。服务器设备可以根据请求基于主秘密密钥生成和更新用于另一设备的密钥。本公开还提出了用于IoT的设备。该设备可以从服务器设备请求设备的密钥的更新。
背景技术
最近,IoT节点部署大量增加。与此同时,越来越多的数据在IoT中被传输,确保这些数据的机密性和完整性变得更加重要。例如,当底层算法具有足够的强度并使用管理良好的加密密钥时,经过认证的和机密的信道建立协议可以提供可靠的数据保护。
在这方面,传统的设备和方法基于例如使用非对称加密,或以自组织的方式构建。
但是,传统设备和方法的问题是,典型的IoT节点可能在存储和对加密算法的支持方面受限。因此,重量级(非对称)公钥方案可能无法用于此类IoT节点。
传统设备和方法的另一个问题是,将所有密钥直接存储在IoT节点上或许是不可能的,例如,因为单个节点的存储可能无法安全地存储多个密钥。
此外,提供的密钥也可被用于更新IoT节点上的软件和固件。例如,身份验证证书或公钥可被用于验证固件更新的来源及其完整性。但是,存储密钥可能会增加攻击面。
发明内容
鉴于上述问题和缺点,本公开的实施例旨在改进传统的用于IoT的设备和方法。
具体地,目的是提供用于IoT的KMS。例如,需要密钥层次结构和密钥更新协议。密钥层次结构应简单、灵活。此外,密钥更新协议应高效。
该目的通过所附独立权利要求中描述的本公开的实施例实现。从属权利要求中进一步定义了本公开的实施例的有利实现方式。
本公开的实施例具体地提供了用于支持用于IoT的KMS的服务器设备、用于IoT的设备以及对应的方法。该服务器设备和该设备可以使用对称加密,因此可以提高密钥生成速度,可以降低针对IoT设备的硬件要求。
本公开的第一方面提供了一种用于支持用于物联网(IoT)的密钥管理系统(KMS)的服务器设备,服务器设备被配置为:从另一设备接收消息,消息指示针对更新另一设备的第一密钥的请求,基于主秘密密钥生成用于另一设备的第一密钥,其中第一密钥针对第一时间段有效,基于主秘密密钥生成用于另一设备的第二密钥,其中第二密钥针对第二时间段有效,以及向另一设备发送指示第二密钥的消息。
服务器设备可以是例如IoT服务器,也可以被包括在例如IoT服务器中。设备可以是例如IoT设备、客户端设备等,也可以被包括在例如IoT设备、客户端设备等中。
KMS可被用于生成(例如,高质量)密钥,在必要时更新生成的密钥,以及撤销用于各种实体的受损密钥。KMS可以是IoT KMS。例如,KMS可以使用主秘密密钥和伪随机函数来生成与设备的不同标识符(ID)、版本号和组标识符相关联的一个或多个密钥。
服务器设备还可以被配置为获取用于KMS系统的主秘密密钥。例如,主秘密密钥可以是KMS拥有的并且被用于得出其它密钥的长期密钥。例如,主秘密密钥可被用于基于每个设备(节点)的标识符和版本号得出用于每个设备(节点)的第一密钥和/或第二密钥。
由KMS管理的密钥可以是例如主秘密密钥、用于设备(节点)的第一密钥、用于设备的第二密钥、组(会话)密钥等。主秘密密钥可以仅被存储在服务器设备上,因此可以使用专用的高安全性硬件来保护主秘密密钥。
特别地,KMS可以是属于IOT架构的安全系统。此外,可以向KMS提供主秘密密钥。
第一密钥和第二密钥可以是例如用于IoT的设备(IoT的节点)使用的中期密钥,并且可以不时地更新。例如,服务器设备可以基于主秘密密钥生成用于另一设备的第一密钥。
在一些实施例中,服务器设备可以在接收到指示针对更新另一设备的第一密钥的请求的消息之前生成第一密钥。
在一些实施例中,服务器设备可以在接收到指示针对更新另一设备的第一密钥的请求的消息之后生成第一密钥。
此外,服务器设备可以基于主秘密密钥生成用于另一设备的第二密钥,并向另一设备发送指示第二密钥的消息。例如,消息可以包括被加密的密文。被加密的密文可以包括第二密钥。
因此,服务器设备可以支持KMS。KMS可以用于节点间通信。此外,KMS可以是轻量级的,例如,密钥层次结构可以相对平坦,深度有限,密钥更新协议可以具有用于显式认证的最佳消息数量,并且密钥材料和消息的计算可能仅涉及高效的对称加密。服务器设备还可以使用密码术来分离不同所有者和期间的密钥。
服务器设备可以包括电路系统。电路系统可以包括硬件和软件。硬件可以包括模拟电路系统或数字电路系统,或模拟电路系统和数字电路系统两者。在一些实施例中,电路系统包括一个或多个处理器以及连接到一个或多个处理器的非易失性存储器。非易失性存储器可携带可执行程序代码,当可执行程序代码被一个或多个处理器执行时,使设备执行本文描述的操作或方法。
在第一方面的一种实现方式中,服务器设备还被配置为经由通信信道从另一设备接收以下以下一项或多项:
·另一设备的标识符,
·第一随机数,
·另一设备的第一密钥计数器。
这可以提供一种例如可以生成第二密钥的优点,第二密钥可以与另一设备的标识符相关联。例如,在一些实施例中可以有多个IoT节点,即多个其他设备。此外,其他设备中的每个设备可以具有唯一标识符。此外,服务器设备可以针对其他设备(IoT节点)中的每个设备生成相应的第二密钥,第二密钥可以与其标识符相关联。此外,可以将不同其他设备的密钥彼此分离是可能的。这可以进一步增加KMS的安全性。
在第一方面的另一种实现方式中,发送的消息还包括以下一项或多项:
·第二随机数,
·密文,
·消息认证码(MAC)标签消息。
这可以提供这样的优点,例如服务器设备可以能够使用对称加密以安全通信方式向另一设备提供第二密钥。例如,服务器设备可以生成第二密钥。此外,服务器设备可以使用对称加密并且可以进一步生成密文。此外,另一设备(IoT节点)可以获得密文并对其解密,并且可以进一步获取第二密钥。因此,第二密钥可以以安全通信的方式被提供。
在第一方面的另一种实现方式中,用于另一设备的第一密钥还基于另一设备的标识符和另一设备的第一密钥计数器被生成。
这可以进一步增加KMS的安全性。例如其他设备(IoT节点)中的每个设备的第二密钥可以与其标识符相关联。此外,服务器设备可以能够将不同IoT节点的密钥彼此分离。因此可以提高安全性。
在第一方面的另一种实现方式中,用于另一设备的第二密钥还基于另一设备的标识符和另一设备的第二密钥计数器被生成。
这可以提供例如提供简单且灵活的密钥层次结构的优点。例如,针对其他设备中的每个设备,通过使用其标识符和其第二密钥计数器,可以生成相应的第二密钥。这可以进一步提高KMS的安全性。
在第一方面的另一种实现方式中,服务器设备还被配置为:基于另一设备的第一密钥确定第一临时传输密钥,以及通过用第一临时传输密钥加密第二密钥来生成密文。
这可以使得服务器设备能够以安全的方式对第二密钥加密。例如,第一临时传输密钥可以被用于加密第二密钥并以安全的方式生成密文。
加密可以用于对攻击者隐藏第二密钥。加密可以基于对称密钥加密方案(SKE)。例如,服务器设备可以使用对称密钥加密方案对生成的密文进行加密,例如Π=(KGen,Enc,Dec),包括KGen、Enc和Dec三种算法,描述如下。
·一种非确定性密钥生成算法KGen(),以安全参数1κ为输入,输出一个加密-解密密钥k。
·一种(非确定性)加密算法Enc(),以密钥k和消息m为输入,并输出密文CT。
·Π.Dec(k,CT)=m'。一种确定性解密算法Dec(),以密钥k、密文CT为输入,并输出明文m。
本公开不限于特定的加密过程。例如,服务器设备可以使用上面讨论的非确定性密钥生成算法、(非确定性)加密算法、或确定性解密算法中的任一种。
在第一方面的另一种实现方式中,服务器设备还被配置为:基于另一设备的第一密钥确定第一消息认证码(MAC)密钥,以及通过用第一MAC密钥认证密文,生成MAC标签消息。
这可以使得服务器设备以安全的方式向另一设备(IoT节点)提供第二密钥。例如,包括MAC标签消息的消息可以被发送至另一设备。另一设备(IoT节点)可以接收该消息,并且可以验证其MAC标签消息的认证(例如通过计算第一MAC密钥)。
此外,例如在MAC标签消息的认证被验证之后,另一设备(IoT节点)可以获取第二消息。
例如,服务器设备可以使用消息认证码来保护消息的完整性并计算响应。例如,服务器设备可以使用MAC方案,例如MAC=(MAC.Gen,MAC.Tag,MAC.Vfy),包括MAC.Gen、MAC.Tag和MAC.Vfy三种算法,描述如下:
·一种非确定性密钥生成算法MAC.Gen(),以安全参数1κ为输入,并输出密钥k。
·一种(非确定性)消息标记算法MAC.Tag()以密钥k和消息m为输入,输出认证标签macT。
·MAC.Vfy(k,m,macT)=b。一种确定性标签验证算法MAC.Vfy(),以密钥k、消息m和标签macT为输入,并输出布尔值b。如果macT是m上的有效MAC标签,则b为TRUE。
在第一方面的另一种实现方式中,服务器设备还被配置为:从另一设备接收确认(ACK)消息,以及在成功验证ACK消息之后,将另一设备的密钥计数器更新为另一设备的另一密钥计数器。
这可以提供优点例如第二密钥或密钥更新协议可以被安全地传递到另一设备。此外,可以接收ACK消息,其可以确认第二密钥或密钥更新协议被相应IoT节点接收。
本公开的第二方面提供了一种用于IoT的设备,设备包括设备的第一密钥,其中第一密钥针对第一时间段有效,其中设备被配置为:向服务器设备发送消息,消息指示针对更新设备的第一密钥的请求,以及从服务器设备接收消息,消息指示设备的第二密钥,其中第二密钥针对第二时间段有效。
第二方面的设备可以是例如IoT设备、IoT节点、客户端设备等,或者可以被包括在例如IoT设备、IoT节点、客户端设备等中。服务器设备可以是例如IoT服务器,或者可以被包括在例如IoT服务器中。
用于IoT的设备可以包括存储单元,该存储单元可以存储该设备的第一密钥。此外,该设备可以支持高级加密标准(AES)模块。
设备可以包括电路系统。电路系统可以包括硬件和软件。硬件可以包括模拟电路系统或数字电路系统,或模拟电路系统和数字电路系统两者。在一些实施例中,电路系统包括一个或多个处理器和连接到一个或多个处理器的非易失性存储器。非易失性存储器可携带可执行程序代码,当被一个或多个处理器执行时,可执行程序代码使得设备执行本文描述的操作或方法。
在第二方面的一种实现方式中,设备还被配置为:验证从服务器设备所接收的消息的认证,以及获取设备的第二密钥。
这可以使设备能够安全地获取第二密钥。例如,设备可以验证所接收的消息。此外,在所接收的消息中指示的第二密钥可以由设备获取。
例如,设备可以使用伪随机函数(PRF)来得出密钥。PRF可以具有以下属性:如果攻击者不知道密钥,则输出在攻击者看来接近于均匀随机。
例如,该设备可以使用PRF,例如伪随机函数F=(FKGen,PRF),包括的FKGen和PRF两种算法,描述如下。
·一种非确定性密钥生成算法FKGen(),以安全参数1κ为输入并输出密钥k。
·F.PRF(k,x)=y。一种PRF评估算法PRF(),以密钥k和数据x为输入,并输出图像y。
在第二方面的另一种实现方式中,设备还被配置为经由通信信道向服务器设备发送以下中一项或多项:
·设备的标识符,
·第一随机数,
·设备的第一密钥计数器。
这可以提供例如可以提高KMS的安全性的优点。此外,可以降低攻击面的风险。例如,设备可以向服务器设备发送其标识符、第一随机数和第一密钥计数器。此外,服务器设备可以基于设备的标识符等,生成用于设备的第一密钥和/或第二密钥。
在第二方面的一种实现方式中,所接收的消息包括以下一项或多项:
·第二随机数,
·密文,
·MAC标签消息。
这可以使设备能够安全地接收第二密钥。例如,服务器设备可以生成第二密钥。此外,服务器设备可以使用对称加密并且可以进一步生成密文。此外,设备(IoT节点)可以获得密文并对其解密,并且可以进一步获取第二密钥。因此,可以以安全通信方式接收第二密钥。
在第二方面的另一种实现方式中,设备还被配置为:基于设备的第一密钥计算第一MAC密钥,以及基于第一MAC密钥验证所接收的消息的MAC标签消息的认证。
例如,设备可以接收包括MAC标签消息的消息。此外,设备可以验证所接收的消息的MAC标签消息的认证。此外,例如,在MAC标签消息的认证被验证后,设备(IoT节点)可以获取第二消息。这可以进一步提高KMS的安全性。
在第二方面的另一种实现方式中,设备还被配置为:基于设备的第一密钥计算第一临时传输密钥,以及基于使用第一临时传输密钥对密文的解密,获取设备的第二密钥。
这可以使设备能够安全地获取第二密钥。例如设备可以基于设备的第一密钥计算第一临时传输密钥。此外,第一临时传输密钥可以被用于解密指示第二密钥的密文。此外,第二密钥可以被获取。
这可以提供例如可以提供简单且灵活的密钥层次结构的优点。
在第二方面的另一种实现方式中,设备还被配置为:基于第一MAC密钥生成ACK消息,以及向服务器设备发送ACK消息。
本公开的第三方面提供了用于支持用于IoT的KMS的方法,方法包括:从另一设备接收消息,消息指示针对更新另一设备的第一密钥的请求,基于主秘密密钥生成用于另一设备的第一密钥,其中第一密钥针对第一时间段有效,基于主秘密密钥生成用于另一设备的第二密钥,其中第二密钥针对第二时间段有效,以及向另一设备发送指示第二密钥的消息。
在第三方面的一种实现方式中,方法还包括经由通信信道从另一设备接收以下一项或多项:
·另一设备的标识符,
·第一随机数,
·另一设备的第一密钥计数器。
在第三方面的另一种实现方式中,发送的消息还包括以下一项或多项:
·第二随机数,
·密文,
·MAC标签消息。
在第三方面的另一种实现方式中,方法还包括:还基于另一设备的标识符和另一设备的第一密钥计数器生成用于另一设备的第一密钥。
在第三方面的另一种实现方式中,方法还包括:还基于另一设备的标识符和另一设备的第二密钥计数器生成另一设备的第二密钥。
在第三方面的另一种实现方式中,方法还包括:基于另一设备的第一密钥确定第一临时传输密钥,以及通过用第一临时传输密钥加密第二密钥来生成密文。
在第三方面的另一种实现方式中,方法还包括:基于另一设备的第一密钥确定第一MAC密钥,以及基于使用第一MAC密钥认证密文来生成MAC标签消息。
在第三方面的另一种实现方式中,方法还包括:从另一设备接收ACK消息,以及在成功验证ACK消息之后,将另一设备的密钥计数器更新为另一设备的另一密钥计数器。
第三方面的方法实现了针对第一方面的服务器设备所描述的优点和效果。
本公开的第四方面提供了一种用于IoT的设备的方法,设备包括设备的第一密钥,其中第一密钥针对第一时间段有效,其中方法包括:向服务器设备发送消息,消息指示针对更新设备的第一密钥的请求,以及从服务器设备接收消息,消息指示设备的第二密钥,其中第二密钥针对第二时间段有效。
在第四方面的一种实现方式中,方法还包括:验证从服务器设备接收到的消息的认证,以及获取设备的第二密钥。
在第四方面的另一种实现方式中,方法还包括:经由通信信道向服务器设备发送以下一项或多项:
·设备的标识符,
·第一随机数,
·设备的第一密钥计数器。
在第四方面的另一种实现方式中,所接收的消息包括以下一项或多项:
·第二随机数,
·密文,
·标签消息。
在第四方面的另一种实现方式中,方法还包括:基于设备的第一密钥计算第一MAC密钥,以及基于第一MAC密钥验证所接收的消息的MAC标签消息的认证。
在第四方面的另一种实现方式中,方法还包括:基于设备的第一密钥计算第一临时传输密钥,以及基于使用第一临时传输密钥对密文的解密,获取设备的第二密钥。
在第四方面的另一种实现方式中,方法还包括:基于第一MAC密钥生成ACK消息,以及向服务器设备发送ACK消息。
第四方面的方法实现了针对第二方面的设备所描述的优点和效果。
本公开的第五方面提供了一种包括程序代码的计算机程序,程序代码用于执行根据第三方面或第四方面或它们的任一实现方式的方法。
本发明的第六方面提供了一种存储可执行程序代码的非暂态存储介质,当由处理器执行时,可执行程序代码使得根据第三方面或第四方面或它们的任一实现方式的方法将被执行。
需要说明的是,本申请中的所有设备、元件、单元和模块都可以在软件或硬件元件或其任何种类的组合中实现。本申请中描述的各种实体所执行的所有步骤以及所描述的各种实体要执行的功能均意在指相应实体用于执行相应步骤和功能。虽然在以下具体实施例的描述中,外部实体执行的具体功能或步骤没有在执行具体步骤或功能的实体的具体详述元件的描述中体现,但是技术人员应清楚,这些方法和功能可以通过相应的硬件或软件元件或其任何组合实现。
附图说明
结合所附附图,下面具体实施例的描述将阐述上述各方面及其实现方式,在附图中:
图1示出了本公开的实施例提供的用于支持用于IoT的KMS的服务器设备和用于IoT的设备的示意图;
图2示出了用于单个IoT节点的密钥层次结构;
图3示出了用于多个节点的密钥层次结构;
图4示出了示例性密钥更新协议;
图5示出了基于PRF、MAC和对称加密的示例性密钥更新协议ΣNKUP
图6示出了用于执行密钥更新协议ΣNKUP和维护密钥状态的计算机化系统;
图7示出了本公开的实施例提供的支持用于IoT的KMS的方法的流程图的示意图;
图8示出了本公开的实施例提供的用于IoT的设备的方法的流程图的示意图。
具体实施方式
图1示出了本公开的实施例提供的用于支持用于IoT的KMS 101的服务器设备100和用于IoT的设备200的示意图。
服务器设备100可以是IoT服务器,并且设备可以是IoT节点。KMS可以是IoT KMS。
用于支持用于物联网的KMS 101的服务器设备100被配置为从另一设备200接收消息201,该消息201指示针对更新另一设备200的第一密钥111的请求。
服务器设备100还被配置为基于主秘密密钥110生成用于另一设备200的第一密钥111,其中第一密钥111针对第一时间段有效。
服务器设备100还被配置为基于主秘密密钥110生成用于另一设备200的第二密钥112,其中第二密钥112针对第二时间段有效。
例如,服务器设备100可以包括处理器120,该处理器120可以生成第一密钥、第二密钥等。
服务器设备100还被配置为向另一设备200发送指示第二密钥112的消息120。
设备200包括设备200的第一密钥111,其中第一密钥111针对第一时间段有效。
设备200被配置为向服务器设备100发送消息201,该消息201指示针对更新设备200的第一密钥111的请求。
设备200还被配置为从服务器设备100接收消息120,该消息120指示设备200的第二密钥112,其中第二密钥112针对第二时间段有效。
例如,设备200可以包括处理器220,该处理器220可以获取第一密钥、第二密钥等。
服务器设备100和/或设备200可以包括处理电路系统(图1中未示出),该处理电路系统用于执行、进行或发起本文所描述的设备100的各种操作。处理电路系统可以包括硬件和软件。硬件可以包括模拟电路系统或数字电路系统,或模拟电路系统和数字电路系统两者。数字电路系统可以包括专用集成电路(application-specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)、数字信号处理器(digital signal processor,DSP)或多用途处理器等组件。在一个实施例中,处理电路系统包括一个或多个处理器和连接到一个或多个处理器的非暂态存储器。非暂态存储器可以携带可执行程序代码,当由一个或多个处理器执行时,该可执行程序代码使服务器设备100和/或设备200执行、进行或发起本文描述的操作或方法。
接下来,将参考图2、图3、图4和图5讨论密钥层次结构和关联的密钥更新协议。此外,下面假设服务器设备200基于包括基于IoT KMS 101的KMS 101的IoT服务器,并且设备200基于IoT节点。
图2示出了用于设备200(例如,单个IoT节点)的示例性密钥层次结构,从由IoTKMS 101保护的长期主秘密密钥(ms)110到由设备200拥有的临时有效传输密钥和MAC密钥。
密钥层次结构可以从三个平面来看。密钥层次结构示出了不同密钥之间的关系,它还确定了何时或何地需要密钥更新协议,并且它可以保证密钥的安全性。
主秘密密钥(ms)110可以是KMS 101拥有的长期密钥,并且可以被用于得出其它密钥。主秘密密钥110可被用于恢复节点密钥或数据密钥。另一方面,主秘密密钥110可以仅驻留在服务器设备100处,从而可以使用专用的高安全性硬件进行保护。第一密钥111(节点密钥kτ)可以是由设备200使用的中期密钥,并且可以不时地更新。
例如,主秘密密钥110可被用于基于每个设备200(每个IoT节点)的标识符i和版本号CNTi,得出其第一密钥111(密钥ki),其中,i和CNTi是公开信息。
如图2所示,实心箭头“→”表示下层密钥可以从上层密钥得出。更具体地,包括kτ(第一密钥111)和kτ+1(第二密钥112)的所有节点密钥可以从主秘密密钥110得出,并且临时传输密钥212(ktrans)和临时MAC密钥211(kmac)从当前节点密钥(第一密钥111或第二密钥112)得出。
例如,临时传输密钥212(ktrans)和临时MAC密钥211(kmac)从第一密钥111得出。此外,临时传输密钥222(ktrans)和临时MAC密钥221(kmac)可以从第二密钥112得出。
在此层次结构中,不同时间段的密钥在计算上并不相互依赖。为了确保类似于前向保密性的密钥独立性,可以实现可由服务器设备100(例如,包括KMS 101的IoT服务器)和设备200(例如,IoT节点)运行的密钥更新协议。
图3示出了用于多个节点的密钥层次结构,即,在空间平面中。
例如,包括KMS 101的服务器设备200可以基于主秘密密钥110生成用于设备200(第一节点)的第一密钥111。此外,用于设备200(第一节点)的临时传输密钥222(ktrans)和临时MAC密钥221(kmac)从第一密钥111得出。
此外,包括KMS 101的服务器设备200可以基于主秘密密钥110生成用于第二节点的第一密钥301。此外,用于第二节点的临时传输密钥312(ktrans)和临时MAC密钥311(kmac)从第一密钥301得出。
此外,包括KMS 101的服务器设备100可以基于主秘密密钥110生成用于第三节点的第一密钥302。此外,用于第三节点的临时传输密钥322(ktrans)和临时MAC密钥321(kmac)可以从第一密钥302得出。
此外,从主秘密密钥110得出的节点密钥可以位于单独的节点上。它们可以在计算上保持独立,并且可以在不考虑其它节点的状态的情况下被更新。
现在参考图4,示出了示例性密钥更新协议。
在图4中,示出了用于节点密钥的密钥更新协议ΣNKUP,该密钥更新协议可以被视为在更复杂的场景中用于密钥更新的原型。
密钥更新协议主要工作如下,其中,交换三条消息来执行密钥更新。
作为第一消息M1的更新请求可以由设备200(IoT节点)计算。如果服务器设备200(IoT KMS)确认其有效性,则它可以生成一个或多个新密钥(例如,用于设备200的第二密钥112),可以计算来自ch1的响应,并且可以生成新的询问ch2
M2中的有效响应可以确保设备200(IoT节点)正在与包括IoT KMS 101的真实服务器设备200通话。
如果设备200(IoT节点)发送回根据M1、M2和ch2计算的有效确认M3,则包括IoT KMS101的服务器设备200可以确认设备200(IoT节点)已经成功获得第二密钥112。
接下来,将详细讨论密钥更新协议ΣNKUP。请求包括基本标识符。询问可以是随机数N1和N2。确认可以包括MAC值。(见图5)。
图5示出了基于PRF、MAC和对称加密的示例性密钥更新协议ΣNKUP
此外,在执行密钥更新之前,需要初始化来提供初始共享密钥。
在501,初始化:为包括IoT KMS 101的服务器设备100提供主秘密密钥110,并且设备200(IoT节点)具有第一密钥(初始密钥k0)。计数器值CNT0和标识符pidi等其它信息也已在本阶段结束时提供。
在502,在时间τ+1(τ≥0)更新:设备200(由pidi标识的IoT节点)可以选择随机随机数N1,并发送N1及其用于密钥更新的请求。需要说明的是,设备200(IoT节点)持有当前密钥kτ,τ≥0。
此外,在接收到请求之后,包括IoT KMS 101的服务器设备100可以恢复用于阶段τ的密钥kτ,并进一步得出临时传输密钥ktrans和MAC密钥kmac
此外,包括IoT KMS 101的服务器设备100可以生成第二密钥112(例如,通过生成用于pidi的新密钥),用ktrans 212对其加密,并用kmac 211验证密文CTτ+1。然后,CTτ+1、新的随机数N2和MAC标签(macT1)可以被发送到设备200(IoT节点)。
此外,设备200(IoT节点)可以从当前密钥kτ(例如,第一密钥111)得出临时传输密钥ktrans 212和MAC密钥kmac 211。设备200(IoT节点)还可以验证MAC标签(macT1)和消息。如果验证成功,则设备200(IoT节点)可以通过解密CTτ+1来获取第二密钥112。之后,设备200(IoT节点)可以生成确认MAC标签macT2,如上文所讨论的参考图4。
此外,在接收到macT2之后,包括IoT KMS 101的服务器设备100可以对它进行验证,并且如果验证失败,则可以中止。否则,服务器设备100可以将计数器值CNTτ更新为下一个值CNTτ+1
这两个随机数N1和N2可以是针对对端的询问。
现在参考图6,示出了用于执行密钥更新协议ΣNKUP并维护密钥状态的计算机化系统。
图6所示的计算机系统可以在服务器设备100和/或设备200中实现。
通信接口601用于与一个或多个预期对端交换消息。
消息认证码(message authentication code,MAC)运算符602被配置为标记消息并使用提供的密钥检查消息。
伪随机函数(pseudo random function,PRF)运算符603被配置用于从标识符和提供的密钥得出密钥。
加密运算符604被配置用于以可靠的方式加密新的密钥材料。
同步模块605被配置用于在内部与对端同步状态。同步模块605可以根据MAC运算符602和加密运算符604的检查和解密结果来控制逻辑。
同步模块605在服务器设备100中实现时,可以维护同一KMS 101中所有节点的所有同步信息。
图7示出了根据本公开的实施例的用于支持用于IoT的KMS 101的方法700。如上所描述,方法700可以由服务器设备100执行。
方法700包括步骤701,即从另一设备200接收消息201,该消息201指示针对更新另一设备200的第一密钥111的请求。
方法700还包括步骤702,即基于主秘密密钥110为另一设备200生成第一密钥111,其中第一密钥111针对第一时间段有效。
方法700还包括步骤703,即基于主秘密密钥110为另一设备200生成第二密钥112,其中第二密钥112针对第二时间段有效。
方法700还包括步骤704,即向另一设备200发送指示第二密钥112的消息120。
图8示出了根据本公开的实施例的用于IoT的设备的方法800,设备包括设备200的第一密钥111,其中第一密钥111针对第一时间段有效。如上所描述的,方法800可以由设备200执行。
方法800包括步骤801,即向服务器设备100发送消息201,该消息201指示针对更新设备200的第一密钥111的请求。
方法800还包括步骤802,即从服务器设备100接收消息120,该消息120指示设备200的第二密钥112,其中,第二密钥112针对第二时间段有效。
已经结合作为示例的各种实施例以及实现方式描述了本公开。但是,根据对附图、本公开和所附权利要求书的研究,本领域技术人员在实践所要求保护的公开时,能够理解和实现其它变化。在权利要求书以及说明书中,词语“包括”不排除其它元件或步骤,且不定冠词“一个”(a)或“一个”(an)不排除多个。单个元件或其它单元可满足权利要求中列举的若干实体或项目的功能。在互不相同的从属权利要求中列举某些措施并不表示这些措施的组合不能被有效地使用。

Claims (18)

1.一种用于支持用于物联网IoT的密钥管理系统KMS(101)的服务器设备(100),所述服务器设备(100)被配置为:
从另一设备(200)接收消息(201),所述消息(201)指示针对更新所述另一设备(200)的第一密钥(111)的请求;
基于主秘密密钥(110)生成用于所述另一设备(200)的所述第一密钥(111),其中所述第一密钥(111)针对第一时间段有效;
基于所述主秘密密钥(110)生成用于所述另一设备(200)的第二密钥(112),其中所述第二密钥(112)针对第二时间段有效;以及
向所述另一设备(200)发送指示所述第二密钥(112)的消息(120)。
2.根据权利要求1所述的服务器设备(100),还被配置为:
经由通信信道从所述另一设备(200)接收以下一项或多项:
-所述另一设备(200)的标识符;
-第一随机数;
-所述另一设备(200)的第一密钥计数器。
3.根据权利要求1或2所述的服务器设备(100),其中:
所发送的所述消息(120)还包括以下一项或多项:
-第二随机数;
-密文;
-消息认证码MAC标签消息。
4.根据权利要求2所述的服务器设备(100),其中:
用于所述另一设备(200)的所述第一密钥(111)还基于所述另一设备(200)的所述标识符和所述另一设备(200)的所述第一密钥计数器被生成。
5.根据权利要求2至4中任一项所述的服务器设备(100),其中:
用于所述另一设备(112)的所述第二密钥(112)还基于所述另一设备(200)的所述标识符和所述另一设备(200)的第二密钥计数器被生成。
6.根据权利要求3至5中任一项所述的服务器设备(100),还被配置为:
基于所述另一设备(200)的所述第一密钥(111),确定第一临时传输密钥(212);以及
通过用所述第一临时传输密钥(212)加密所述第二密钥(112),生成所述密文。
7.根据权利要求3至6中任一项所述的服务器设备(100),还被配置为:
基于所述另一设备(200)的所述第一密钥(111),确定第一消息认证码MAC密钥(211);以及
基于用所述第一MAC密钥(211)认证所述密文,生成所述MAC标签消息。
8.根据权利要求1至7中任一项所述的服务器设备(100),还被配置为:
从所述另一设备(200)接收确认ACK消息;
在成功验证所述ACK消息之后,将所述另一设备(200)的密钥计数器更新为所述另一设备(200)的另一密钥计数器。
9.一种用于物联网IoT的设备(200),所述设备包括所述设备(200)的第一密钥(111),其中所述第一密钥(111)针对第一时间段有效,其中所述设备被配置为:
向服务器设备(100)发送消息(201),所述消息(201)指示针对更新所述设备(200)的所述第一密钥(111)的请求;以及
从所述服务器设备(100)接收消息(120),所述消息(120)指示所述设备(200)的第二密钥(112),其中所述第二密钥(112)针对第二时间段有效。
10.根据权利要求9所述的设备(200),还被配置为:
验证从所述服务器设备(100)所接收的所述消息(120)的认证,以及
获取所述设备的所述第二密钥(112)。
11.根据权利要求9或10所述的设备(200),还被配置为:
经由通信信道向所述服务器设备(100)发送以下一项或多项:
-所述设备(200)的标识符;
-第一随机数;
-所述设备(200)的第一密钥计数器。
12.根据权利要求9至11中任一项所述的设备(200),其中:
所接收的所述消息(120)包括以下一项或多项:
-第二随机数;
-密文;
-消息认证码MAC标签消息。
13.根据权利要求12所述的设备(200),还被配置为:
基于所述设备(200)的所述第一密钥(111),计算第一消息认证码MAC密钥(311);以及
基于所述第一MAC密钥(311),验证所述接收的所述消息(120)的所述MAC标签消息的认证。
14.根据权利要求12或13所述的设备(200),还被配置为:
基于所述设备(200)的所述第一密钥(111),计算第一临时传输密钥(312);以及
基于使用所述第一临时传输密钥(312)对所述密文的解密,获取所述设备(200)的所述第二密钥(112)。
15.根据权利要求13或14所述的设备(200),还被配置为:
基于所述第一MAC密钥(311),生成确认ACK消息;以及
向所述服务器设备(100)发送所述ACK消息。
16.一种用于支持用于物联网IoT的密钥管理系统KMS的方法,所述方法包括:
从另一设备(200)接收消息(201),所述消息(201)指示针对更新所述另一设备(200)的第一密钥(111)的请求;
基于主秘密密钥(110)生成用于所述另一设备(200)的所述第一密钥(111),其中所述第一密钥(111)针对第一时间段有效;
基于所述主秘密密钥(110)生成用于所述另一设备(200)的第二密钥(112),其中所述第二密钥(112)针对第二时间段有效;以及
向所述另一设备(200)发送指示所述第二密钥(112)的消息(120)。
17.一种用于物联网IoT的设备的方法,所述设备包括所述设备(200)的第一密钥(111),其中所述第一密钥(111)针对第一时间段有效,其中所述方法包括:
向服务器设备(100)发送消息(201),所述消息(201)指示针对更新所述设备(200)的所述第一密钥(111)的请求;以及
从所述服务器设备(100)接收消息(120),所述消息(120)指示所述设备(200)的第二密钥(112),其中,所述第二密钥(112)针对第二时间段有效。
18.一种包括指令的计算机程序产品,在程序被计算机执行时,所述指令使得所述计算机执行权利要求16或权利要求17所述的方法的要被执行的步骤。
CN202080107076.8A 2020-11-30 2020-11-30 用于支持用于物联网的密钥管理系统的设备和方法 Pending CN116458110A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2020/083847 WO2022111823A1 (en) 2020-11-30 2020-11-30 Devices and methods for supporting key management system for internet-of-things

Publications (1)

Publication Number Publication Date
CN116458110A true CN116458110A (zh) 2023-07-18

Family

ID=73654809

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080107076.8A Pending CN116458110A (zh) 2020-11-30 2020-11-30 用于支持用于物联网的密钥管理系统的设备和方法

Country Status (2)

Country Link
CN (1) CN116458110A (zh)
WO (1) WO2022111823A1 (zh)

Also Published As

Publication number Publication date
WO2022111823A1 (en) 2022-06-02

Similar Documents

Publication Publication Date Title
US11323276B2 (en) Mutual authentication of confidential communication
CN107948189B (zh) 非对称密码身份鉴别方法、装置、计算机设备及存储介质
JP6515246B2 (ja) 情報及び階層的で決定性の暗号化鍵のセキュアな交換のための共通秘密の決定
US20190245695A1 (en) Secure communications providing forward secrecy
US10015159B2 (en) Terminal authentication system, server device, and terminal authentication method
US8670563B2 (en) System and method for designing secure client-server communication protocols based on certificateless public key infrastructure
JP6226197B2 (ja) 証明書発行システム、クライアント端末、サーバ装置、証明書取得方法、及び証明書発行方法
US11018866B2 (en) Dynamic second factor authentication for cookie-based authentication
KR20190005878A (ko) 보안 데이터 송신을 위한 방법 및 시스템
JP2009529832A (ja) 発見不可能、即ち、ブラック・データを使用するセキュアなデータ通信
CN108449756B (zh) 一种网络密钥更新的系统、方法及装置
CN111935712A (zh) 一种基于NB-IoT通信的数据传输方法、系统及介质
JP6167990B2 (ja) 署名検証システム、検証装置、及び署名検証方法
JP6548172B2 (ja) 端末認証システム、サーバ装置、及び端末認証方法
US20230188325A1 (en) Computer-implemented system and method for highly secure, high speed encryption and transmission of data
KR20200043855A (ko) Dim을 이용한 드론 인증 방법 및 장치
CN113918971A (zh) 基于区块链的消息传输方法、装置、设备及可读存储介质
CN116458110A (zh) 用于支持用于物联网的密钥管理系统的设备和方法
EP3361670B1 (en) Multi-ttp-based method and device for verifying validity of identity of entity
TWI761243B (zh) 群組即時通訊的加密系統和加密方法
CN117335981A (zh) 基于轻量级密钥算法的安全通信方法、装置、设备及介质

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