草庐IT

基于区块链的数字藏品管控方案

趣链科技 2023-04-04 原文

数字藏品是当下最火爆的区块链技术应用场景之一,产业的野蛮生长也蕴藏诸多隐患。本文以数字藏品的版权保护为切入点,讨论基于主子链架构的数字藏品合规发行解决方案 ,以期为数字藏品产业的良性发展提供一些思路。

数藏产业发展伴随梗阻
随着“NBA TopShot”、“无聊猿”等海外项目的成功运营,数字藏品逐渐引起社会关注,并在互联网迅速火爆出圈。2021年,数字藏品在国内快速发展,截止今年5月,国内数藏平台已超过330家,大量的博物馆、演艺集团作为版权方也在各大平台上发行自家数字藏品。报告预测,我国数字藏品交易市场将在2-3年间达到500到800亿元。

数字藏品快速发展的背后,对于原创作品的版权保护是一个不容忽视的问题,不加以重视极容易滋生侵权行为。2022年4月20日,杭州互联网法院依法公开审理了某科技公司侵害作品信息网络传播权纠纷案并当庭宣判,该案是我国数字藏品侵权纠纷审结并公开宣判的首案。详见《中国NFT维权第一案背后的制胜法宝原来是它》!

法律法规的明确和完善确实可以对数字藏品的侵权行为起到约束作用,但更多属于事后约束,针对金融科技领域的监管沙盒是一种事前约束机制,一定程度上可以对侵权行为起到预防作用。然而,两者都无法在侵权行为发生之时进行事中约束。为避免上述违法案件再次发生,一种穿透式的动态约束方案成为题中应有之义。

数字藏品合规发行

我们设想建设一条国家级的数字藏品主链,该主链的定位是约束全国的数字藏品平台(下文统称“数字藏品子链”)潜在的侵权发行行为。基于此定位,一方面数字藏品主链可以同步数字藏品子链的数据用于“数据审计”,另一方面该主链可作为版权确权链,可对未经版权作品原创作者授权的数字藏品作者授权的数字藏品发行行为起到“动态约束”作用。

具体而言:

“数据审计”

首先,设想赋予数字藏品主链构建链上轻节点的能力,链上轻节点类似于区块链节点的客户端,通过连接子链节点同步其区块头数据,达到获取审计数据的目的。

此方案的审计思路从区块链底层出发,可兼顾审计数据获取的安全性和性能,但也存在2个不足之处:

无法获取子链节点的区块体数据,审计数据不完整;

主链的链上轻节点只能连接同构链节点,对于异构子链节点的兼容性较弱;

考虑到全国数字藏品平台呈现异构多链格局,因此该方案无法满足全量的审计场景。

针对上述方案的不足之处,我们设想由区块链服务平台来统一部署异构链的监管节点,加入数字藏品子链,同步数据用以审计。

异构多链是产业区块链的基本格局,异构链的高效对接是区块链服务平台的基础能力,且由于部署的是全节点,可全量(区块头+区块体)同步数字藏品子链的节点数据,审计数据完整。

那么,在获取到链上数据后,如何展开审计分析?区块链一般将产生的状态数据以键值对的形式进行存储,这对于数据审计需要的结构化分析造成障碍。区块链服务平台可集成专业的链上数据结构化解析、统计和分析平台,极大降低链上数据的审计门槛。

“动态约束”

然而,上述方案在侵权行为发生时,作为数字藏品主链的监管方也仅能审计到包含违法违规内容的链上数据,而无法进行干预,本质上也是一种事后约束。

如何做到真正穿透式的动态约束?设想一个场景,为帮助数字藏品平台方更好地尽到事前审核注意义务,规定发行方在子链发行数字藏品前均需先通过审核,平台方从数字藏品主链上确认数字藏品的权属关系或者授权关系合法后,再同意予以发行,这样就能做到动态约束。我们以授权关系的合法性确认举例说明,数字藏品发行方如何向平台证明要发行的数字藏品是经过原创作品作者授权的。

