基于区块链的物联网设备身份认证方法以及系统与流程

文档序号:20918966发布日期:2020-05-29 13:53阅读:426来源:国知局
基于区块链的物联网设备身份认证方法以及系统与流程

本发明涉及物联网技术领域,具体来说,涉及一种基于区块链的物联网设备身份认证方法以及系统。



背景技术:

在物联网中,攻击者可以通过非法窃取或篡改设备的身份,假冒合法用户身份获得设备的操作权限,并进一步危害系统和数据的安全以及合法用户的利益。为了确保物联网设备和系统能够安全运行,需要采用可信的身份确认过程,实现对物联网设备的可信认证以及对于操作者身份的可信确认,从而确定该用户对物联网资源是否具有相应的访问和使用权限,进而使物联网系统的访问控制策略能够可靠、有效的执行。

目前,物联网解决方案中对设备的各种操作通常都是基于设备厂商提供的账户体系服务(如通过手机app登陆后在云端身份认证后获得操作权限),由于用户名/口令这种身份认证手段自身局限性,加上设备厂商的多样性以及各设备厂商的安全能力参差不齐,这些场景中的设备身份认证过程存在着一定的安全隐患,如:

1、设备存在有漏洞,无法获得及时的更新,容易被攻击者注入恶意代码,获得设备的操控权限;

2、用户习惯采用弱口令或者厂商默认口令,容易被攻击者破解;

3、一些设备处在无人值守的环境中,容易被攻击者捕获,获取或篡改设备信息;



技术实现要素:

针对相关技术中的上述问题,本发明提出一种基于区块链的物联网设备身份认证方法以及系统,利用puf技术,在设备启动时提取设备芯片的唯一特征,生成设备的唯一标识符,不在设备上保存用户的敏感信息,并由设备所有者将设备的身份信息保存在区块链上,并通过区块链的交易实现设备所有权的流转、访问控制和固件更新。为物联网系统提供可设备身份认证机制,能够确保设备的真实性以及完整性。

本发明的技术方案是这样实现的:

根据本发明的一个方面,提供了一种基于区块链的物联网设备身份认证方法,包括:

s1,在物联网设备的设备芯片中植入物理不可克隆功能(puf-physicallyunclonablefunction)电路(以下统一简称为puf电路);

s2,通过puf电路提取物联网设备的指纹信息来生成物联网设备的设备身份,并将设备身份写入区块链中;

s3,在设备厂商通过区块链将物联网设备的所有权转移给设备所有者之后,设备所有者将物联网设备的包括控制权限的配置信息写入区块链中,以使其他用户通过区块链查询设备身份并申请物联网设备的访问权限。

根据本发明的实施例,s2包括:通过puf电路提取物联网设备的指纹信息;根据指纹信息作为私钥材料生成对应的公钥;并用公钥表示设备的身份,私钥材料只是在puf电路激活时生成,不在任何地方保存。

根据本发明的实施例,在s3之后还包括:用户在区块链上查找相应的物联网设备;用户发起设备访问申请;设备所有者在审查用户身份之后赋予用户相应的权限,并写入区块链中;用户在获取物联网设备的访问权限之后,和物联网设备进行直接通信。

根据本发明的实施例,在s3之后还包括:当需要对物联网设备进行升级时,设备厂商将更新程序写入到智能合约指定的位置;在设备厂商触发智能合约之后,物联网设备根据智能合约从指定位置下载更新程序。

根据本发明的另一方面,提供了一种基于区块链的物联网设备身份认证系统,包括:

生产模块,用于在物联网设备的设备芯片中植入puf电路;

身份生成模块,用于通过puf电路提取物联网设备的指纹信息来生成物联网设备的设备身份,并将设备身份写入区块链中;

权限模块,用于通过区块链将物联网设备的所有权转移给设备所有者,还用于将物联网设备的包括控制权限的配置信息写入区块链中,以使其他用户通过区块链查询设备身份并申请物联网设备的访问权限。

根据本发明的实施例,身份生成模块包括:指纹提取单元,用于通过puf电路提取物联网设备的指纹信息;密钥生成单元,用于根据所述指纹信息作为私钥材料生成对应的公钥;并用所述公钥表示所述设备的身份,私钥材料只是在所述puf电路激活时生成,不在任何地方保存。

