CN112653553A - 物联网设备身份管理系统 - Google Patents
物联网设备身份管理系统 Download PDFInfo
- Publication number
- CN112653553A CN112653553A CN202011600673.2A CN202011600673A CN112653553A CN 112653553 A CN112653553 A CN 112653553A CN 202011600673 A CN202011600673 A CN 202011600673A CN 112653553 A CN112653553 A CN 112653553A
- Authority
- CN
- China
- Prior art keywords
- internet
- dmid
- things equipment
- identity management
- management system
- 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.)
- Granted
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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0825—Key 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) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- 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/321—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 a third party or a trusted authority
- H04L9/3213—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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- 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/3226—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 a predetermined code, e.g. password, passphrase or PIN
-
- 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
-
- 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/3263—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
- H04L9/3268—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
Abstract
一种物联网设备身份管理系统,对物联网设备身份管理采用基于区块链智能合约的DMID方案。对于物联网设备用户的身份管理采用基于区块链智能合约的DID方案。所述物联网设备的DMID智能合约包括:所有者、信任列表、持有证书、撤销标志位、DMID文档和紧急联系人。所述物联网设备用户的DID智能合约包括:所有者、社交恢复列表、可校验证书撤销列表、信任列表、持有证书、撤销标志和DID文档。所述管理系统包括安全硬件模块SH‑DMID,该模块包括物理不可克隆功能PUF模块和真随机数生成器TRNG模块。
Description
技术领域
本发明属于物联网技术领域,特别涉及一种物联网设备身份管理系统。
背景技术
伴随着物联网的发展,物联网的安全事故也频频发生。譬如,某系列动物填充玩具遭遇数据泄露,敏感客户数据库受到恶意入侵。该事故泄露信息包括玩具录音、MongoDB泄露的数据、220万账户语音信息、数据库勒索信息等。
发明内容
本发明实施例之一,一种物联网设备身份管理系统,对物联网设备身份管理采用基于区块链智能合约的DMID方案。对于物联网设备用户的身份管理采用基于区块链智能合约的DID方案。
所述物联网设备的DMID智能合约包括:所有者、信任列表、持有证书、撤销标志位、DMID文档和紧急联系人。所述物联网设备用户的DID智能合约包括:所有者、社交恢复列表、可校验证书撤销列表、信任列表、持有证书、撤销标志和DID文档。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1根据本发明实施例之一的DID和DMID智能合约结构示意图。
图2根据本发明实施例之一的BIP-44示例图。
图3根据本发明实施例之一的SH-DMID的硬件架构图。
图4根据本发明实施例之一的SH-DMID的软件架构图。
图5根据本发明实施例之一的PUF操作流程图。
图6根据本发明实施例之一的DMID创建流程图。
具体实施方式
保障物联网系统安全,涉及到很多方面,其中物联网设备身份的认证和管理扮演了一个至关重要的角色。然而,目前的物联网身份管理系统多是采用中心式服务器,并且采用基于CA(Certificate Authority)的PKI(Public Key Infrastructure)体系对设备的身份进行认证。这种方式存在以下一些缺陷。
首先,中心化的系统非常容易受到DDOS攻击,从而可能引起系统的单点故障,对物联网设备的身份认证造成影响;其次,中心化的系统存储了用户的大量隐私数据信息,因此容易成为黑客攻击的热点。如果服务器被攻破,那么这些隐私数据也将随之泄露。同时,目前物联网设备厂商多会直接为物联网设备生成密钥并导入到设备中,在这种方式下,厂商可能会泄露密钥从而造成物联网设备身份的窃取。最后,中心化CA存在私钥泄露以及误签发证书的风险,同时,中心化CA的证书签发周期长并且费用较高,不适用于大规模物联网设备。
近些年迅速发展的区块链技术为解决以上问题提供了一种可能,区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、可追溯、公开透明等特点。
本发明的采用了区块链技术以及硬件安全技术构建了一个安全的去中心化的物联网身份管理系统。在该系统中,物联网设备可以自己在区块链上创建并管理自己的身份。通过硬件安全技术的保护,该身份不会被任何人窃取。同时,通过构建在该去中心化身份之上的可校验证书体系,物联网设备之间可以实现彼此之间的信任,从而更进一步可以实现彼此之间的服务交易。
DID(Decentralized Identifiers,DID)即去中心化标识符,是一种采用了区块链和分布式系统技术的标识符。设备的DID命名为去中心机器标识符(decentralizedmachine identifier,DMID)。
根据一个或者多个实施例,考虑到用户和设备有着不同的权限,例如用户可以作为发布者给设备颁发证书,但设备却不具有这样的权限。本发明基于以太坊智能合约技术构建了针对用户的DID和针对设备的DMID方案,涉及了DID和DMID的注册,恢复,撤销以及读取。用户或设备会在其本地根据相应的合约模板创建部署合约的交易,随后发送到以太坊之上,合约的地址再加上前缀即为最终的DID和DMID。
如图1所示,左右两侧分别记录了用户以及物联网设备所对应的合约模板的内容。其中“所有者”属性记录了该合约的所有人的账户地址,当调用合约的函数时,合约会校验调用者的地址是否与该“所有者”属性值一致,如果不一致,则调用失败。“DID文档”属性记录了DID文档所对应的IPFS哈希,通过该哈希值,可以从IPFS网络上获取完整的DID文档。“持有证书”属性里面记录了用户或者物联网设备被签发的可校验证书的IPFS哈希。当用户更换手机时,该属性值可以帮助用户快速地找回被签发的证书。“信任列表”的作用是备份用户或设备所信任的DID的值,相应地,设备或用户会信任该DID所签发的证书。“撤销标志”属性默认状态下值为False。当该值被置为True后,DID合约将不可被任何人操纵。由于该操作的不可逆转性,因此设置锁定时间,即该操作不会立刻生效,需要经过一段时间后才行。在这段时间之内,用户或设备可以撤销该操作。
“社交恢复列表”和“可校验证书恢复列表”这两个属性值是用户的DID合约模板所独有的。“社交恢复列表”中记录了多个其它用户的DID值,可以选择熟悉的亲戚或者朋友的DID。当用户的密钥丢失时,只要该列表中三分之二数目的DID同意,则该合约的“所有者”可以被更换。用户可以作为一个签发者为其它的DID签发可校验证书,证书具有一定的有效期,但用户可能因为一些原因需要在有效期之内对证书进行撤销,此时便可以将证书的hash填入“可校验证书撤销列表”属性中。
“紧急联系人”属性是物联网设备DMID合约所特有的属性,其功能和“社交恢复列表”属性有些类似,也是用于物联网设备密钥丢失时对合约的“所有者”进行更换,从而恢复物联网设备DMID的控制权,同时将该属性值设置为用户DID的合约地址。
根据一个或者多个实施例,用户DID的创建过程包括,用户通过手机APP来创建自己的DID,该APP会和多个以太坊节点进行交互以保证所获取到的区块链信息的可靠安全。创建DID的过程即部署合约到区块链的过程,因此首先需要创建用于部署合约的密钥对。考虑到用户可能会创建多个DID,所以需要生成多个密钥对,为了更好地对这些密钥对进行管理,APP采用了分层确定性钱包的方案。该方案遵循BIP32,BIP39以及BIP44的标准。详细步骤如下。
首先是基于BIP39的助记词的创建。助记词是为了方便用户更好地备份钱包,助记词可以生成种子,从而派生出所有的密钥。APP首先需要通过随机数发生器生成128位的随机序列,随后将该熵值通过SHA256函数进行哈希并将哈希值的前四位作为校验值添加到随机序列的后面。将新的132位的序列按每11位进行划分,可以得到12个子序列。将该子序列和预先定义的字典进行映射,得到的单词序列就是助记词。由于助记词可以恢复对用户创建的所有的DID的控制,所以需要妥善保存,可以用纸笔记录下来并放置在安全的地方。
助记词仅能够表示长度为128到256位的熵,还需要通过密钥扩展函数PBKDF2导出更长的(512位)种子。PBKDF2函数有两个输入参数,一个是助记词,另一个则是盐值即用户密码,使用盐的目的是为了使得构建暴力攻击的查找表不可行。PBKDF2函数会对上面两个输入参数进多达2048轮HMAC-SHA512哈希,从而得到最终的512位种子值。
通过该种子值便可以基于BIP32标准创建一个HD钱包,HD钱包是树状结构并存储了多组密钥对。由于分层确定性钱包的树的灵活性,基于BIP-44标准对层级机构进行了定义。BIP-44标准包含了五个预定义的层级的结构,如图2所示,其中purpose固定为44,coin_type是加密货币的类型,account则允许用户在逻辑上对钱包进行划分,定义以下层级结构,m/purpose’/did_type’/did_kind’/index,其中purpose固定为66,did_type即表示did方案的类型,did_kind定义对did的应用场景进行了划分,如应用在学校,银行,保险公司等。index则对该目录下的did索引,可以递增从而创建多个did所对应的密钥。在本实施例中,是通过m/66’/0’/0’/0的密钥衍生路径生成第一个私钥PrivateKey1。
在APP生成密钥对后,会对部署合约的交易进行打包,随后用密钥对中的私钥对打包后的交易进行签名并发送到区块链网络中。当合约成功部署后,用户会得到合约的地址Addressuser。随后用户需要在本地生成一个DID文档。首先用户需要生成一个DID文档的空模板,包含以下属性:上下文、DID属性、公钥属性以及认证属性。随后需要对这些属性值进行填充,其中DID属性值填入did:SH-DID:Addressuser,公钥属性需要填入PrivateKey1所对应的公钥PubKey1,同时设置该公钥的id为keys-1。认证属性填入公钥的id即可。
通过上述步骤,用户得到了一个DID文档,接下来需要将该文档上传到IPFS网络从而得到文件所对应的IPFS哈希。随后用户需要调用合约接口函数将该哈希值填入DID文档属性。
根据一个或者多个实施例,由于目前的DID方案应用到物联网时安全性不足,本发明的物联网设备身份管理系统包括一个安全硬件模块,该模块集成了一些子模块例如TRNG,PUF以及TrustZone。将该模块称为SH-DMID(secure hardware based DMID),SH-DMID可以被集成到现有的物联网系统中来保证DMID的安全。
如图3所示,SH-DMID包含以下几个子模块。首先是真随机数生成器TRNG,TRNG可以基于物理过程而不是算法来生成随机数。TRNG基于微观现象来生成低能阶的,静态随机噪声信号。例如热噪声,光电效应以及其它量子现象。这些随机过程在理论上来说是完全不可预测的。
物理不可克隆功能(即PUF:physical unclonable function)是一种“数字指纹”,可以被用来作为半导体设备的唯一身份。PUF基于半导体设备在制造过程中自然发生的物理变化。在本实施例中使用了基于SRAM的PUF。当设备每次上电的时候,SRAM的每一位会被随机设置为“1”或“0”状态,即使是制造商也不能预测以及复现。SRAM的这种特性物理不可克隆,可以被用作一个独特的硅指纹。值得注意的是,由于基于SRAM的PUF的响应具有噪声,它需要进一步的处理来提高品质。
为了保障DMID的运行安全,模块也集成了TrustZone(信任域)方案。该方案将CPU、程序内存和RAM数据分隔成了安全态和非安全态。非安全状态下的CPU只能访问同样处于非安全状态下的程序和RAM数据。但是,安全状态下的CPU不仅可以访问同样处于安全状态下的程序和RAM数据,也能访问处于非安全状态下的RAM数据。为了能够更好的将SH-DMID集成到电动汽车中,该模块也保留了一些接口,例如串口和SPI接口。
图4描述了SH-DMID的软件架构。模块在上电之后,会首先进入安全启动模式,安全启动程序是一段固化在ROM中的代码,它会校验随后在Flash中启动的程序的完整性。当校验通过后,系统会先进入由Trust Zone技术隔离的软件安全区域,进行一些模块的初始化操作,如对PUF设置激活码。随后系统会跳转到非安全环境下运行,当需要安全环境中的某些功能时,通过设置的入口函数进行调用。
在安全环境中会运行以下功能模块,如DMID的创建,可校验呈现的创建以及验证等。在这些模块软件运行过程中,密钥在某些阶段会以明文的形式存在,所以对系统运行环境的安全性要求比较高,有必要将这些功能模块放置在安全环境中。非安全环境会涉及一些外设驱动程序,如蓝牙驱动,串口驱动,WiFi驱动。
为了保证该模块与外界通信时的信息不被窃取,移植了TLS/SSL协议来保证模块与外界进行数据交换时的隐私和数据的完整性。
根据一个或者多个实施例,由于物联网设备身份管理系统的安全都依赖于密钥是如何安全地存储的。如果密钥仅仅以明文被存放在Flash区域中,黑客可能会打开芯片随后暴力读取内存。通过PUF可以很好地解决这个问题。每个MCU都有它自己独特的数字指纹,该信息不会被存储在芯片上,所以即使设备不上电也不能被读取。
PUF的操作流程可以分为以下几个步骤,如图5所示。首先PUF需要进行一个注册过程,通过该注册过程,SRAM上电初始数据可以派生出一个数字指纹以及对应的激活码。激活码是一个1192字节长度的数据块,必须被存放在非易失性存储区域如Flash中。同时,用户需要通过手机对该激活码进行备份。当上述步骤完成之后,PUF便能够被使用了。第一步是执行PUF初始操作,即从非易失性存储区域中读取激活码,然后将其传入PUF。PUF会结合该激活码以及SRAM的初始数据恢复出注册时的数字指纹。该数字指纹长达256位,可以被用作一个根密钥或者加密密钥来加解密用户的密钥。第二步是设置用户密钥,该步骤需要传入以下几个参数到PUF:用户密钥、用户密钥的长度以及密钥索引。随后PUF使用数字指纹对该用户密钥进行加密,生成了键码(keycode),该值也需要存储在非易失性存储区域。当想从键码得到明文密钥的时候,只需要进行PUF_GetKey操作来对键码进行解密。该操作会判断密钥索引,如果密钥索引的值为0,则明文密钥会被直接传入内部的硬件总线。如果密钥索引值大于0,则可以将明文密钥从PUF中读出。
根据一个或者多个实施例,物联网设备的DMID的创建流程如图6所示,首先用户需要通过手机APP与SH-DMID进行连接,可以通过蓝牙的方式,随后它们之间可以基于ECDH密钥协商算法协商会话密钥,从而建立加密通道。由于用户想要对SH-DMID进行控制,所以SH-DMID需要对登录者的身份进行验证。SH-DMID中有一个所有权认证模块,其中记录了所有者的DID。因此用户需要证明他是该DID的持有者,操作过程如下:
SH-DMID本地生成一个随机数,然后发送给用户。用户则使用DID所对应的私钥对该随机数进行签名,并返回。SH-DMID本地会缓存一份DID文档,随后它会使用DID文档中记录的公钥对签名进行验证。如果验证失败,它会访问以太坊合约查询缓存的DID文档是否是最新值。如果不是,则会对本地的DID文档进行更新,重新进行校验。如果验证成功,SH-DMID则会生成一个会话令牌,之后用户在其请求后附上该令牌即可。
用户通过手机向SH-DMID发送创建DMID的请求,SH-DMID在校验令牌时效之后会跳转到安全区环境下执行该操作。SH-DMID也是采用的分层确定性钱包的密钥生成方案,但是会有些许不同。考虑到物联网设备的运算性能以及电源供给,SH-DMID模块将直接使用真随机数发生器TRNG生成的种子值SeedTRNG,而不会像用户DID创建过程对助记词进行2048轮SHA256哈希才获得种子值。随后SeedTRNG会被传入PUF进行加密输出SeedTRNGCode。该SeedTRNGCode可以被导出,用户的手机APP会自动对该值进行备份保存,同时用户可以进一步地将其从手机APP中导出并离线保存。以上生成SeedTRNGCode的过程只有在第一次创建DMID时才会执行,随后该SeedTRNGCode会被保存在TrustZone安全区的Flash之中,当需要再次创建DMID时,会读取Flash区域中的SeedTRNGCode并载入PUF进行解密得到原始的SeedTRNG。
该SeedTRNG会通过单向哈希函数HMAC-SHA512得到主私钥以及主链码。随后通过子密钥衍生函数衍生出下一级密钥和链码,这里采用和用户DID一样的衍生路径m/66’/0’/0’/0得到第一个DMID私钥PrivateKeyDMID1。该私钥也会输入PUF模块进行加密生成KeyDMID1Code并存储在TrustZone安全区Flash中。
由于该私钥是新创建的,该私钥所对应的以太坊钱包账户地址AddressDMID1并没有任何余额。因此SH-DMID会提醒用户对AddressDMID1进行充值,并给出一个最小的充值数目。该充值数目需要能够支持PrivateKeyDMID1对合约进行部署以及对合约内容的修改。
当用户完成转账后,会发送消息给SH-DMID。随后SH-DMID也会生成合约部署交易并进行广播,同时生成DMID文档并触发合约函数对属性进行修改,最终完成DMID的注册过程。
根据一个或者多个实施例,物联网设备DMID的恢复分为以下两种情况。
首先是设备没有损毁的情况。即软件出现故障,最糟糕的情况是设备恢复为出厂设置,数据全部清空。此时用户可以通过手机将之前备份的PUF激活码以及SeedTRNGCode重新导入从而恢复设备的DMID。
第二种情况是设备已经损毁,需要重新更换设备。由于PUF的特性,新设备即使导入之前备份的PUF激活码也无法恢复出旧设备的PUF数字指纹,从而也就无法对SeedTRNGCode进行解密。在这种情况下,首先用户需要对该设备进行上电激活。在激活的过程中,设备会生成新的PUF激活码。随后用户需要触发设备创建新的种子,进一步衍生出新的密钥PrivateKeynew以及对应的Addressnew。在设备的DMID合约的Emergency Contact属性中记录了用户的DID合约地址,因此用户可以通过DID合约来间接地操控设备的DMID合约,将Owner属性修改为Addressnew。随后该设备也就恢复了对其DMID合约的控制权,其下一步则是需要对DMID文档也进行更新。
本发明实施例基于以太坊智能合约构建了一个去中心化物联网身份管理系统。根据对用户和物联网设备各自所拥有的权限进行了分析,本发明分别设计了相应的DID(Decentralized Identifiers,DID)智能合约以及DMID(Decentralized MachineIdentifiers,DMID)智能合约模板。同时,还设计了用户DID的创建以及设备DMID的创建以及备份流程。
考虑到物联网设备长期运行在无人监管的环境中,本发明基于PUF、TRNG和TrustZone等硬件技术设计了一个安全硬件模块SH-DMID,该模块可以保障DMID的运行以及存储安全。同时给出了SH-DMID具体硬件以及其上基于FreeRTOS嵌入式实时操作系统的软件架构。用户可以通过该APP创建用户自己的DID,与SH-DMID模块进行通信并为其颁发证书。
本发明的有益效果包括:
1、基于物联网用户和设备的权限不同,为其分别设计了以太坊智能合约模板。通过部署合约的方式,实现身份的注册,设备的身份信息一旦上链,便无法被恶意篡改。用户和设备都拥有对自己的身份的充分的掌控权,不需要依赖任何第三方机构。
2、本发明采用了一个安全硬件模块用以保证物联网设备的私钥安全。
3、本发明为用户和物联网设备的身份设计了完善的备份恢复机制。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种物联网设备身份管理系统,其特征在于,对物联网设备身份管理采用基于区块链智能合约的DMID方案。
2.根据权利要求1所述的物联网设备身份管理系统,其特征在于,对于物联网设备用户的身份管理采用基于区块链智能合约的DID方案。
3.根据权利要求2所述的物联网设备身份管理系统,其特征在于,所述物联网设备的DMID智能合约包括:所有者、信任列表、持有证书、撤销标志位、DMID文档和紧急联系人。
4.根据权利要求3所述的物联网设备身份管理系统,其特征在于,所述物联网设备用户的DID智能合约包括:所有者、社交恢复列表、可校验证书撤销列表、信任列表、持有证书、撤销标志和DID文档。
5.根据权利要求4所述的物联网设备身份管理系统,其特征在于,所述管理系统包括安全硬件模块SH-DMID,该模块包括物理不可克隆功能PUF模块和真随机数生成器TRNG模块。
6.根据权利要求5所述的物联网设备身份管理系统,其特征在于,所述安全硬件模块SH-DMID还包括Trustzone模块安全程序模块,该模块包括CPU和RAM,并将CPU和RAM划分为安全区和非安全区。
7.根据权利要求6所述的物联网设备身份管理系统,其特征在于,所述安全区模块的启动过程包括,
校验启动的程序的完整性;
当校验通过后,安全区进行包括对PUF模块设置激活码的初始化操作;
创建DMID;
跳转到非安全区,通过入口函数调用安全区功能。
8.根据权利要求5所述的物联网设备身份管理系统,其特征在于,物理不可克隆功能PUF模块的操作包括:注册、开始、设置密钥和获取密钥,所述注册和设置密钥需要激活码以及对激活码的备份。
9.根据权利要求8所述的物联网设备身份管理系统,其特征在于,DMID的恢复包括,
当物联网设备硬件完好,软件出现故障,通过备份的PUF激活码以及SeedTRNGCode重新导入从而恢复物联网设备的DMID;
当物联网设备硬件损毁,首先对该设备进行上电激活,在激活的过程中,设备生成新的PUF激活码,
随后触发设备创建新的种子,进一步衍生出新的密钥PrivateKeynew以及对应的Addressnew;
通过DID合约来间接地操控设备的DMID合约,将Owner属性修改为Addressnew;
该设备恢复对其DMID合约的控制权,对DMID文档进行更新。
10.根据权利要求4所述的物联网设备身份管理系统,其特征在于,物联网设备用户的DID创建过程包括,
创建基于BIP39的助记词;
基于BIP39创建HD钱包;
从HD钱包获得密钥后生成DID文档。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011600673.2A CN112653553B (zh) | 2020-12-29 | 2020-12-29 | 物联网设备身份管理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011600673.2A CN112653553B (zh) | 2020-12-29 | 2020-12-29 | 物联网设备身份管理系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112653553A true CN112653553A (zh) | 2021-04-13 |
CN112653553B CN112653553B (zh) | 2022-07-12 |
Family
ID=75364076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011600673.2A Active CN112653553B (zh) | 2020-12-29 | 2020-12-29 | 物联网设备身份管理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112653553B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113553621A (zh) * | 2021-07-28 | 2021-10-26 | 徐丹梅 | 一种自我主权身份系统及方法 |
CN113569298A (zh) * | 2021-07-23 | 2021-10-29 | 徐丹梅 | 一种基于区块链的身份生成方法及身份系统 |
CN113708935A (zh) * | 2021-08-23 | 2021-11-26 | 北京航空航天大学 | 基于区块链和puf的物联网设备统一认证方法及系统 |
CN114615299B (zh) * | 2022-03-09 | 2023-07-21 | 华中师范大学 | 一种远程医疗监测方法、系统、介质、设备及终端 |
WO2024200166A1 (en) * | 2023-03-30 | 2024-10-03 | Sony Group Corporation | An apparatus and a method for managing decentralized identifiers, an endpoint storing encrypted personal information and a decentralized identifier document |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108234515A (zh) * | 2018-01-25 | 2018-06-29 | 中国科学院合肥物质科学研究院 | 一种基于智能合约的自认证数字身份管理系统及其方法 |
US20180287800A1 (en) * | 2017-02-06 | 2018-10-04 | Northern Trust Corporation | Systems and methods for digital identity management and permission controls within distributed network nodes |
CN109768988A (zh) * | 2019-02-26 | 2019-05-17 | 安捷光通科技成都有限公司 | 去中心化物联网安全认证系统、设备注册和身份认证方法 |
CN109922039A (zh) * | 2019-01-14 | 2019-06-21 | 湘潭大学 | 一种基于区块链技术的半中心化的身份管理方法 |
CN109936569A (zh) * | 2019-02-21 | 2019-06-25 | 领信智链(北京)科技有限公司 | 一种基于以太坊区块链的去中心化数字身份登录管理系统 |
US20200026834A1 (en) * | 2018-07-23 | 2020-01-23 | One Kosmos Inc. | Blockchain identity safe and authentication system |
CN111490873A (zh) * | 2020-03-25 | 2020-08-04 | 上海物融智能科技有限公司 | 基于区块链的证书信息处理方法及系统 |
CN112016923A (zh) * | 2020-08-28 | 2020-12-01 | 北京大学深圳研究生院 | 基于区块链的网内跨域身份管理方法、系统以及算力网络 |
-
2020
- 2020-12-29 CN CN202011600673.2A patent/CN112653553B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180287800A1 (en) * | 2017-02-06 | 2018-10-04 | Northern Trust Corporation | Systems and methods for digital identity management and permission controls within distributed network nodes |
CN108234515A (zh) * | 2018-01-25 | 2018-06-29 | 中国科学院合肥物质科学研究院 | 一种基于智能合约的自认证数字身份管理系统及其方法 |
US20200026834A1 (en) * | 2018-07-23 | 2020-01-23 | One Kosmos Inc. | Blockchain identity safe and authentication system |
CN109922039A (zh) * | 2019-01-14 | 2019-06-21 | 湘潭大学 | 一种基于区块链技术的半中心化的身份管理方法 |
CN109936569A (zh) * | 2019-02-21 | 2019-06-25 | 领信智链(北京)科技有限公司 | 一种基于以太坊区块链的去中心化数字身份登录管理系统 |
CN109768988A (zh) * | 2019-02-26 | 2019-05-17 | 安捷光通科技成都有限公司 | 去中心化物联网安全认证系统、设备注册和身份认证方法 |
CN111490873A (zh) * | 2020-03-25 | 2020-08-04 | 上海物融智能科技有限公司 | 基于区块链的证书信息处理方法及系统 |
CN112016923A (zh) * | 2020-08-28 | 2020-12-01 | 北京大学深圳研究生院 | 基于区块链的网内跨域身份管理方法、系统以及算力网络 |
Non-Patent Citations (3)
Title |
---|
HONG NING: "《A Security Framework for the internet of Things based on Public Key Infrastructure》", 《ADVANCED MATERIALS RESEARCH》 * |
YANG SU ET AL.: "《Secure Decentralized Machine Identifiers for Internet of Things》", 《ICBCT"20: PROCEEDINGS OF THE 2020 THE 2ND INTERNATIONAL CONFERENCE ON BLOCKCHAIN TECHNOLOGY》 * |
董贵山等: "《基于区块链的身份管理认证研究》", 《计算机科学》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113569298A (zh) * | 2021-07-23 | 2021-10-29 | 徐丹梅 | 一种基于区块链的身份生成方法及身份系统 |
CN113553621A (zh) * | 2021-07-28 | 2021-10-26 | 徐丹梅 | 一种自我主权身份系统及方法 |
CN113708935A (zh) * | 2021-08-23 | 2021-11-26 | 北京航空航天大学 | 基于区块链和puf的物联网设备统一认证方法及系统 |
CN114615299B (zh) * | 2022-03-09 | 2023-07-21 | 华中师范大学 | 一种远程医疗监测方法、系统、介质、设备及终端 |
WO2024200166A1 (en) * | 2023-03-30 | 2024-10-03 | Sony Group Corporation | An apparatus and a method for managing decentralized identifiers, an endpoint storing encrypted personal information and a decentralized identifier document |
Also Published As
Publication number | Publication date |
---|---|
CN112653553B (zh) | 2022-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108768988B (zh) | 区块链访问控制方法、设备及计算机可读存储介质 | |
CN112653553B (zh) | 物联网设备身份管理系统 | |
CN110417750B (zh) | 基于区块链技术的文件读取和存储的方法、终端设备和存储介质 | |
US8468361B2 (en) | System and method for securely provisioning and generating one-time-passwords in a remote device | |
US7571489B2 (en) | One time passcode system | |
JP6275653B2 (ja) | データ保護方法及びシステム | |
US20190036932A1 (en) | Blockchain authentication via hard/soft token verification | |
US10348706B2 (en) | Assuring external accessibility for devices on a network | |
US8724819B2 (en) | Credential provisioning | |
US8788836B1 (en) | Method and apparatus for providing identity claim validation | |
US20140112470A1 (en) | Method and system for key generation, backup, and migration based on trusted computing | |
TW202101165A (zh) | 解鎖方法、實現解鎖的設備及電腦可讀媒體 | |
KR102676616B1 (ko) | 생체인식 지불 디바이스를 인증하기 위한 방법 및 장치, 컴퓨터 디바이스, 및 저장 매체 | |
CN107920052B (zh) | 一种加密方法及智能装置 | |
CN110445840B (zh) | 一种基于区块链技术的文件存储和读取的方法 | |
US7076062B1 (en) | Methods and arrangements for using a signature generating device for encryption-based authentication | |
EP3292654B1 (en) | A security approach for storing credentials for offline use and copy-protected vault content in devices | |
CN115865320A (zh) | 一种基于区块链的安全服务管理方法及系统 | |
CN114500069A (zh) | 一种电子合同的存储及共享的方法与系统 | |
US20190044721A1 (en) | Device authorization using symmetric key systems and methods | |
Feiri et al. | Efficient and secure storage of private keys for pseudonymous vehicular communication | |
CN109302442B (zh) | 一种数据存储证明方法及相关设备 | |
WO2009077899A1 (en) | Method and apparatus for authenticating service application processes in high availability clusters | |
US20240121078A1 (en) | Method for controlling validity of an attribute | |
AU2017412654A1 (en) | Assuring external accessibility for devices on a network |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |