利索能及
我要发布
收藏
专利号: 2024117837303
申请人: 齐鲁工业大学(山东省科学院)
专利类型:发明专利
专利状态:已下证
更新日期:2025-12-22
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于分布式区块链的物联网系统认证方法,其特征在于,应用于包括边缘服务器、物联网设备和域管理员节点的物联网系统,边缘服务器和受其管理的物联网设备注册至私有区块链形成私域,每个私域的域管理员节点注册至联盟区块链,私有区块链和联盟区块链内均根据其内的区块构建 有一个默克尔树,所述方法包括如下步骤:系统初始化:域管理员节点基于其身份标识、公钥和系统参数构建身份验证区块注册至私有区块链,并以其身份标识、公钥和身份验证区块的区块号作为身份信息注册至联盟区块链,对于作为边缘节点的边缘服务器和物联网设备,域管理员节点基于其身份信息以及边缘节点的身份信息构建所述边缘计算节点的身份验证区块、并将身份验证区块上传所属私有区块链以及联盟区块链中,其中,边缘节点的身份信息包括其身份标识、公钥和身份签名,边缘节点的公钥由域管理员节点分配,边缘计算节点的身份签名为基于域管理员节点身份标识和边缘节点的身份标识的哈希计算;

域内认证:物联网设备基于其身份标识以及域管理员节点的身份标识构建域内认证信息,通过同一个私域内其他物联网设备所属边缘服务器的公钥对域内认证信息加密后、发送至边缘服务器进行解密和身份验证;

域间认证:物联网设备基于其身份标识、身份签名以及域管理员节点的身份标识构建域间认证信息,通过另一私域内物联网设备所属边缘服务器的公钥对域间认证信息加密后发送至边缘服务器,所述另一私域内边缘服务器与域管理员节点配合、基于默克尔根证明对域间认证信息进行身份认证。

2.根据权利要求1所述的基于分布式区块链的物联网系统认证方法,其特征在于,系统初始化包括如下步骤:域管理员节点初始化:对于每个私域,域管理员节点初始化系统参数并构建自身的公钥和私钥,基于其身份标识、公钥和系统参数构建一个区块作为身份验证区块发送至边缘服务器和物联网设备进行验证,并基于其身份标识、公钥以及身份验证区块的区块号创建一个新的区块作为域管理员节点的区块上传联盟区块链;

边缘服务器注册:对于每个边缘服务器,基于其身份标识和验证公钥、域管理员节点对边缘服务器进行验证,并为边缘服务器分配公钥和私钥,边缘服务器将其身份标识和公钥广播至其它边缘服务器,域管理员节点基于其身份标识、公钥和身份验证区块的区块号以及边缘服务器的身份标识、公钥和身份签名构建一个区块作为边缘服务器的区块,将边缘服务器的区块上传所属私有区块链以及联盟区块链中,其中,边缘服务器的身份签名为基于域管理员节点身份标识和边缘服务器身份标识的哈希计算;

物联网设备注册:对于每个物联网设备,基于其身份标识和验证公钥、域管理员节点对物联网设备进行验证,并为物联网设备分配假名身份标识、公钥和私钥,物联网设备将其假名身份标识和公钥广播至其他物联网设备,域管理员节点基于其身份标识、公钥和身份验证区块的区块号以及物联网设备的假名身份标识、公钥和身份签名创建一个区块作为物联网设备的区块,将物联网设备的区块上传所属私有区块链以及联盟区块链中,且域管理员节点基于物联网设备所属边缘服务器的公钥、将物联网设备的假名身份标识加密发送至对应边缘服务器,其中,物联网设备的身份签名为基于域管理员节点身份标识和物联网设备假名身份标识的哈希计算;

对应的,域内认证时,对于同一私域内作为发送端和接收端的两个物联网设备,发送端物联网设备基于其假名身份标识、验证公钥和身份签名以及域管理员节点的身份标识构建域内认证信息,通过接收端边缘服务器的公钥对域内认证信息加密形成域内认证密文、并发送至接收端边缘服务器,接收端边缘服务器对域内认证密文解密,并基于域管理员节点身份标识以及物联网设备的假名身份标识和身份签名进行验证,验证通过后,域内认证成功,其中接收端边缘服务器管理作为接收端物联网设备;

