一种细粒度可控的去中心化可编辑区块链构造方法和系统技术方案

技术编号:30429010 阅读:12 留言:0更新日期:2021-10-24 17:18
本发明专利技术属于区块链技术领域,具体为一种细粒度可控的去中心化可编辑区块链构造方法和系统。本发明专利技术利用改进变色龙哈希算法解决现有可编辑区块链技术的陷门中心化问题,引入临时陷门对每一笔交易进行动态哈希计算,实现交易粒度级别的区块历史数据编辑;同时利用去中心化密文属性加密方案,对临时陷门进行基于密码学的非交互式访问控制,实现对历史区块数据编辑的高度安全可控;最后制定了相应的验证规则,实现去中心化的环境下的节点对于交易编辑的共识。本发明专利技术基于改进变色龙哈希算法和改进的密文属性加密方案,实现了完全去中心化且细粒度可控的可编辑区块链构造,解决了之前技术陷门持有中心化,区块编辑粒度以及编辑可控性的问题。的问题。的问题。

【技术实现步骤摘要】
一种细粒度可控的去中心化可编辑区块链构造方法和系统


[0001]本专利技术属于区块链
,具体涉及去中心化可编辑区块链构造方法和系统。

技术介绍

[0002]区块链技术近年来受到各界的广泛关注,在大多数区块链中,数据一旦上链便不能更改。虽然不可篡改是区块链的一项基本特性,但是在实际应用中,这种特性使得区块链为各类虚假新闻以及不良信息提供了一个良好的发布和传播渠道,例如比特币以太坊等区块链平台已经被证实存在大量的色情链接以及僵尸病毒等。欧盟2018年出台的《通用数据保护条例(GeneralData Protection Regulation,GDPR)》中明确规定用户具有被遗忘权(Right to be forgotten),即用户有权要求责任方删除自己的隐私数据记录,无中央节点以及不可篡改的区块链很难去遵守该条例。
[0003]有鉴于此,面对区块链上的信息安全和监管领域的现实需求,可编辑区块链技术作为区块链领域的一项新兴技术应运而生。现有的可编辑区块链技术主要通过变色龙哈希函数实现对历史区块数据的修改,但在目前对于该方案的研究中存在一些问题:1)陷门持有中心化的问题,容易造成陷门的滥用导致历史数据被修改,并且违背了区块链去中心化的规则;2)区块编辑粒度的问题,区块历史数据只能是以区块为单位的修改,修改粒度过大;3)编辑可控性问题,没有相应的访问控制工具,以及编辑的规则。

技术实现思路

[0004]本专利技术的目的在于提供一种安全、细粒度可控的去中心化可编辑区块链构造方法和系统。
[0005]本专利技术利用改进变色龙哈希算法解决现有可编辑区块链技术的陷门中心化问题,引入临时陷门对每一笔交易进行动态哈希计算,实现交易粒度级别的区块历史数据编辑;同时利用去中心化密文属性加密方案,对临时陷门进行基于密码学的非交互式访问控制,实现对历史区块数据编辑的高度安全可控;最后制定相应的验证规则,实现去中心化的环境下的节点对于交易编辑的共识。本专利技术基于改进变色龙哈希算法和改进的密文属性加密方案,实现了一种完全去中心化且细粒度可控的可编辑区块链构造方法,解决了之前技术陷门持有中心化,区块编辑粒度以及编辑可控性的问题。
[0006]本专利技术的提供的细粒度可控的去中心化可编辑区块链构造方法,具体步骤为:
[0007](1)系统初始化:生成系统公共参数,区块链各节点生成的改进变色龙哈希算法的陷门公私钥以及去中心化的密文属性加密方案的属性管理公私钥;
[0008](2)属性密钥申请:区块链各节点获取符合自身属性的属性密钥;
[0009](3)可编辑交易构建与验证:用户利用改进变色龙哈希算法进行交易的哈希计算,以及临时陷门的属性加密计算,将其纳入交易中形成可编辑交易发送至区块链,区块链节点验证通过后将交易纳入本地交易池中;
[0010](4)区块验证:当前轮次区块生成节点将新生成的区块发送至区块链网络中供其
他节点进行共识以及属性验证,不符合属性验证规则的区块丢弃进入下一轮的共识;
[0011](5)区块历史数据编辑:用户向区块链网络发送交易编辑请求,符合该交易属性加密访问控制政策的节点解密该交易的临时陷门并利用自身的陷门私钥计算交易的哈希碰撞,并按照编辑规则完成交易的编辑,发送至区块链网络中供其他节点验证;其他节点验证通过后则将待编辑交易替换为该交易。
[0012]本专利技术中,步骤(1)的系统初始化涉及的参数包括:
[0013]改进变色龙哈希算法的系统参数PP=(p,q,g):这里,q是满足安全位数的大素数,p是满足2q+1生成的大素数,g为q阶循环群的生成元;
[0014]改进变色龙哈希算法的陷门公钥组HK:由区块链各节点在循环群内随机生成秘密保存,利用公式计算节点的陷门公钥,组成陷门公钥组HK=(y1,y2,

,y
i
,

,y
n
);
[0015]去中心化的密文属性加密方案的系统公共参数SP=(G1,p

,g

):这里,p

是符合安全性位数的大素数,G1是以p

为阶的双线性映射群,生成元为g


[0016]去中心化的密文属性加密方案的各属性机构公钥组{PK
i
}:区块链各节点对于每一个属于其管理的属性i随机选择有限域Z
p

中的元素α
i

i
∈Z
p

,作为节点属性管理私钥集合合秘密保存,机构属性私钥对应的公钥形成公钥组{PK
i
}。
[0017]本专利技术中,所述陷门私钥由区块链中每个节点秘密持有,所述去中心化的密文属性加密方案的属性由区块链中每个节点所管理,主要负责属性密钥生成工作;所有的工作都有区块链中的节点协商完成,无任何中心机构。
[0018]本专利技术中,步骤(2)所述属性密钥申请,是区块链各节点向网络中其他节点提交自身属性和全局身份标识GID,申请各节点管理的符合自身属性的属性密钥。具体包括:
[0019]区块链各节点向区块链网络发送自身属性和用户的全局身份标识GID(这里的GID为区块链节点在有限域Z
p

中生成的随机数r
GID
∈Z
p

对应公钥)。其他节点收到请求后,执行属性密钥生成算法KeyGen(SP,GID,i,SK
i
),输入系统参数SP,用户的全局身份标识GID,属于该机构的属性i,属性i的属性密钥SK
i
,对属于该机构的属性i在有限域Z
p

中选择一个随机数r
i
,即r
i
∈Z
p

。最后生成如下形式的基于用户GID标记的属性i的密钥SK
i,GID

[0020][0021]本专利技术中,所述每个节点都是一个属性权威机构,解决之前属性权威机构的中心化问题,实现去中心化的属性密钥分发与管理。
[0022]本专利技术中,步骤(3)所述可编辑交易构建,具体包括:
[0023](3.1)利用改进变色龙哈希算法对交易进行哈希计算:用户利用区块链客户端构建完一笔交易后,利用改进变色龙哈希的哈希算法DCHEHash(HK,m,R,eth),输入节点公钥组HK,待哈希的交易m,为公钥组HK中的每一个y生成的随机数组成的随机数组R,针对该交易随机生成的临时陷门eth,利用公式(其中)生成交易m的哈希值dchehash以及可公开的临时陷门peth;
[0024](3.2)利用去中心化密文属性加密方案对临时陷门eth进行属性加密:在计算哈希
值 dchehash的过程中,利用去中心化密文属性加密方案的属性加密的部分Encrypt 输入创世区块中保存的系统的公共参数SP,每一个属性的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种细粒度可控的去中心化可编辑区块链构造方法,其特征至于,具体步骤为:(1)系统初始化:生成系统公共参数,区块链各节点生成的改进变色龙哈希算法的陷门公私钥以及去中心化的密文属性加密方案的属性管理公私钥;其中,系统初始化涉及的参数包括:改进变色龙哈希算法的系统参数PP=(p,q,g):这里,q是满足安全位数的大素数,p是满足2q+1生成的大素数,g为q阶循环群的生成元;改进变色龙哈希算法的陷门公钥组HK:由区块链各节点在循环群内随机生成秘密保存,利用公式计算节点的陷门公钥,组成陷门公钥组HK=(y1,y2,

,y
i
,

,y
n
);去中心化的密文属性加密方案的系统公共参数SP=(G1,p

,g

):这里,p

是符合安全性位数的大素数,G1是以p

为阶的双线性映射群,生成元为g

;去中心化的密文属性加密方案的各属性机构公钥组{PK
i
}:区块链各节点对于每一个属于其管理的属性i随机选择有限域Z
p

中的元素α
i

i
∈Z
p

,作为节点属性管理私钥集合,作为节点属性管理私钥集合秘密保存,机构属性私钥对应的公钥形成公钥组{PK
i
};所述陷门私钥由区块链中每个节点秘密持有,所述去中心化的密文属性加密方案的属性由区块链中每个节点所管理,主要负责属性密钥生成工作;所有的工作都有区块链中的节点协商完成,无任何中心机构;(2)属性密钥申请:区块链各节点向网络中其他节点提交自身属性和全局身份标识GID,申请各节点管理的符合自身属性的属性密钥;具体包括:区块链各节点向区块链网络发送自身属性和用户的全局身份标识GID,这里的GID为区块链节点在有限域Z
p

中生成的随机数r
GID
∈Z
p

对应公钥其他节点收到请求后,执行属性密钥生成算法KeyGen(SP,GID,i,SK
i
),输入系统参数SP,用户的全局身份标识GID,属于该机构的属性i,属性i的属性密钥SK
i
,对属于该机构的属性i在有限域Z
p

中选择一个随机数r
i
,即r
i
∈Z
p

;最后生成如下形式的基于用户GID标记的属性i的密钥SK
i,GID
:(3)可编辑交易构建与验证:具体包括:(3.1)利用改进变色龙哈希算法对交易进行哈希计算:用户利用区块链客户端构建完一笔交易后,利用改进变色龙哈希的哈希算法DCHEHash(HK,m,R,eth),输入节点公钥组HK,待哈希的交易m,为公钥组HK中的每一个y生成的随机数组成的随机数组R,针对该交易随机生成的临时陷门eth,利用公式(其中)生成交易m的哈希值dchehash以及可公开的临时陷门peth;(3.2)利用去中心化密文属性加密方案对临时陷门eth进行属性加密:在计算哈希值dchehash的过程中,利用去中心化密文属性加密方案的属性加密的部分输入创世区块中保存的系统的公共参数SP,每一个属性的公开密钥{PK
i
},待加密的消息M即临时陷门eth以及全属性访问控制结构最后生成属性加密后
的临时陷门encEth;(3.3)将哈希值dchehash,节点公钥组HK,公开的临时陷门peth,随机数组R,以及属性加密后的临时陷门encEth包含至交易m中发送至区块链网络中;当前区块链客户端连接点区块链节点接收到这笔交易时,将(HK,m,R,peth)作为参数,计算以该数组作为参数的哈希值a,将该哈希值a与待验证交易的哈希值dchehash作...

【专利技术属性】
技术研发人员:卢暾徐宏名张鹏顾宁
申请(专利权)人:上海信联信息发展股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1