从上图中可以看到,原创作品的授权和验证主要通过可验证声明来完成。可验证声明是分布式数字身份(区块链上的唯一身份标识,此例中我们假设用户都已各自在主链和子链上完成分布式数字身份的注册)里的概念,它是一种数字证书,是一个数字身份给另一个数字身份的某些属性做背书而签发的描述性声明,并附加自己的数字签名,用以证明这些属性的真实性。在此例中,可验证声明由原创作品作者签发给数字藏品发行方,具体内容如下:

"claiminfo": {
    "id": "xxxxx", //该声明的id,每个声明都将仅有一个id
    "issuer": "did:hyperchain:87c30de765f084ce3089168ee293053cd33b235d71
",//该声明的签发数字身份
      "issuanceDate": "xxxx", //该声明的签发日期
      "expirationDate": "xxxx", //该声明的有效期
  },  

    "subject": { 
    //这里是声明所证明的信息,包括声明持方的数字身份、属性描述
        "holder": "did:fabric:97c30de767f084ce3080168ee293053ba33b235d71",
        "name: "xxxxxxx", //作品名称
    "hash": "xxxxxxx", //作品哈希
    "Digital Fingerprinting": "xxxxxxx",//作品数字指纹
    ......
    },
  
    "signature": {
            "sign_type": "Secp256k1",
            "signature": "eyJhbGciOiJSUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19"
  }

可以看到,claiminfo中的issuer即原创作品作者,issuer的value是其在主链上注册的数字身份账户地址,subject中的holder即数字藏品发行方,holder的value是其在子链注册的数字身份账户地址,在subject中包含属性(attribute1)字段,在此例中属性可以是原创作品的唯一标识,比如作品名称、作品哈希、作品数字指纹等。signature是原创作品作者使用自己的私钥对claiminfo & subject进行的数字签名结果。

当数字藏品平台方接收到数字藏品发行方提交的可验证声明后,可以从数字藏品主链上查询到issuer的公钥,使用公钥完成对可验证声明的验签,如验签通过,则证明这份可验证声明确实由原创作品作者签发,从而完成作品授权关系的确认,对数字藏品发行予以放行。

然而,不难发现,在这个流程中,授权关系的确认仍存在人工审核的漏洞,如果数字藏品平台方和发行方沆瀣一气,仍无法避免侵权行为的发生(杭州互联网法院宣判的案例就是由于数字藏品平台方未履行更高的事前审查注意义务导致)。

为彻底解决这一问题,我们在方案中引入跨链能力,赋予主子链互操作性,当数字藏品发行方提交可验证声明后,则自动触发可验证声明的验证流程,实现授权关系的自动化确认。具体流程如下:

如上图所示,可验证声明的验证逻辑(查询公钥、数字签名验签等)由数字藏品主链的智能合约实现,数字藏品子链和数字藏品主链间的交互,由一条中继链统一中继。当数字藏品发行方提交可验证声明后,经由中继链中继实现对主链智能合约的跨链触发,完成可验证声明的验证。跨链的互操作的交易统一在中继链上链上存证,便于跨链多方的联合透明审计。

上述过程自动化完成,中继链、跨链网关和跨链合约等由监管方统一部署管控,数字藏品平台方无需也无法介入,数字藏品发行方则可实时获得是否允许授权发行数字藏品的反馈。数字藏品授权发行的动态监管约束得以真正实现。

区块链服务平台赋能“合规发行”

设想十分美好,但从设想回到现实,基于区块链的数字藏品发行的动态约束在实际落地过程中会遇到层层阻碍。

作为原创作品作者:

我去哪里申请确权,如何签发可验证声明?

作为数字藏品发行方,我又去哪里提交可验证声明?

作为主链的管控者,则需要面临最大的挑战:

拥有数据审计能力和版权确权能力的国家级数字藏品主链如何构建、扩展?

如何快速对接全国三百余家的数字藏品子链?

主链和子链间的互操作性,在复杂的网络环境中,如何基于中继链+网关模式真正落地?

分布式统一数字身份又如何集成?

任何解决方案如果仅停留在设想,就如空中楼阁,无法产生现实价值。

