1.一种基于区块链的物联网设备身份认证方法,其特征在于,包括:选用多个区块链节点搭建区块链网络;
将物联网设备的标识和公钥对(ID,PK)存储在区块链中以完成物联网设备注册;
区块链节点根据存储的公钥PK对接入的物联网设备提供的标识ID进行认证。
2.根据权利要求1所述的一种基于区块链的物联网设备身份认证方法,其特征在于,所述将物联网设备的标识和公钥对(ID,PK)存储在区块链中以完成物联网设备注册的步骤包括:-SK
物联网设备利用私钥SK生成公钥PK=g mod p,将设备标识和公钥对(ID,PK)发送给对应区块链节点进行注册请求;
对应区块链节点根据物联网设备的标识ID查询区块链中是否已存在与该标识ID相关联的注册交易区块或者撤销交易区块,如果不存在,则通过该注册请求;
注册请求通过后,对应区块链节点生成注册区块链交易
对应区块链节点向所述物联网设备返回注册成功消息。
3.根据权利要求1所述的一种基于区块链的物联网设备身份认证方法,其特征在于,所述区块链节点根据存储的公钥PK对接入的物联网设备提供的标识ID进行认证的步骤包括:物联网设备向区块链发起认证请求,对应区块链节点向所述物联网设备返回一个随机数e;
物联网设备选择一个随机数r,计算x′=Hash(gr mod p)和y=r+e·SK mod q,将(x′,y)发送到对应区块链节点;
对应区块链节点根据物联网设备的标识ID查询区块链,得到与该标识ID对应公钥PK,并利用公钥PK和y,计算y′=Hash(PKegy mod p);如果y′等于x′,说明公钥PK与物联网设备的标识ID相匹配,物联网设备的认证请求通过;
对应区块链节点生成认证区块链交易
对应区块链节点向所述物联网设备返回认证成功消息。
4.根据权利要求1所述的一种基于区块链的物联网设备身份认证方法,其特征在于,还包括:撤销已注册的物联网设备的标识和公钥对(ID,PK),具体步骤包括:物联网设备向区块链发起撤销请求,对应区块链节点对物联网设备进行认证,如果认证成功,则通过该撤销请求,反之,则拒绝该撤销请求;
撤销请求通过后,对应区块链节点生成撤销区块链交易
对应区块链节点向所述物联网设备返回撤销成功消息。
5.根据权利要求1所述的一种基于区块链的物联网设备身份认证方法,其特征在于,还包括:更新已注册的物联网设备的标识和公钥对(ID,PK)中的公钥PK,具体步骤包括:物联网设备向区块链发起更新请求,对应区块链节点对物联网设备进行认证,如果认证成功,则通过该更新请求,反之,则拒绝该更新请求;
更新请求通过后,对应区块链节点先生成一个关于物联网设备原标识和公钥对(ID,PK)的撤销区块链交易
对应区块链节点向物联网设备返回更新成功消息。
6.根据权利要求1所述的一种基于区块链的物联网设备身份认证方法,其特征在于,所述区块链节点为主机或服务器。
7.根据权利要求1所述的一种基于区块链的物联网设备身份认证方法,其特征在于,所述区块链为联盟链。