当前位置: 首页 > 专利查询>江苏大学专利>正文

一种基于属性基加密的交易客体身份匿名可追踪方法、网络设备、存储设备技术

技术编号:35189059 阅读:20 留言:0更新日期:2022-10-12 18:04
本发明专利技术公开了一种基于属性基加密的交易客体身份匿名可追踪方法、网络设备、存储设备,由区块链服务器生成公共参数和主密钥并派发到注册中心。在注册中心生成审计端口和监管端口的私钥。用户端向注册中心发送注册申请,注册中心对用户端的申请进行验证、广播至区块链,完成用户身份注册并将加密过的用户数据上传至区块链网络。用户之间的交易,由用户A向用户B发送交易请求,用户B接收请求后,对交易在区块链上广播,由审计端口对该交易审计,若非法或者违规,则追踪该交易,若合法,则将其上传至区块链网络。本发明专利技术采用属性基加密和区块链存储相结合,保证远程交易过程中包含用户隐私、通信安全、数据安全、不可篡改以及交易可追溯性。溯性。溯性。

【技术实现步骤摘要】
一种基于属性基加密的交易客体身份匿名可追踪方法、网络设备、存储设备


[0001]本专利技术属于区块链交易的匿名追踪安全
,是一种基于属性基加密的交易客体追踪方法、网络设备、存储设备。适合远程的可信通信,需要对用户身份的匿名保护和交易信息、用户信息的远程可追踪。

技术介绍

[0002]区块链可以在分布式账本中记录交易行为、存储数据和交换价值,整个过程不受任何中心化机构的控制,而是由分布在世界各地的计算机进行维护。随着区块链应用的不断发展,区块链暴露的问题也随之体现出来,对区块链交易的监管也愈发重要,区块链的优势在于去中心化,匿名化和可信机制。其中区块链匿名交易是区块链交易监管的重要组成部分,区块链上的交易内容包括用户的地址、用户的身份信息等都是公开透明的,可以让所有参与节点对交易进行验证和记录。区块链公开透明的特点方便了节点对交易的验证,但同时带来了用户的隐私保护问题。对于近年来出现许多设计去匿名化方案,在保护了用户隐私的同时,也为用户追踪带来了困扰。在此基础上,监管系统也面临巨大的挑战。
[0003]当前区块链用户隐私保护主要由以下三种方案:(1)基于混合技术;(2)基于还签名技术;(3)基于零知识证明;这三种方案考虑到用户信息的隐私保护,可没有考虑到用户身份监管等方面。而对于交易追踪方面,虽然有提出过可审计可追踪的交易方案,但是对用户的隐私保护却没有考虑到。

技术实现思路

[0004]针对上述问题,本专利技术提出一种基于属性基加密的交易客体身份匿名可追踪方法、网络设备和存储设备,既保护了以防第三方干扰的用户之间的交易,又能够对非法交易进行追踪,保护了用户的隐私和交易的合法性,该方法包括如下步骤:
[0005](1)用户端上传自身信息到注册中心RC,进行注册;
[0006](2)注册中心对用户注册后上传至区块链网络;
[0007](3)当用户之间发生交易时,审计端口对用户双方的交易进行检验;
[0008](4)对于合法的交易,上传至区块链网络并进行广播;
[0009](5)对于非法的交易,向监管端口报告,请求追踪;
[0010](6)监管端口对非法交易进行追踪,并从区块链网络中找出此非法交易的匿名用户;
[0011]进一步地,上述步骤1的实现包括:
[0012]步骤1.1区块链服务器通过调用智能合约,调用Setup()函数,生成公共参数PK,和主密钥MK,并将PK、MK发送给注册中心RC。
[0013]Setup算法输入的是秘密安全参数,输出的是公共参数PK和主密钥MK,其表达式如式(1)所示:
[0014]PK=(g,e(g,g)
α
,g
a
)MK=g
a
ꢀꢀꢀꢀꢀ
(1)
[0015]其中,g是G1的生成元,G1是一个阶为素数的p阶双线性群,随机选取α和a,使得α和a属于p阶的整数,即α,a∈Z
p
,Z
p
是p阶双线性群的整数部分。e(g,g)为g 与g做双线性映射。
[0016]步骤1.2审计端口和监管端口分别把自己的属性组S1和S2发送给注册中心RC。
[0017]步骤1.3生成审计端口私钥SK1,通过算法KenGen()算法,生成密钥SK1,即 SK1=KenGen(PK,SK,S1),该算法以审计端口的属性集合S1、主密钥MK和公共参数PK 作为输入,输出审计端口私钥SK1。其表达式如式(2)所示:
[0018][0019]选取随机数β∈Z
p
,r∈Z
p
,r
j
∈Z
p
,j是用户S1中的每一个属性,即j∈S1。H(j)将属性字符串j散列成G1中的元素,D、D
j
、D'
i
为中间变量。
[0020]步骤1.4生成监管端口私钥SK2,通过算法KenGen(PK,MK,S2)生成密钥SK2,即 SK2=KenGen(PK,SK,S2),该算法以监管端口的属性集合S2、主密钥MK和公共参数PK作为输入,输出监管端口私钥SK2。其表达式如式(3)所示:
[0021][0022]选取随机数γ∈Z
p

