基于DCI的区块链版权的实现方法及系统与流程

文档序号:21409229发布日期:2020-07-07 14:44阅读:867来源:国知局
基于DCI的区块链版权的实现方法及系统与流程

本公开涉及数字版权技术领域,尤其涉及一种基于dci的区块链版权的实现方法及系统。



背景技术:

创作者创作的原创作品(文字、音视频等),在版权保护方面一直不够完善,确权的速度低,成本大,以至于创作者的权益不能够得到保证。



技术实现要素:

本公开提供了一种基于dci的区块链版权的实现方法及系统,其技术目的是实现对原创作品的快速确权,使创作者的权益得到保证。

本公开的上述技术目的是通过以下技术方案得以实现的:

一种基于dci的区块链版权的实现方法,包括版权构建流程和版权认证流程,所述版权构建流程包括:

用户对源文件进行版权登记获取数字版权唯一标识符dci,所述dci与用户的物理身份信息对应,所述物理身份信息包括权利人名称和权利人证件;

创建钱包账户,所述钱包账户包括公钥和私钥,所述公钥推导出第一钱包地址,用户持有所述私钥;

为用户构建数字身份,对所述权利人名称和所述权利人证件进行哈希得到第一身份摘要,所述数字身份则包括所述第一钱包地址和所述第一身份摘要;

用户使用所述私钥对所述dci进行签名得到签名信息,将所述签名信息作为盲水印嵌入到所述源文件;

对所述dci进行哈希获取dci摘要,将所述第一钱包地址、所述第一身份摘要、所述dci摘要都写入区块链并建立对应关系;

所述版权认证流程包括:

用户将所述源文件、dci、第一钱包地址、公钥、第一身份摘要发送给第三方;

第三方在所述源文件中提取盲水印,然后通过所述公钥对所述盲水印进行验签,若验签通过则对所述dci进行哈希得到所述dci摘要;

先调用区块链获取与所述dci摘要对应的第二钱包地址,若所述第二钱包地址与所述第一钱包地址一致则所述dci与用户的所述数字身份有对应关系;

然后调用区块链获取与所述第二钱包地址对应的第二身份摘要,若所述第二身份摘要与所述第一身份摘要一致则完成版权认证。

一种基于dci的区块链版权的实现系统,包括版权构建模块和版权认证模块,所述版权构建模块包括:

版权登记单元,用户通过所述版权登记单元对源文件进行版权登记获取数字版权唯一标识符dci,所述dci与用户的物理身份信息对应,所述物理身份信息包括权利人名称和权利人证件;

钱包创建单元,创建钱包账户,所述钱包账户包括公钥和私钥,所述公钥推导出第一钱包地址,用户持有所述私钥;

数字身份构建单元,为用户构建数字身份,对所述权利人名称和所述权利人证件进行哈希得到第一身份摘要,所述数字身份则包括所述第一钱包地址和第一身份摘要;

签名单元,用户使用所述私钥对所述dci进行签名得到签名信息,然后将所述签名信息作为盲水印嵌入到所述源文件;

写入单元,对所述dci进行哈希获取dci摘要,将所述第一钱包地址、所述第一身份摘要、所述dci摘要都写入区块链并建立对应关系;

所述版权认证模块包括:

发送单元,用户将所述源文件、dci、第一钱包地址、公钥、第一身份摘要发送给第三方;

验签单元,第三方在所述源文件中提取盲水印,然后通过所述公钥对所述盲水印进行验签,若验签通过则对所述dci进行哈希得到所述dci摘要;

认证单元,包括第一认证单元和第二认证单元;

所述第一认证单元调用区块链获取与所述dci摘要对应的第二钱包地址,若所述第二钱包地址与所述第一钱包地址一致则所述dci与用户的所述数字身份有对应关系;

所述第二认证单元调用区块链获取与所述第二钱包地址对应的第二身份摘要,若所述第二身份摘要与所述第一身份摘要一致则完成版权认证。

进一步地,所述源文件包括文字作品、音频和视频。

本公开的有益效果在于:本公开所述的基于dci的区块链版权的实现方法及系统先构建版权然后第三方需要使用版权时进行认证,以确保创造者的权益得到保障。创作者只需在版权登记时提供源文件,经登记后得到数字版权唯一标识符dci,dci经创作者私钥签名后作为盲水印嵌入到源文件,保证源文件在使用层面的安全性。

再将dci摘要和用户数字身份一起写入区块链并且一一对应,在需要确权的时候直接查询区块链就可以获取该源文件对应的创作者信息。同时区块链保存有权利人名称和权利人证件,使得区块链版权在验证时更便捷、高效,同时也能更好的保护隐私。

附图说明

图1为版权构建流程图;

图2为版权验证流程图;

图3为本公开系统框图。

具体实施方式

下面将结合附图对本公开技术方案进行详细说明。

在本公开的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量,仅用来区分不同的组成部分。

图1为本公开版权构建流程图,如图1所示,一般而言,版权登记是在中国版权保护中心登记或其他省级版权保护中心进行登记,版权的源文件则包括文字作品、音视频等,创作者在进行版权登记时需要提供对应的权利人名称和权利人证件(即创作者的物理身份信息),若创作者为个人则提供个人姓名和个人身份证,若创作者为企事业单位则提供单位名称、营业执照以及公章等,最终完成版权登记。版权中心核实无误后为当前源文件颁发dci,dci则与创作者的物理身份信息绑定。