前文提及的数据审计问题,我们提到可以通过区块链服务平台来部署异构链节点,实现高效的链上数据结构化审计。而针对上述提到的动态约束落地问题,同样,可以基于区块链服务平台一揽子解决。

【数字藏品管控前台】

为了满足原创作者和数字藏品发行方的诉求,我们还需要构建一个数字藏品管控前台。

数字藏品管控前台拥有对主链和子链的访问能力,原创作品作者可以在前台注册数字身份、申请原创作品确权以及签发可验证声明等,数字藏品发行方可以在前台注册数字身份、提交可验证声明以及在授权验证后发行数字藏品。

【数字藏品管控后台】

再结合管控者的诉求,我们发现还需要构建一个数字藏品管控后台。

在区块链层面,数字藏品管控后台拥有对底层区块链(主链、子链、中继链等)的管控能力,同时提供满足运营、运维、开发和审计等场景的通用能力,为监管者在全国范围内落地基于区块链的数字藏品监管方案铺平道路,扫清障碍。

上述提到的数字藏品管控后台,即区块链服务平台。随着产业区块链的稳步深入推进,由政府牵头的城市级区块链基础设施正成为新基建的关键一环。如果由地方政府牵头构建监管主链,将各委办局的行业链作为业务子链,我们发现,文本介绍的基于区块链的数字藏品动态约束方案同样适用于城市级区块链基础设施的构建和落地,同时也需要区块链服务平台作为统一管控平台深度赋能。

总结
有观点认为:合规约束是一把双刃剑,力度过弱可能造成产业的野蛮生长,力度过强可能把新兴产业扼杀在摇篮中,扼制创新。双刃剑比喻的潜台词是把合规约束当做产业发展的对立面来看待。

作为未来价值互联网的新型基础设施,产业区块链的发展对于国家的战略意义不言而喻,要发展,更要可持续良性发展。合规约束本身不是应该批判的对象或产业发展的障碍,要约束的那些问题才是,如果没有约束,产业区块链的发展进程将被由此引发的问题所吞噬。笔者认为,产业区块链的合规约束应在产业初期就融入顶层设计中,也是产业可持续良性发展的关键因素。

基于主子链架构的数字藏品合规发行解决方案 ,是将合规深度融入产业的最佳范例,可实现产业发展和合规间的动态平衡,引导产业持续向好发展。而针对该解决方案在落地方面存在的诸多痛点,趣链区块链服务平台BlocFace可提供一站式区块链服务能力,赋能产业管控主体和地方政府更高效完善地构建产业级和城市级区块链基础设施。