j
∈Z
p
,j是S2中的每一个属性,即j∈S2。
[0023]步骤1.5注册中心RC将私钥SK1和SK2分别发送给审计端口和监管端口。
[0024]步骤1.6审计端口和监管端口获取来自注册中心的私钥SK1和SK2。
[0025]进一步地,上述步骤2的实现包括:
[0026]步骤2.1用户请求向注册中心RC进行注册申请。
[0027]步骤2.2用户A向注册中心RC发送自己的属性组S3和注册信息M1。
[0028]步骤2.3注册中心RC获取用户A的属性组S3,注册中心RC生成用户的公钥PK3和私钥SK3,其中调用KenGen()函数生成用户的私钥SK3。
[0029]步骤2.4注册中心RC通过注册交易地址x向用户A发送公钥PK3和私钥SK3。
[0030]步骤2.5注册中心RC调用Encrypt(PK,M,Γ)算法,即输入公共参数PK,明文消息M(指的是注册信息M1),访问结构A(A=Γ),输出密文C
T
,即C
T
=Encrypt(PK,M,Γ),密文C
T
的表示如式(4)所示:
[0031][0032]其中,选择随机数Y为访问控制树T的叶子节点的集合,任意y∈Y,att(y) 表示叶节点y对应的属性字符串,H(att(y))将属性字符串att(y)散列成G0中的元素,Γ为访问控制树T的访问控制结构。q
y
(0)为子节点常数项,C、C
y
、C'
y
为中间变量,var h=g
β

[0033]即用户A的注册信息M1进行加密操作,生成密文消息M1’
。即 M1’
=Encrypt(PK,SK3,Γ),Γ为访问控制树T的访问控制结构。包含用户A的属性组S3和监管端口属性组S2。
[0034]步骤2.6注册中心RC将加密后的密文消息M1’
以交易广播的形式上传至区块链端口。
[0035]进一步地,步骤2.1中,具体操作如下:
[0036]步骤2.1.1用户请求向注册中心RC提出注册申请。
[0037]步骤2.1.2注册中心RC通过注册中心的审核并向区块链网络发送注册交易请求。
[0038]步骤2.1.3区块链网络接受交易请求,并广播注册交易,发送到用户的地址x,完成注册。
[0039]在步骤2.6中,进行进一步的说明:
[0040]即经过属性基加密的用户A在链上数据实现了匿名,当且仅当只有监管端口和用户本身知道用户A的信息,方便了监管端口的追踪。对此进行进一步的匿名性说明:本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于属性基加密的交易客体身份匿名可追踪方法,其特征在于,包括如下步骤:S1用户端上传自身信息到注册中心RC,进行注册;S2注册中心对用户注册后上传至区块链网络;S3当用户之间发生交易时,审计端口对用户双方的交易进行检验;S4对于合法的交易,上传至区块链网络并进行广播;S5对于非法的交易,向监管端口报告,请求追踪;S6监管端口对非法交易进行追踪,并从区块链网络中找出此非法交易的匿名用户。2.根据权利要求1所述的一种基于属性基加密的交易客体身份匿名可追踪方法,其特征在于,S1的实现包括:S1.1区块链服务器通过调用智能合约,调用Setup()函数,生成公共参数PK,和主密钥MK,并将PK、MK发送给注册中心RC;Setup算法输入的是秘密安全参数,输出的是公共参数PK和主密钥MK,其表达式如式(1)所示:PK=(g,e(g,g)
α
,g
a
)MK=g
a
ꢀꢀꢀꢀꢀ
(1)其中,g是G1的生成元,G1是一个阶为素数的p阶双线性群,随机选取α和a,使得α和a属于p阶的整数,即α,a∈Z
p
,Z
p
是p阶双线性群的整数部分,e(g,g)为g与g做双线性映射;S1.2审计端口和监管端口把自己的属性组S1和S2发送给注册中心RC;S1.3生成审计端口私钥SK1;通过算法KenGen()算法,生成密钥SK1,即SK1=KenGen(PK,SK,S1),该算法以审计端口的属性集合S1、主密钥MK和公共参数PK作为输入,输出审计端口私钥SK1;其表达式如式(2)所示:选取随机数β∈Z
p
,r∈Z
p
,r
j
∈Z
p
,j是用户S1中的每一个属性,即j∈S1,H(j)将属性字符串j散列成G1中的元素,D、D
j
、D