对应的,域间认证时,对于位于不同私域、作为发送端和接收端的两个物联网设备,发送端物联网设备基于其假名身份标识、验证公钥和身份签名以及其所所属私域域管理员节点的身份标识构建域间认证信息,通过接收端边缘服务器的公钥对域间认证信息加密形成域间认证密文、并发送至接收端边缘服务器,接收端边缘服务器将域间认证密文转发至其所属私域的域管理员节点,接收端域管理员节点对域间认证密文进行解密,基于发送端域管理员节点的身份标识以及发送端物联网设备的假名身份标识进行验证,并基于默克尔根证明对发送端物联网设备的身份签名进行验证,验证通过后,域间认证成功。

3.根据权利要求2所述的基于分布式区块链的物联网系统认证方法,其特征在于,边缘服务器注册时,执行如下:边缘服务器基于其身份标识和验证公钥、域管理员节点的公钥以及时间戳进行哈希计算形成身份验证密文;

域管理员节点基于边缘服务器发送的身份验证密文进行身份验证,验证通过后,域管理员节点基于其生成的验证数据、时间戳以及边缘服务器的身份标识、验证公钥和身份签名进行哈希计算形成数据验证密文;

边缘服务器基于域管理员节点发送的数据验证密文进行数据未篡改验证;

验证通过后,边缘服务器将其身份标识和验证公钥广播至其他边缘服务器,并基于其验证公钥和接收的验证数据构建其公钥和私钥;

域管理员节点基于身份签名对边缘服务器进行验证后,基于其身份标识、公钥和身份验证区块的区块号以及边缘服务器的身份标识、公钥和身份签名构建一个区块作为边缘服务器的区块,将边缘服务器的区块上传所属私有区块链以及联盟区块链中;

联盟区块链基于边缘服务器的身份签名对边缘服务器的区块进行验证和信息共识。

4.根据权利要求2所述的基于分布式区块链的物联网系统认证方法,其特征在于,物联网设备注册时,执行如下:物联网设备基于其身份标识和验证公钥、域管理员节点的公钥、以及时间戳进行哈希计算形成身份验证密文;

域管理员节点基于物联网设备发送的身份验证密文进行物联网设备的身份验证,验证通过后,域管理员节点基于物联网设备的身份标识和验证公钥计算物联网设备的假名身份标识,基于其生成的验证数据、时间戳以及物联网设备的假名身份标识、验证公钥和身份签名进行哈希计算形成设备端数据验证密文,基于时间戳以及物联网设备的假名身份标识和验证公钥进行哈希计算形成服务器端数据验证密文;

物联网设备基于域管理员节点发送的设备端数据验证密文进行数据未篡改验证,验证通过后,物联网设备将其假名身份标识和验证公钥广播至其他物联网设备,基于其验证公钥和接收的验证数据构建其公钥和私钥;

域管理员节点基于身份签名对物联网设备进行验证后,基于其身份标识和公钥、时间戳以及物联网设备的假名身份标识、公钥和身份签名创建一个区块作为物联网设备的区块,将物联网设备的区块上传所属私有区块链以及联盟区块链,联盟区块链基于身份签名对物联网设备的区块进行验证和信息共识;

管理所述物联网设备的边缘服务器接收到域管理员节点发送的服务器端数据验证密文后,对服务器端数据验证密文进行解密,得到物联网设备的假名身份标识。

5.根据权利要求2‑4任一项所述的基于分布式区块链的物联网系统认证方法,其特征在于,域管理员节点初始化包括如下步骤:基于椭圆曲线加密,域管理员节点生成一个 位的素数 、一个有限域 上的系统椭圆曲线 、一个循环加性点群 和一个生成器 ;

域管理员节点定义如下单项散列函数:

并生成随机数 作为私钥,并基于生成器构建公钥 , ;

域管理员节点生成一个事务 ,事务 包括管理员节点的坐标信息 、身份标识、 、 、、、 以及单项散列函数 ,其中, 、 、、以及单项散列函数 作为系统参数;

域管理员节点将事务 打包为一个标记为 的新区块作为身份验证区块,将身份验证区块发送至私域内边缘服务器和物联网设备,边缘服务器和物联网设备接收到身份验证区块后检测域管理员节点的身份标识 是否存在于私有区块链中,如果 已存在于私有区块链中,验证失败,否则,将身份验证区块作为私有区块链的初始创世区块;