有关基于区块链的数字藏品管控方案的更多相关文章

  1. ruby - 在 jRuby 中使用 'fork' 生成进程的替代方案? - 2

    在MRIRuby中我可以这样做:deftransferinternal_server=self.init_serverpid=forkdointernal_server.runend#Maketheserverprocessrunindependently.Process.detach(pid)internal_client=self.init_client#Dootherstuffwithconnectingtointernal_server...internal_client.post('somedata')ensure#KillserverProcess.kill('KILL',

  2. ruby - 查找字符串中的内容类型(数字、日期、时间、字符串等) - 2

    我正在尝试解析一个CSV文件并使用SQL命令自动为其创建一个表。CSV中的第一行给出了列标题。但我需要推断每个列的类型。Ruby中是否有任何函数可以找到每个字段中内容的类型。例如,CSV行:"12012","Test","1233.22","12:21:22","10/10/2009"应该产生像这样的类型['integer','string','float','time','date']谢谢! 最佳答案 require'time'defto_something(str)if(num=Integer(str)rescueFloat(s

  3. 叮咚买菜基于 Apache Doris 统一 OLAP 引擎的应用实践 - 2

    导读:随着叮咚买菜业务的发展,不同的业务场景对数据分析提出了不同的需求,他们希望引入一款实时OLAP数据库,构建一个灵活的多维实时查询和分析的平台,统一数据的接入和查询方案,解决各业务线对数据高效实时查询和精细化运营的需求。经过调研选型,最终引入ApacheDoris作为最终的OLAP分析引擎,Doris作为核心的OLAP引擎支持复杂地分析操作、提供多维的数据视图,在叮咚买菜数十个业务场景中广泛应用。作者|叮咚买菜资深数据工程师韩青叮咚买菜创立于2017年5月,是一家专注美好食物的创业公司。叮咚买菜专注吃的事业,为满足更多人“想吃什么”而努力,通过美好食材的供应、美好滋味的开发以及美食品牌的孵

  4. 区块链之加解密算法&数字证书 - 2

    目录一.加解密算法数字签名对称加密DES(DataEncryptionStandard)3DES(TripleDES)AES(AdvancedEncryptionStandard)RSA加密法DSA(DigitalSignatureAlgorithm)ECC(EllipticCurvesCryptography)非对称加密签名与加密过程非对称加密的应用对称加密与非对称加密的结合二.数字证书图解一.加解密算法加密简单而言就是通过一种算法将明文信息转换成密文信息,信息的的接收方能够通过密钥对密文信息进行解密获得明文信息的过程。根据加解密的密钥是否相同,算法可以分为对称加密、非对称加密、对称加密和非

  5. 基于C#实现简易绘图工具【100010177】 - 2

    C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.

  6. kvm虚拟机安装centos7基于ubuntu20.04系统 - 2

    需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc

  7. ruby - 将n维数组的每个元素乘以Ruby中的数字 - 2

    在Ruby中,是否有一种简单的方法可以将n维数组中的每个元素乘以一个数字?这样:[1,2,3,4,5].multiplied_by2==[2,4,6,8,10]和[[1,2,3],[1,2,3]].multiplied_by2==[[2,4,6],[2,4,6]]?(很明显,我编写了multiplied_by函数以区别于*,它似乎连接了数组的多个副本,不幸的是这不是我需要的)。谢谢! 最佳答案 它的长格式等价物是:[1,2,3,4,5].collect{|n|n*2}其实并没有那么复杂。你总是可以使你的multiply_by方法:c

  8. Ruby 的数字方法性能 - 2

    我正在使用Ruby解决一些ProjectEuler问题,特别是这里我要讨论的问题25(Fibonacci数列中包含1000位数字的第一项的索引是多少?)。起初,我使用的是Ruby2.2.3,我将问题编码为:number=3a=1b=2whileb.to_s.length但后来我发现2.4.2版本有一个名为digits的方法,这正是我需要的。我转换为代码:whileb.digits.length当我比较这两种方法时,digits慢得多。时间./025/problem025.rb0.13s用户0.02s系统80%cpu0.190总计./025/problem025.rb2.19s用户0.0

  9. ruby - 按数字(从大到大)然后按字母(字母顺序)对对象集合进行排序 - 2

    我正在构建一个小部件来显示奥运会的奖牌数。我有一个“国家”对象的集合,其中每个对象都有一个“名称”属性,以及奖牌计数的“金”、“银”、“铜”。列表应该排序:1.首先是奖牌总数2.如果奖牌相同,按类型分割(金>银>铜,即2金>1金+1银)3.如果奖牌和类型相同,则按字母顺序子排序我正在用ruby​​做这件事,但我想语言并不重要。我确实找到了一个解决方案,但如果感觉必须有更优雅的方法来实现它。这是我做的:使用加权奖牌总数创建一个虚拟属性。因此,如果他们有2个金牌和1个银牌,加权总数将为“3.020100”。1金1银1铜为“3.010101”由于我们希望将奖牌数排序为最高的,因此列表按降序排

  10. ruby-on-rails - rails 中的正则表达式匹配 [\w] 和 "-"但不匹配数字 - 2

    我想为名字验证编写一个正则表达式。正则表达式应包括所有字母(拉丁/法语/德语字符等)。但是我想从中排除数字并允许-。所以基本上它是\w(减)数(加)-。请帮忙。 最佳答案 ^[\p{L}-]+$\p{L}匹配anykindofletterfromanylanguage. 关于ruby-on-rails-rails中的正则表达式匹配[\w]和"-"但不匹配数字,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.c

随机推荐