i
为中间变量;S1.4生成监管端口私钥SK2;通过算法KenGen(PK,MK,S2)生成密钥SK2,即SK2=KenGen(PK,SK,S2),该算法以监管端口的属性集合S2、主密钥MK和公共参数PK作为输入,输出监管端口私钥SK2,其表达式如式(3)所示:选取随机数γ∈Z
p

j
∈Z
p
,j是S2中的每一个属性,即j∈S2;S1.5注册中心RC将私钥SK1和SK2分别发送给审计端口和监管端口;1.6审计端口和监管端口分别获取来自注册中心的私钥SK1和SK2。3.根据权利要求1所述的一种基于属性基加密的交易客体身份匿名可追踪方法,其特征在于,S2的实现包括:S2.1用户请求向注册中心RC进行注册申请;S2.2用户向注册中心RC发送自己的属性组S3和注册信息M1;S2.3注册中心RC获取用户的属性组S3,注册中心RC生成用户的公钥PK3和私钥SK3,其中调用KenGen()函数生成用户的私钥SK3;S2.4注册中心RC通过注册交易地址x向用户发送公钥PK3和私钥SK3;
S2.5注册中心RC调用Encrypt(PK,M,Γ)算法,即输入公共参数PK,明文消息M,访问结构A,输出密文C
T
,即C
T
=Encrypt(PK,M,Γ),密文C
T
的表示如式(4)所示:其中,选择随机数Y为访问控制树T的叶子节点的集合,任意y∈Y,att(y)表示叶节点y对应的属性字符串,H(att(y))将属性字符串att(y)散列成G0中的元素,Γ为访问控制树T的访问控制结构,q
y
(0)为子节点常数项,C、C
y
、C

y
为中间变量,var h=g
β
;即用户的注册信息M1进行加密操作,生成密文消息M1’
,即M1’
=Encrypt(PK,SK3,Γ),Γ为访问控制树T的访问控制结构,包含用户A的属性组S3和监管端口属性组S2;S2.6注册中心RC将加密后的密文消息M1’
以交易广播的形式上传至区块链端口。4.根据权利要求3所述的一种基于属性基加密的交易客体身份匿名可追踪方法,其特征在于,S2.1的实现包括:步骤2.1中,具体操作如下:步骤2.1.1用户请求向注册中心RC提出注册申请;步骤2.1.2注册中心RC通过注册中心的审核并向区块链网络发送注册交易请求;步骤2.1.3区块链网络接受交易请求,并广播注册交易,发送到用户的地址x,完成注册。5.根据权利要求1所述的一种基于属性基加密的交易客体身份匿名可追踪方法,其特征在于,S3的实现包括:S3.1用户A向用户B发送交易请求;S3.2若用户B接受用户A的交易请求,用户B对自己属性组S4进行加密操作,得到加密属性组S4’
并对其进行签名操纵,得到数字签名δ1;S3.3用户B将{δ1、S4’
}发送给用户A;S3.4用户A对δ1进行签名验证,...

【专利技术属性】
技术研发人员:李致远吴越毕俊蕾吴岩徐丙磊何恩寒
申请(专利权)人:江苏大学
类型:发明
国别省市:

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

1