验证成功后,域管理员节点将其身份标识 、公钥 以及身份验证区块的区块号打包为一个新区块作为域管理员节点的区块,将域管理员节点的区块上传联盟区块链中。

6.根据权利要求5所述的基于分布式区块链的物联网系统认证方法,其特征在于,边缘服务器注册包括如下步骤:边缘服务器随机选择 ,计算其验证公钥 ;

边缘服务器基于其身份标识 和验证公钥 、域管理员节点 的公钥 以及时间戳 进行哈希计算形成身份验证密文 ,并将身份验证密文 发送至域管理员节点 ,其中, 计算公式如下:,

域管理员节点 接受到身份验证密文 后,存储 ,并对 进行解密,,得到边缘服务器的身份标识 ,并判断

是否在私有区块链中已经注册,如果已完成注册,则验证失败,如果未注册,验证 的有效性,如果 有效,则身份认证通过;

身份验证通过后,域管理员节点 保存 ,随机生成一个整数 ,并生成验证数据 和 ,计算公式如下:,

域管理员节点 基于其生成的验证数据 和 、时间戳 以及边缘服务器的身份标识 、验证公钥 和身份签名进行哈希计算形成数据验证密文 ,并将数据验证密文 发送至边缘服务器, 计算公式如下:,

其中, 表示边缘服务器的身份签名;

边缘服务器接收数据验证密文 后,提取 、 、 、 、 以及进行验证,验证公式如下:

其中, ;

如果上述验证公式成立,则数据未篡改验证,边缘服务器将其身份标识和验证公钥广播至其他边缘服务器,其他边缘服务器基于拜占庭算法实现节点之间的信息共识;

边缘服务器基于其验证公钥和接收的验证数据 和 构建其公钥和私钥,公钥和私钥 的计算公式如下:,

边缘服务器提取并存储其身份签名 ,并向域管理员节点

发送注册成功的身份签名信息;

域管理员节点 对接受的身份签名进行验证,验证公式如下:,

身份签名信息验证通过后,域管理员节点 基于其身份标识 、公钥 和身份验证区块的区块号 以及边缘服务器的身份标识 、私钥 和身份签名作为构建一个区块作为边缘服务器的区块,将边缘服务器的区块上传所属私有区块链和联盟区块链中,在联盟区块链中通过P2P网络将边缘服务器的区块广播至其他域管理节点,边缘服务器的区块内容表示为:。

7.根据权利要求6所述的基于分布式区块链的物联网系统认证方法,其特征在于,物联网设备注册包括如下步骤:物联网设备随机选择 ,并计算其验证公钥 ;

基于其身份标识 和验证公钥 、域管理员节点 的公钥 以及时间戳 进行哈希计算形成身份验证密文 ,并将身份验证密文 发送至域管理员节点 ,身份验证密文 的计算公式如下:;

域管理员节点 接受到身份验证密文 后,存储 ,并对 进行解密,得到物联网设备的身份标识 ,并判断 是否在私有区块链中已经注册,如果已完成注册,则验证失败,如果未注册,验证 的有效性,如果 有效,则身份认证通过;

验证通过后,域管理员节点 基于物联网设备的身份标识 和验证公钥 计算物联网设备的假名身份标识 , 计算公式如下:;

域管理员节点 存储 ,随机生成一个整数 ,并生成验证数据 和 ,计算公式如下:

域管理员节点 基于其生成的验证数据 和 、时间戳 以及物联网设备的假名身份标识 、验证公钥 和身份签名 进行哈希计算形成设备端数据验证密文 ,并将设备端数据验证密文 发送至物联网设备, 计算公式如下:;

域管理员节点 基于物联网设备的假名身份标识 、边缘服务器的验证公钥 、以及时间戳 进行哈希计算形成服务器端数据验证密文 ,并将服务器端数据验证密文发送至管理物联网设备的边缘服务器, 计算公式如下:;

物联网设备接收到设备端数据验证密文 后,进行密文解密,并验证如下等式是否成立:,

其中, ;

如果上述验证公式成立,则数据未篡改验证,物联网设备将其假名身份标识和验证公钥广播至其他物联网设备,其他物联网设备基于拜占庭算法实现节点之间的信息共识;

物联网设备基于其验证公钥和接收的验证数据 和 构建其公钥和私钥,公钥和私钥 的计算公式如下:,