根据本发明的实施例,基于区块链的物联网设备身份认证系统还包括使用模块,用于:在区块链上查找相应的物联网设备;发起设备访问申请;在审查用户身份之后赋予用户相应的权限,并写入区块链中;其中,用户在获取物联网设备的访问权限之后,和物联网设备进行直接通信。

根据本发明的实施例,基于区块链的物联网设备身份认证系统还包括升级模块,用于:当需要对物联网设备进行升级时,将更新程序写入到智能合约指定的位置;在触发智能合约之后,物联网设备根据智能合约从指定位置下载更新程序。

本发明利用puf提取设备的芯片指纹信息生成设备身份,使得设备的身份信息具有很强的随机性和唯一性。攻击者无法预测和伪造一个具有相同指纹信息。同时,设备的身份信息只是在设备启动时由相应的电路生成,设备自身不保存设备身份的敏感信息,使得攻击者无法通过捕获设备获取设备身份的敏感信息进而伪造用户身份;

设备身份信息及其控制权的转移,以及访问控制权限都记录在分布式、防篡改的区块链上,公开透明,攻击者在无法颠覆区块链的前提下,窃取或伪造用户的身份,获取合法用户的权限,进行破坏活动。将设备的身份信息、配置信息和访问控制权限保存在区块链上,公开透明,无法篡改,区块链的分布式结构使得其不存在单点失败的问题;

设备和用户、设备和设备之间的通信,都基于公钥密码应用设备自身的私钥进行签名,保证了消息的真实性。设备的私钥从不保存和传输,攻击者无法获取设备私钥的信息。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例的基于区块链的物联网设备身份认证方法的流程图;

图2是根据本发明实施例的生成阶段的流程示意图;

图3是根据本发明实施例的入网激活阶段的流程示意图;

图4是根据本发明实施例的使用阶段的流程示意图;

图5是根据本发明实施例的升级阶段的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,根据本发明的实施例,提供了一种基于区块链的物联网设备身份认证方法,包括以下步骤:

s1,在物联网设备的设备芯片中植入puf电路。物联网设备在下文中可简称为设备。

s2,通过puf电路提取设备的指纹信息来生成设备的设备身份,并将设备身份写入区块链中。

s3,在设备厂商通过区块链将设备的所有权转移给设备所有者之后,设备所有者将设备的包括控制权限的配置信息写入区块链中,以使其他用户通过区块链查询设备身份并申请设备的访问权限。

本发明的上述技术方案,利用puf提取设备的芯片指纹信息生成设备身份,使得设备的身份信息具有很强的随机性和唯一性。攻击者无法预测和伪造一个具有相同指纹信息。同时,设备的身份信息只是在设备启动时由相应的电路生成,设备自身不保存设备身份的敏感信息,使得攻击者无法通过捕获设备获取设备身份的敏感信息进而伪造用户身份。

具体来说,本发明对物联网中的设备实现可信身份认证和管理,主要包括在物联网设备的生产、入网激活、使用以及升级等各环节中,都能够使用有效的技术手段确保设备的真实性以及完整性。以下对本发明的方法的其他方面进行详细说明。

一、生产阶段

在物联网设备生产阶段,每个设备芯片在生产过程中,在设备芯片上植入puf电路,作为一种新的硬件安全原语,物理不可克隆函数是一种依赖芯片特征的硬件函数实现电路,具有唯一性和随机性,通过提取芯片制造过程中必然引入的工艺参数偏差,产生表示设备身份的指纹信息,该信息在设备启动时由puf电路产生,不需要保存在在设备上。设备以此指纹信息生成公私钥对,参与区块链交易。设备厂商将设备身份和更新信息注册到区块链上。如图2所示,生产阶段的过程包括以下步骤:

21.通过puf提取设备指纹;

22.利用公钥生成函数,根据指纹作为私钥材料生成表示设备身份的公钥,私钥材料只是在puf电路激活时生成,不在任何地方保存;从而,利用puf提取了芯片指纹,并基于该指纹信息生成了设备的公私钥对;

23.设备生厂商生成设备相关信息及更新合约;

24.设备生产商将设备身份及相关信息写入区块链中。

二、入网激活阶段

