区块链物联网中基于属性的私有数据共享与脚本驱动的可编程密文和分散密钥管理

本文主要是介绍区块链物联网中基于属性的私有数据共享与脚本驱动的可编程密文和分散密钥管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Attribute-Based Private Data Sharing With Script-Driven Programmable Ciphertext and Decentralized Key Management in Blockchain Internet of Things

在这里插入图片描述

密钥生成算法

第 1 步:对于属性集A=m个属性
的用户IDk,他首先将属性集A发送给Pi并且计算 抗碰撞哈希函数
,然后,用户计算身份的参数 并将其发送给Pi。

第 2 步:此步骤用于描述完整节点参数的生成。首先,对于每个属性 在这里插入图片描述
,节点Pi选择一个随机数在这里插入图片描述
。随后,Pi取一个随机数θi,通过使用Shamir (t, n)-阈值SSS(secret sharing scheme)在所有Pi之间共享它,如下所示。Pi随机选择t−1次多项式
在这里插入图片描述
使得 在这里插入图片描述
是某个有限域中的随机元素。最后,Pi 计算 n 个共享段 在这里插入图片描述
hi(pn) 并秘密地将 hi(pj) 分配给股东 Pj,其中 j ∈ [1, n]。当节点Pi从Pj接收到所有共享段hj(pi)时,它分别计算在这里插入图片描述

第3步:每个节点 Pi 使用其私钥 SKi 和步骤 1 和 2 创建的参数来计算用户私钥的片段信息。
对于主私钥的片段,Pi 计算
在这里插入图片描述
对于属性集 在这里插入图片描述
,Pi计算属性子键的片段为
在这里插入图片描述
最后,Pi发送在这里插入图片描述
到用户IDk。

在这一步中,通过使用拉格朗日插值公式,用户将根据接收到的密钥片段重建其主私钥和属性子密钥。我们定义拉格朗日系数为 在这里插入图片描述
在这里插入图片描述
对于主私钥,它进行重构
在这里插入图片描述
对于属性子键,用户进行重构
在这里插入图片描述
最后,让 在这里插入图片描述
并且用户通过如下方式获得他的私钥sk_k
在这里插入图片描述

这篇关于区块链物联网中基于属性的私有数据共享与脚本驱动的可编程密文和分散密钥管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/289687

相关文章

SpringBoot中使用 ThreadLocal 进行多线程上下文管理及注意事项小结

《SpringBoot中使用ThreadLocal进行多线程上下文管理及注意事项小结》本文详细介绍了ThreadLocal的原理、使用场景和示例代码,并在SpringBoot中使用ThreadLo... 目录前言技术积累1.什么是 ThreadLocal2. ThreadLocal 的原理2.1 线程隔离2

在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程

《在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程》本文介绍了在Java中使用ModelMapper库简化Shapefile属性转JavaBean的过程,对比... 目录前言一、原始的处理办法1、使用Set方法来转换2、使用构造方法转换二、基于ModelMapper

10个Python自动化办公的脚本分享

《10个Python自动化办公的脚本分享》在日常办公中,我们常常会被繁琐、重复的任务占据大量时间,本文为大家分享了10个实用的Python自动化办公案例及源码,希望对大家有所帮助... 目录1. 批量处理 Excel 文件2. 自动发送邮件3. 批量重命名文件4. 数据清洗5. 生成 PPT6. 自动化测试

使用Java实现一个解析CURL脚本小工具

《使用Java实现一个解析CURL脚本小工具》文章介绍了如何使用Java实现一个解析CURL脚本的工具,该工具可以将CURL脚本中的Header解析为KVMap结构,获取URL路径、请求类型,解析UR... 目录使用示例实现原理具体实现CurlParserUtilCurlEntityICurlHandler

10个Python Excel自动化脚本分享

《10个PythonExcel自动化脚本分享》在数据处理和分析的过程中,Excel文件是我们日常工作中常见的格式,本文将分享10个实用的Excel自动化脚本,希望可以帮助大家更轻松地掌握这些技能... 目录1. Excel单元格批量填充2. 设置行高与列宽3. 根据条件删除行4. 创建新的Excel工作表5

Linux内存泄露的原因排查和解决方案(内存管理方法)

《Linux内存泄露的原因排查和解决方案(内存管理方法)》文章主要介绍了运维团队在Linux处理LB服务内存暴涨、内存报警问题的过程,从发现问题、排查原因到制定解决方案,并从中学习了Linux内存管理... 目录一、问题二、排查过程三、解决方案四、内存管理方法1)linux内存寻址2)Linux分页机制3)

JavaScript中的isTrusted属性及其应用场景详解

《JavaScript中的isTrusted属性及其应用场景详解》在现代Web开发中,JavaScript是构建交互式应用的核心语言,随着前端技术的不断发展,开发者需要处理越来越多的复杂场景,例如事件... 目录引言一、问题背景二、isTrusted 属性的来源与作用1. isTrusted 的定义2. 为

Linux中shell解析脚本的通配符、元字符、转义符说明

《Linux中shell解析脚本的通配符、元字符、转义符说明》:本文主要介绍shell通配符、元字符、转义符以及shell解析脚本的过程,通配符用于路径扩展,元字符用于多命令分割,转义符用于将特殊... 目录一、linux shell通配符(wildcard)二、shell元字符(特殊字符 Meta)三、s

Python脚本实现自动删除C盘临时文件夹

《Python脚本实现自动删除C盘临时文件夹》在日常使用电脑的过程中,临时文件夹往往会积累大量的无用数据,占用宝贵的磁盘空间,下面我们就来看看Python如何通过脚本实现自动删除C盘临时文件夹吧... 目录一、准备工作二、python脚本编写三、脚本解析四、运行脚本五、案例演示六、注意事项七、总结在日常使用

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.