物联网设备提取并存储身份签名 ,并向域管理员节点 发送注册成功的身份签名信息;

域管理员节点 对接受的身份签名进行验证,验证公式如下:,

身份签名验证通过后,域管理员节点 将基于其身份标识 、公钥 和身份验证区块的区块号以及物联网设备的假名身份标识 、私钥 和身份签名作为构建一个区块作为物联网设备的私有区块,将物联网设备的区块上传所属私有区块链以及联盟区块链,在联盟区块链中通过P2P网络将物联网设备的 区 块广 播至 其他 域 管理 节 点,物联 网 设备 的区 块 内容 表示 为 :;

边缘服务器接收到服务器端数据验证密文 后,基于其选择的随机数 进行解密,得到物联网设备的假名身份标识 。

8.根据权利要求7所述的基于分布式区块链的物联网系统认证方法,其特征在于,对于私钥区域A内两个不同的边缘分服务器A1和A2,边缘服务器A1的身份标识为 ,边缘服务器A2的身份标识为 ;对于私有区域的域管理员节点,其身份标识标识为 ,其公钥表示为 ,其私钥表示为 ;对于受边缘服务器A管理的物联网设备ST1和ST2,物联网设备STI的身份标识为 ,物联网设备ST2的身份标识为 ,物联网设备ST1和ST2之间的认证信息通过边缘服务器分布式处理,物联网设备ST1和ST2之间域内认证包括如下步骤:物联网设备ST1随机选择 ,并计算其验证公钥 ;

物联网设备ST1基于其假名身份标识 、验证公钥 和身份签名)以及域管理员节点的身份标识 构建域内认证信

息,通过边缘服务器A2的公钥 对域内认证信息加密形成域内认证密文 ,并将域内认证密文 发送至边缘服务器A2,内认证密文 计算公式如下:,

其中, ;

边缘服务器A2对域内认证密文 进行解密,并检查提取到的 是否符合其所属私有区域中域管理节点的身份标识,如果相同,则认证成功,执行下一步;

边缘服务器A2向边缘服务器A1发出物联网设备验证请求,边缘服务器A1基于物联网设备认证请求中指定 、判断身份标识为 的物联网设备是否受其管理,如果是,认证成功,执行下一步;

边缘服务器A2基于其身份标识和物联网设备A1的假名身份标识计算身份签名信息、并对身份签名信息进行哈希计算,判断生成的哈希值与从域内认证密文 中提取的 是否相同,如果相同,则判定数据未篡改,域内认证成功。

9.根据权利要求7所述的基于分布式区块链的物联网系统认证方法,其特征在于,对于私有区域C,其内边缘边缘服务器C3的身份标识为 ,域管理员节点的公钥为 ,域管理员节点的身份标识为 ,物联网设备为ST3,对于私域区域D,其内边缘服务器D4的身份标识为 ,域管理员节点的公钥为 ,私钥区域C3和私有区域C4之间的域间认证包括如下步骤:物联网设备ST3随机选择 ,并计算其验证公钥 ;

物联网设备ST3将其假名身份标识 、验证公钥 和身份签名 以及域管理员节点的身份标识 作为域间认证信息,通过边缘服务器D4的公钥对域间认证信息进行加密、生成域间认证密文 ,并将域间认证密文 发送至边缘服务器D4,其中,域间认证信息表示为:, ;

边缘服务器D4接收到域间认证密文 后,将域间认证密文 后转发至其所属私有区域的域管理员节点;

私有区域D中域管理员节点对域间认证密文 进行解密,得到 、 、以及 ,并通过联盟区块链检索 和 是否已经合法注册,如果是,执行下一步;

私有区域D中域管理员节点获取物联网设备ST3以及私有区域C中域管理员节点所属私有区块链的默克尔树路径;

私有区域D中域管理员节点检查默克尔树上每个节点的哈希值,得到默克尔树根节点的哈希值;

私有区域D中域管理员节点检查默克尔根节点的哈希值是否与私有区块链块头中的哈希值相同,如果相同、执行下一步 ,如果不相同、则结束身份验证;

私有区域D中域管理员节点检查自身在私有区块链中生成的签名哈希值是否相同,如果相同、执行下一步 ,如果不相同、则结束身份验证;

私有区域D中域管理员节点基于边缘服务器D4的公钥对认证结果加密,将加密的认证结果发送至边缘服务器D4。