在激活使用物联网设备时,设备厂商通过区块链控制权转移交易将设备的所有权转移给设备所有者。设备所有者将设备的访问控制等配置信息写入到区块链中,这样物联网中的其他用户可以找到该设备,并可以向设备所有者用户申请该设备的访问权限。如图3所示,该过程包括以下步骤:

31.设备厂商通过控制权转移交易将设备的控制权转移给设备所有者;

32.设备所有者将设备的访问控制等配置信息写入到区块链中。

三、使用阶段

在设备入网激活之后,其他用户都可以公开查到该设备的身份信息及其所提供的服务,以及该设备的所有者。并可以通过向设备所有者发起访问申请交易获取相应的访问权限,一旦获得了设备的访问权限,就可以和设备进行直接的通信,获取设备提供的数据,或者对设备实施控制。如图4所示,该过程包括以下步骤:

41.用户在区块链上查找能够提供相应服务的设备;

42.用户发起设备访问申请交易;

43.设备所有者审查用户身份,赋予相应的权限,并写入区块链中;

44.用户访问设备、设备验证用户身份和权限;

45.用户和设备间进行直接通信。

四、升级阶段

通过智能合约实现设备的自动更新。设备升级交易由设备厂商发起,当需要升级时,设备厂商将更新程序写入到合约指定的位置,并触发设备升级的智能合约,设备根据合约从相应的位置下载新的升级程序,并根据合约对升级程序的真实性和完整性进行校验,通过后运行程序,自动更新。如图5所示,该过程包括以下步骤:

51.设备厂商将更新程序写入到智能合约指定的位置;

52.设备厂商触发智能合约;

53.智能合约通知设备更新程序;

54.设备根据合约从指定位置下载程序,并进行真实性、完整性验证后,更新程序。

综上所述,本发明利用puf提取设备的芯片指纹信息生成设备身份,使得设备的身份信息具有很强的随机性和唯一性。攻击者无法预测和伪造一个具有相同指纹信息。同时,设备的身份信息只是在设备启动时由相应的电路生成,设备自身不保存设备身份的敏感信息,使得攻击者无法通过捕获设备获取设备身份的敏感信息进而伪造用户身份;

设备身份信息及其控制权的转移,以及访问控制权限都记录在分布式、防篡改的区块链上,公开透明,攻击者在无法颠覆区块链的前提下,窃取或伪造用户的身份,获取合法用户的权限,进行破坏活动。将设备的身份信息、配置信息和访问控制权限保存在区块链上,公开透明,无法篡改,区块链的分布式结构使得其不存在单点失败的问题;

设备和用户、设备和设备之间的通信,都基于公钥密码应用设备自身的私钥进行签名,保证了消息的真实性。设备的私钥从不保存和传输,攻击者无法获取设备私钥的信息。

根据本发明的实施例,还提供了一种基于区块链的物联网设备身份认证系统,包括:

生产模块,用于在物联网设备的设备芯片中植入puf电路;

身份生成模块,用于通过puf电路提取物联网设备的指纹信息来生成物联网设备的设备身份,并将设备身份写入区块链中;

权限模块,用于通过区块链将物联网设备的所有权转移给设备所有者,还用于将物联网设备的包括控制权限的配置信息写入区块链中,以使其他用户通过区块链查询设备身份并申请物联网设备的访问权限。

其中,身份生成模块可以包括:指纹提取单元,用于通过puf电路提取物联网设备的指纹信息;用于根据指纹信息作为私钥材料生成对应的公钥;并用公钥表示设备的身份,私钥材料只是在puf电路激活时生成,不在任何地方保存;身份写入单元,用于将设备身份写入区块链中。

在一个实施例中,基于区块链的物联网设备身份认证系统还可以包括使用模块,用于:在区块链上查找相应的物联网设备;发起设备访问申请;在审查用户身份之后赋予用户相应的权限,并写入区块链中;其中,用户在获取物联网设备的访问权限之后,和物联网设备进行直接通信。

在一个实施例中,基于区块链的物联网设备身份认证系统还包括升级模块,用于:当需要对物联网设备进行升级时,将更新程序写入到智能合约指定的位置;在触发智能合约之后,物联网设备根据智能合约从指定位置下载更新程序。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1