作为具体实施例地,钱包账户有一个密钥对定义,即私钥和公钥,公钥推导出第一钱包地址,创作者持有私钥,第一钱包地址则是公开的。私钥首先由32字节63位的伪随机数生成密钥随机种子(可能性是2的256次方种,暴力破解基本不可能),随机种子通过secp256k1^5(椭圆曲线算法)曲线生成32字节的私钥,再通过ecdsa-secp256k1(椭圆曲线数字签名算法)对私钥签名,将私钥映射成65字节的公钥。然后通过keccak-256哈希算法,计算公钥(非压缩公钥)的哈希值(32字节),第一钱包地址则取哈希后的公钥的后20个字节。

作为具体实施例地,为创作者构建数字身份时,创造者将其身份信息发送给认证机构,身份信息包括物理身份信息和数字身份,物理身份即权利人名称和权利人证件,对权利人名称和权利人证件进行哈希得到第一身份摘要,数字身份则包括第一钱包地址和第一身份摘要。然后验证机构验证创作者身份的合法性和有效性,验证完成后则将数字身份写入区块链,并建立起第一钱包地址和第一身份摘要之间的对应关系。

数字身份创建完成后,使用ecdsa-secp256k1(椭圆曲线数字签名算法)对dci进行签名得到签名信息,将签名信息作为盲水印嵌入到所述源文件。然后dci经过keccak-256哈希获得dci摘要,将dci摘要写入区块链并和区块链上存储的数字身份建立对应关系。

图2为版权验证流程图,如图2所示,用户将源文件、dci、第一钱包地址、公钥、第一身份摘要发送给第三方,然后第三方在源文件中提取盲水印,然后通过ecdsa-secp256k1使用提供的公钥对盲水印进行验签,若验签通过则使用keccak-256对dci进行哈希得到dci摘要。得到dci摘要后先调用区块链获取与dci摘要对应的第二钱包地址,若第二钱包地址与第一钱包地址一致则dci与用户的数字身份有对应关系;然后调用区块链获取与第二钱包地址对应的第二身份摘要,若第二身份摘要与第一身份摘要一致则完成版权认证。

图3为本公开系统流程图,本公开所述的基于dci的区块链版权的实现系统包括版权构建模块和版权认证模块,版权构建模块包括版权登记单元、钱包创建单元、数字身份构建单元、签名单元和写入单元;版权认证模块包括发送单元、验签单元和认证单元,而认证单元又包括第一认证单元和第二认证单元。各模块的具体作用参见本公开所述的方法,不再赘述。

本发明与区块链的交互是通过智能合约来实现的,实现原理如下:

(1)通过智能合约创建映射:

1.1)idinfos:映射:key为地址,value为数字身份信息结构体;

1.1.1)用于存储区块链上身份信息;

1.1.2)idinfo:结构体;

1.1.2.1)属性为身份摘要;

1.2)idnumberhashs:映射:key哈希后的身份摘要,value为钱包地址;

1.2.1)用于保证链区块链上数字身份的唯一性;

1.3)dciinfos:映射:key为哈希后的dci,value为钱包地址;

1.3.1)用于构建区块链版权(dci与数字身份的对应关系);

(2)构造函数:

owner:当前智能合约创建者,拥有所有读写权限(即认证机构等);

(3)添加权限控制:

3.1)setonlyowner:函数修改器,即只有智能合约创建者才可以写入区块链;

3.2)get:没有权限控制,即所有人都可以访问(即其他平台等);

(4)调用智能合约创建数字身份,参数:

4.1)required:地址类型参数,即要给哪一个钱包地址添加数字身份;

4.2)required:字节类型参数,即当前地址对应的身份摘要;

4.3)智能合约内部判断是单纯新建数字身份,还是重置原有身份后新建;

4.3.1)即判断当前链上是否有地址所对应的身份,没有即为新建;

4.3.2)如果有会继续进行判断原有钱包地址是否和新传入的钱包地址一致;

4.3.3)不一致重置原有身份后构建新身份;

(5)调用智能合约查询数字身份:

5.1)参数:required:钱包地址类型参数,即要获取的数字身份;

5.1.1)查询数字身份的所有内容;

5.1.1.1)返回值:字节类型、字节类型当前钱包地址对应的身份摘要;

5.1.2)查询身份摘要;

5.1.2.1)返回值:字节类型,身份摘要;

(6)调用智能合约构建区块链版权:

6.1)构建数字版权与数字身份对应关系的过程即为构建区块链版权;

6.2)required:字节类型参数,dci摘要,即要给哪一个数字版权添加对应的数字身份;

6.3)required:地址类型参数,当前数字版权对应的数字身份的钱包地址;

(7)调用智能合约查询区块链版权对应的数字身份的钱包地址;

7.1)参数:required:字节类型参数,dci摘要,即要查询哪一个区块链版权对应的数字身份的钱包地址;

7.1.1)返回值:钱包地址类型。

以上为本公开示范性实施例,本公开的保护范围由权利要求书及其等效物限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1