针对链上数字内容基于密文策略属性加密的受控访问方法及设备
- 国知局
- 2024-08-02 14:05:12
本发明属于访问控制,尤其涉及一种针对链上数字内容基于密文策略属性加密的受控访问方法及设备。
背景技术:
1、区块链:区块链技术是由分布式网络中的多个节点维护的不可篡改的账本,共识算法作为区块链技术的核心模块为分布式网络中的节点提供了一种非中心化的信任机制,从而各个节点之间无需提前建立信任也能够对整体网络的状态和数据达成一致。也就是,整个区块链无需引入任何可信第三方,网络中的诚实节点就能够完成来自用户的交易、节点之间的通信和网络状态信息的共识。
2、智能合约:智能合约是运行在区块链网络上的计算机程序,允许用户发起调用合约的交易请求,并按照用户指定的交易信息执行合约中的特定函数进而访问和更改链上的状态信息。
3、数字内容:链上数字内容主要是指通过区块链技术存储和验证的各种数字资产和信息,对特定的作品、艺术品生成唯一的数字凭证,在保护其数字版权的基础上,实现真实可信的数字化发行、购买、收藏和使用。
4、访问控制:指通过对系统、网络或资源进行限制和管理,以确保只有授权用户能够访问和利用这些资源的一种技术手段。它通常包括身份认证,授权,访问控制策略等。通过有效的访问控制技术,可以最大程度地减少未经授权的访问,防止信息泄露、数据损坏以及系统被攻击等安全风险。
5、属性加密:基于访问控制和加密技术,允许用户在加密数据的同时对其进行属性检索和计算,而无需将数据解密。这种技术的主要思想是将访问控制和加密密钥与数据的属性相关联,使得只有满足特定属性要求的用户才能够访问相应的数据。
6、cp-abe是一种基于策略的属性加密方案,通过指定加密数据的属性,对数据进行加密,对于一份完整的数据,完全可以分割成不同的部分,指定不同的属性;通过加密好的密文传递给用户,如果用户拥有密钥和属性值,那么就可以解密出对应的文件。
7、cp-abe算法主要由初始化,密钥的产生,加密,解密四个部分组成,具体步骤如下:
8、(1)初始化:初始化算法为随机化算法,一般在可信的密钥分发中心上执行。算法输入安全系数λ和属性空间u,生成系统公钥psk和系统主密钥msk。
9、setup(λ,u)→(psk,msk)
10、(2)密钥生成:密钥生成算法为随机化算法,一般由可信的密钥分发中心执行。根据系统公钥psk、系统主密钥msk和数据请求者提交的属性集合a,为数据请求者生成与属性集合相关联的用户密钥usk。
11、keygen(psk,msk,a)→usk
12、(3)加密:加密算法分为两步,第一步为随机化算法,由数据拥有者执行,第二步为确定性算法,由系统执行。第一步算法输入系统公钥psk、待加密消息t和由系统生成的椭圆曲线随机点gr,以gr为密钥通过系统内随机对称加密算法生成链上数字内容的加密密文ct。第二步由系统执行,通过输入系统公钥psk,对称加密密钥gr以及与访问策略相关联的访问控制结构acp,实现椭圆曲线上随机点gr的映射得到gm,只有拥有满足访问策略的请求者才能逆运算求解出gr。
13、encrypt(psk,t,gr)→ct
14、mapping(psk,gr,acp)→gm
15、(4)解密:解密算法也分为两步确定性算法,由数据请求者执行。第一步算法的输入为系统公钥psk、用户密钥usk和映射点gm,如果属性集合a满足访问策略,算法自动解密密文并获得相应的解密密钥gr。第二步算法的输入为系统公钥psk,解密密钥gr以及加密密文ct,如果第一步算法中能够成功获得正确的椭圆曲线点,那么在该算法中就能成功解密密文得到正确的链上数字内容
16、reverse(psk,gm,usk)→gr
17、decrypt(psk,gr,ct)→t
18、区块链的去中心化结构,公私钥加密技术和数据流动的过程中各个角色之间的认证保障了数据安全和用户隐私,让用户可以真正地访问和控制自己的数据,通过区块链的匿名性、可靠性以及不可篡改性来保证数据的安全传输,但是没办法解决数据细粒度访问问题。而如果使用属性加密算法来实现访问控制,每次更新访问策略需要修改密文,但由于区块链不可篡改的特性,区块链历史记录中仍然保留着更新前的密文,仍可以被解密访问,达不到更新访问策略的效果。
技术实现思路
1、针对上述问题,本发明公开了一种针对链上数字内容基于密文策略属性加密的受控访问方法及设备,可以实现对链上数字内容的细粒度访问。
2、为达到上述目的,本发明的技术方案包括以下内容。
3、一种针对链上数字内容基于密文策略属性加密的受控访问方法,应用于一数据拥有者,所述方法包括:
4、获取椭圆曲线上随机点gr=(x,y,z);
5、基于坐标值x和坐标值y对数字内容的原始数据进行加密,并将得到的数据密文c1上传至ipfs后,得到该数据密文c1在ipfs上的访问路径l;
6、分别基于坐标值z和该数字内容的访问控制策略w对访问路径l和随机点gr进行加密,得到路径密文c2和随机点密文gm;
7、将数字内容和该数字内容的相关信息发送到区块链上,并将所述坐标值x对应的坐标密钥k1存储在链数据库上,以使数据访问者基于该数字内容的相关信息、所述坐标密钥k1以及存储在ipfs上的数据密文c1访问该数字内容的原始数据;其中,所述数字内容的相关信息包括:数字内容id、数据拥有者id、访问控制策略w、路径密文c2和随机点密文gm。
8、进一步地,所述基于坐标值x和坐标值y对数字内容进行加密,包括:
9、分别获取坐标值x和坐标值y所对应的坐标密钥k1和坐标密钥k2;
10、基于坐标密钥k1和坐标密钥k2执行哈希算法,获得对称加密密钥k4;
11、使用对称加密密钥k4对数字内容的原始数据进行加密,得到数据密文c1。
12、进一步地,所述基于坐标值z对访问路径l进行加密,得到路径密文c2,包括:
13、获取坐标值z所对应的坐标密钥k3;
14、基于坐标密钥k3执行哈希算法,获得对称加密密钥k5;
15、使用对称加密密钥k5对访问路径l进行加密,得到路径密文c2。
16、进一步地,所述数据访问者基于该数字内容的相关信息、所述坐标密钥k1以及存储在ipfs上的数据密文c1访问该数字内容的原始数据,包括:
17、向证书颁发机构发起私钥生成请求,以使证书颁发机构根据所述数据访问者具有的属性策略t,生成并返回密钥k;
18、针对该数字内容,在所述属性策略t与访问控制策略w相匹配的情况下,基于密钥k解密随机点密文gm,以得到随机点gr;
19、根据链数据库上的坐标密钥k1对随机点gr进行校验,并在校验正确的情况下,基于随机点gr依次对路径密文c2和数据密文c1进行解密,以得到该数字内容。
20、进一步地,所述根据链数据库上的坐标密钥k1对随机点gr进行校验,包括:
21、调用智能合约从链数据库中获取坐标密钥k1;
22、还原出随机点gr中的坐标值x,并与坐标密钥k1进行校验,以得到随机点gr的校验结果。
23、进一步地,所述基于随机点gr依次对路径密文c2和数据密文c1进行解密,以得到该数字内容的原始数据,包括:
24、还原出随机点gr的坐标值x、坐标值y以及坐标值z;
25、分别获取坐标值x、坐标值y以及坐标值z所对应的坐标密钥k1、坐标密钥k2、坐标密钥k3;
26、基于坐标密钥k3执行哈希算法,获得对称加密密钥k5;
27、利用对称加密密钥k5解密路径密文c2,得到数据密文c1在ipfs上的访问路径l;
28、依据访问路径l在ipfs上获取数据密文c1;
29、基于坐标密钥k1和坐标密钥k2执行哈希算法,获得对称加密密钥k4;
30、利用对称加密密钥k4解密数据密文c1,得到数字内容的原始数据。
31、进一步地,所述证书颁发机构根据所述数据访问者具有的属性策略t,生成并返回密钥k之后,还包括:
32、将密钥生成信息发布到区块链中;其中,所述密钥生成信息包括:密钥k的密钥id、证书颁发机构id、数据访问者id和密钥生成时间。
33、进一步地,所述基于随机点gr依次对路径密文c2和数据密文c1进行解密,以得到该数字内容的原始数据之后,还包括:
34、将访问信息发布到区块链中;其中,所述访问信息包括:数据访问者id、数字内容id和访问时间。
35、一种计算机设备,所述计算机设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现上述任一项所述的针对链上数字内容基于密文策略属性加密的受控访问方法。
36、一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述任一项所述的针对链上数字内容基于密文策略属性加密的受控访问方法。
37、与现有技术相比,本发明至少具有以下技术优势:
38、1)实现数据细粒度访问。根据链上数字内容访问策略树对不同用户的属性进行多样的细粒度划分,提出针对链上数字内容的访问控制实现方案,可以实现区块链用户对链上数字内容的细粒度访问。
39、2)解决了属性加密难以用于区块链内容访问的问题。结合现有的安全访问模型,定期更改系统参数λ实现对数字内容的访问策略更新,更改数字内容的可见性。要达到修改acp生成新密文的目的,那就必须使老密文不能由之前的用户密钥usk解密,就只能修改系统公私钥更新系统使得之前的加密过程都失效,可以设置为周期性更新。
本文地址:https://www.jishuxx.com/zhuanli/20240801/241685.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表