CN112732829A - 一种数据交易系统及方法 - Google Patents
一种数据交易系统及方法 Download PDFInfo
- Publication number
- CN112732829A CN112732829A CN202011575592.1A CN202011575592A CN112732829A CN 112732829 A CN112732829 A CN 112732829A CN 202011575592 A CN202011575592 A CN 202011575592A CN 112732829 A CN112732829 A CN 112732829A
- Authority
- CN
- China
- Prior art keywords
- data
- access
- entity
- entity organization
- transaction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 40
- 230000008520 organization Effects 0.000 claims abstract description 133
- 238000012546 transfer Methods 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 230000032258 transport Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 11
- 238000007726 management method Methods 0.000 description 8
- 238000013500 data storage Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000004927 fusion Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000013523 data management Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据交易系统,所述数据交易系统包括多个实体组织,每个实体组织包括记账节点,其中一个或多个实体组织还包括数据库节点,所述每个记账节点至少包括区块链层,所述每个数据库节点包括区块链层、权限准入层和传统数据库层,其中:所有区块链层维护一条共同的区块链,所述区块链层用于发布数据资源、数据访问权限的链上交易以及数据访问记录的日志管理;所述权限准入层用于根据区块链上信息,通过身份认证的方式控制访客身份的实体组织对其所在数据库节点的原始数据的访问;所述传统数据库层用于存储其所在数据库节点的原始数据。本发明提出的数据交易系统架构和具体方案巧妙地解决了前文提到的当前基于传统数据库和纯粹基于区块链的数据交易平台中存在的问题。
Description
技术领域
本发明涉及数据交易领域,具体来说,涉及区块链与传统数据库融合领域,更具体地说,涉及针对区块链与传统数据库融合的数据交易系统及方法。
背景技术
现有的数据交易平台构建于底层的数据库技术之上,按照去中心化的程度,可以将现有的数据库大体上分为传统数据库和区块链数据库。这里的传统数据库也将传统的分布式数据库涵盖在内,因为传统的分布式数据库采用分库分表的方式,对于同一份数据内容,依然采用的是中心化管理的方式。
从数据库系统的安全特性角度来讲,数据安全性和数据完整性一直是传统数据库难以彻底解决的问题。传统的数据交易平台是将数据存储在中心化的数据库中,在安全性和完整性方面,存在受到恶意入侵或意外宕机导致的单点失效问题和数据记录泄露或被篡改的问题;另外在版权保护方面,存在着由于数据的可复制性而导致的数据易被滥用的问题。中心化的数据平台中数据泄露事件频出,就连苹果macOS这样闭源的系统数据库都出现过信息泄露问题,那么无论是对国家、商业还是个人的敏感信息,若采用传统数据库就要承担着很大的风险。
区块链的架构是一种分布式、去中心化的计算与存储架构。区块链网络上对等的节点分布式共享相同的数据,即账本。没有中心化机构控制,而是由全网节点协作完成交易数据的验证和存储。基于区块链的数据库系统可以有效地解决数据的安全性问题,对于单一节点的攻击并不会对区块链中存储的数据造成破坏,高冗余的存储机制也可以保证数据的完整性。但是纯粹的区块链数据交易平台在数据机密性要求高和数据量庞大的应用场景中存在局限。纯粹的区块链数据库系统,是通过牺牲机密性来保全完整性,所有的区块链网络节点维护相同的数据内容,尽管不可篡改,但每个节点都知道数据的内容,这适合溯源信息、公证版权等场景,但不适用于存储如医疗数据等带有机密性质不适合公开的数据;况且将所有的数据都存在链上,若数据信息的内容庞大,则会消耗巨大的存储空间,同步时间也会十分漫长。
因此,受制于传统数据库和区块链数据库性质带来的局限,仅仅着手于改进现有的传统数据库技术或者直接利用区块链数据库是无法很好地满足数据交易平台需要的数据安全性、完整性、机密性、版权保护和高效运行的要求。
综上所述,基于传统数据库的中心化数据交易平台,主要存在以下几方面的问题:
在安全性和完整性方面:存在单点失效问题,当负责提供服务的管理中心遇到了宕机等故障后,会使整个网络的交易陷入停滞。基于传统数据库的中心化数据交易平台更易遭受到恶意攻击,平台中有大量的敏感信息,承担着被入侵后数据遭到泄露的风险。在更极端的情况下,会出现本地数据损坏、数据严重丢失。另外,基于传统数据库的中心化数据交易平台经常会出现由于一些内部失误、人情世故或互联网商业行为等原因导致的数据泄露。
在版权保护方面:由于数据的可复制性,将数据交给其他人使用,其实就相当于把数据的归属权交了出去。在云计算时代来临之前,大多数的商业模式倾向于自己管理自己的数据,在仅用于内部共享的场景下,这样做是相对安全的,但仍然存在将数据与他人共享后,数据会被二次滥用的问题。云计算的大规模应用后,维护数据的成本得到降低,但数据托管存储在了第三方的云服务上,这使得连最基本的内部信任都无法保证数据的安全。况且无论是什么场景,当需要将数据作为资源进行共享和交易时,基于传统数据库的中心化数据交易平台难以掌握数据的后续流向。
在具体的应用场景中,敏感数据的内容及交易信息都是需要被保密的,这就需要所使用的数据交易平台具有安全到足以令人信任的保密机制。现在看来,所有的数据记录被单纯放进机构运营的中心化信息数据库或拿到中心化的数据交易平台上,已经不再是可行稳妥的选择。在当前互联网与计算机技术快速发展的时代,网络安全的发展速度相比于其他信息技术发展有相对滞后性,泄密与爆料不再是低概率、难度大的事情。
基于互联网社会中人与人之间个人信用的缺乏,利用区块链技术可以说是现在能想到唯一的也是最适合的数据保护解决方案。但是数据内容直接上链的纯粹链上存储方式也存在着较大的应用场景局限性,单纯将数据内容直接上链记录或参与交易,数据在LevelDB等数据库中以键值对的形式存储,区块链网络中各个节点都将同步一份数据备份在本地,每个节点可以通过区块链客户端对数据进行基本操作,但这是一种牺牲数据机密性来保全数据完整性的极端做法,在实际应用的场景中是与对数据机密性的要求相违背的,它就是保证所有人都维护同一份数据,并且这个数据不会被大家篡改。也就相当于说,把这个数据给每一个人都分一份,大家都存一份,所有人都知道这个数据到底是什么样子,让大家达成共识。而且数据的大小也不可忽视,链上存储会造成极大的空间冗余和同步数据的压力,在数据内容上链的过程中也会十分占用时间,影响其他事务的执行。
有研究者提出了利用公私钥验证身份来进行数据资产交易,但没有利用链上链下相结合的方式,依然存在数据安全和版权保护等问题。还有一些研究者提出通过私钥加密和摘要算法实现版权证明,但也没有利用链上链下相结合的方式,存在数据安全等问题。也有研究者提出以实现实体组织间数据共享为目的,将原始数据上传至本地区块链,加密后的数据上传到实体组织间的共享区块链,但没有做数据资产的交易,且庞大的共享数据可能会影响系统的性能;或者为了存储数据的安全和完整以及一定程度上的去中心化,采用了区块链和传统数据库的结合,但没有做数据资产的交易,无法提供数据机密性和版权保护等功能。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种将区块链和传统数据库融合的数据交易系统及方法。
根据本发明的第一方面,提供一种数据交易系统,所述数据交易系统包括多个实体组织,每个实体组织包括记账节点,其中一个或多个实体组织还包括数据库节点,所述每个记账节点至少包括区块链层,所述每个数据库节点包括区块链层、权限准入层和传统数据库层,其中:所有区块链层维护一条共同的区块链,所述区块链层用于发布数据资源、数据访问权限的链上交易以及数据访问记录的日志管理;所述权限准入层用于根据区块链上信息,通过身份认证的方式控制访客身份的实体组织对其所在数据库节点的原始数据的访问;所述传统数据库层用于存储其所在数据库节点的原始数据。
优选的,所述区块链层配置有智能合约,所述实体组织被配置为通过其对应区块链层将自身持有的原始数据的摘要信息以明文、访问权限经过自己的公钥加密后发布在区块链上。所述每个实体组织被配置为完成链上交易后以获取其他实体组织所存储的原始数据的访问权限,其中,所述链上交易包括链上数据交易、链上数据权限交易,其中:链上交易是指实体组织通过链上交易获得另一个实体组织所存储的原始数据的访问权限;链上数据权限交易是指实体组织通过链上交易将已获得的另一个实体组织所存储的原始数据的访问权限转让给第三方实体组织。
优选的,所述每一个数据库节点通过其对应区块链层实时同步链上交易信息,并为其存储的原始数据维护一个具有访问该原始数据权限的实体组织所对应的用户列表,每个数据库节点的权限准入层基于数据库节点对应的用户列表对访客身份的实体组织进行身份认证。
根据本发明的第二方面,提供一种基于本发明第一方面所述的数据交易系统的数据交易方法,包括:实体组织将自身的数据库节点存储的非共享原始数据的摘要以明文、访问权限通过区块链层用自身的公钥进行加密后发布到链上;响应于数据交易的需求,作为数据持有方的实体组织用自身的私钥解密其数据库节点存储的原始数据,并用作为访客的实体组织的公钥加密该原始数据的访问权限后将交易发布到链上;在区块链上完成数据交易;作为数据持有方的实体组织的数据库节点实时同步链上交易信息,并为其存储的原始数据维护一个具有访问该原始数据权限的实体组织所对应的用户列表,将作为访客的实体组织加入具有其原始数据访问权限的用户列表中;作为访客的实体组织用私钥解密数据持有方的实体组织存储的原始数据的访问权限以访问原始数据,作为数据持有方的实体组织的数据库节点基于用户列表对作为访客的实体组织进行身份验证以确定是否准许访问。
在本发明的一些实施例中,所述交易方法还包括:响应于数据权限交易的需求,作为访客的实体组织将其拥有的对数据持有方的实体组织存储的原始数据的访问权限转让给第三方的实体组织组织;作为访客的实体组织用自己的私钥解密出数据持有方的实体组织的原始数据,并用第三方的实体组织的公钥加密该原始数据的访问权限,将数据权限交易发布到区块链上;在区块链上完成数据权限交易;作为数据持有方的实体组织的数据库节点实时同步链上交易信息,将作为访客的实体组织从具有其原始数据访问权限的用户列表删除,将第三方的实体组织加入具有其原始数据访问权限的用户列表中;第三方的实体组织组织用私钥解密数据持有方的实体组织存储的原始数据的访问权限以访问原始数据,作为数据持有方的实体组织的数据库节点基于用户列表对第三方的实体组织进行身份验证以确定是否准许访问。
在本发明的一些实施例中,所述交易方法还包括:实体组织将自身的数据库节点存储的共享原始数据的摘要信息和访问途径通过明文发布到链上;响应于数据访问的请求,作为访客身份的实体组织用私钥将对共享数据的访问信息签名后发布到区块链上作为访问日志;区块链中的节点通过访客身份的实体组织的公钥验证访问日志;作为数据持有方的实体组织实时同步链上日志信息,并为其存储的共享数据维护一个访问该数据的访问日志有效期列表,在日志有效期列表中添加访客身份的实体组织访问该数据的有效期;访客身份的实体组织向共享数据发起访问,拥有该共享数据的实体组织基于其日志有效期列表对访客身份的实体组织进行身份验证,验证通过后允许访问。
与现有技术相比,本发明的优点在于:本发明提出的区块链与传统数据库融合的数据交易系统架构可以同时保证数据的安全性、完整性、机密性、版权保护和性能,本发明提出的不同场景的应用方案,分别适用于不同数据权限要求的应用场景,若数据资源在参与记账的实体组织之间需要隐私保护、严格的权限准入,则数据访问权限作为资产在链上流通的方案更加合适;若数据资源在参与记账的实体组织之间可以自由查看、无需严格的隐私保护,则仅记录访问日志的方案更加合适。至此,本发明提出的数据交易系统架构和具体方案巧妙地解决了前文提到的当前基于传统数据库和纯粹基于区块链的数据交易平台中存在的问题。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1为根据本发明实施例的一种数据交易系统抽象结构示意图;
图2为根据本发明实施例的一种数据交易系统拓扑示例示意图;
图3为根据本发明实施例的一种数据交易方法的非共享数据交易流程示意图;
图4为根据本发明实施例的一种数据交易方法的非共享数据权限交易流程示意图;
图5为为根据本发明实施例的一种数据交易方法的共享数据访问流程示意图。
具体实施方式
为了使本发明的目的,技术方案及优点更加清楚明白,以下通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
发明人在进行数据管理技术研究时发现,传统的中心化数据交易平台存在安全和版权上的问题,而利用区块链技术可以弥补这些缺憾。然而现有的方案多是:继续沿用传统数据库并加入更多的保护机制,却难以彻底解决问题;或者直接利用基于区块链的数据库,却因为区块链技术的高透明和高冗余性不能适用于普遍的应用场景;只有少数的方案研究区块链结合传统数据库,但尚未有考虑数据交易的场景,且方案不算成熟,仍有系统的薄弱之处。主要存在的问题包括以下4个方面:
1)传统数据库的安全性和完整性问题:这是传统数据库的固有问题,即使加入更多的保护机制或是利用分布式存储,都只能在一定程度上增加出错的难度,而不能真正地解决问题。但在传统的数据库基础上加上区块链的技术性质,就可以保证数据的安全和完整。
2)传统数据库的版权保护问题:版权保护问题在数据库的层次上就是数据确权问题。由于数据特有的可复制性,在传统的中心化数据交易平台中,数据的交易本质上是数据的复制而非转让。当数据交易给了另一方后,数据原始所有者无法追踪或控制数据后续的流转,这就会导致经过交易了的数据再次流入市场挤兑数据原始所有者的市场份额。这种危害是任何一个原创作者或版权所有者不愿意见到的。同样在传统的数据库基础上加上区块链的技术性质,将数据在链上资产化,数据交易就可以像实物交易一样无法重复买卖,解决版权保护问题。
3)区块链系统高透明带来的机密性问题:通常的区块链系统中,每个网络记账节点存储着所有的交易记录,并可以访问。利用这样系统来做数据存储,意味着每一份数据也是对所有的节点透明公开。在很多应用场景中,这样的特性是不可接受的,因此需要设计出将可共享的数据上链,而需要保证机密性的数据在链下存储的方案。
4)区块链系统高冗余带来的性能问题:同样,区块链系统中每个记账节点都维护着同样的数据备份,这是区块链的高冗余特性,用来保证数据的安全性和完整性。但若数据的原始内容庞大,直接上链存储就会造成极大的存储消耗,且各节点同步过程也会十分漫长,严重影响系统的性能。这就需要对数据进行选择性上链,同时尽量不牺牲数据的安全性和完整性。
发明人经过对现有区块链技术和数据管理技术的研究,提出一种区块链与传统数据库融合的数据交易平台架构和具体方案,将区块链与传统数据库的技术优势相结合,解决目前存在的问题。新的方案的架构中,上层是区块链网络,保证数据交易信息的安全和完整,并结合权限准入机制解决数据的版权保护;下层是传统数据库技术,各参与方持有自己的原始数据,保证数据的机密性,并解决纯区块链系统高冗余带来的性能问题。
本发明的目的在于,为了解决基于传统数据库的数据交易平台的安全性、完整性和版权保护问题,利用区块链技术的性质,设计出一种区块链和传统数据库融合的数据交易平台架构以区块链为上层,保证数据交易信息的安全和完整,结合权限准入机制解决数据的版权保护,以传统数据库为下层,参与方持有自己的数据,保证数据的机密性,同时避免所有数据内容上链造成性能损失。
根据本发明的一个实施例,本发明提供一种数据交易系统,所述数据交易系统包括多个实体组织,每个实体组织包括记账节点、数据库节点,其中,所述每个记账节点至少包括区块链层,所述每个数据库节点包括区块链层、权限准入层和传统数据库层。如图1所示,从网络架构角度来看,数据交易系统可以抽象为由区块链层、权限准入层、传统数据库层组成的三层架构,其中,区块链层用于实体组织组织发布数据资源以及数据访问权限的链上交易或是数据访问记录的日志管理;权限准入层通过即时获取链上信息,通过身份认证来控制访客对数据的访问;底层的传统数据库层用于存储原始的数据内容,经过权限准入层放行后,访客可以访问相应数据。这样的设计是因为现在更多的应用场景是需要带有权限准入的数据交易平台,为了能够保证数据的安全、完整以及版权保护,通过链上和链下相结合的方式,数据的拥有者可以将数据依然存储在本地,而非统一上传到一个第三方托管的中心化数据库,在链上记录数据的访问信息或交易访问权限来实现数据的资产化和节约链上存储空间,本地数据库监听链上的事件来决定是否准许数据的访问。由此可见,所有的区块链层共同维护一条区块链,区块链层运行在系统中的所有节点,包括记账节点和数据库节点,区块链层涉及到发布数据、数据权限交易、日志管理等功能,在不同的应用场景中,具体实现方式不同,例如,对于隐私性需要加密的非共享数据资源,通过区块链层将数据访问权限上链用于交易,对于不需要加密的共享数据,将数据访问记录上链用于记录。下面对区块链层、权限准入层、传统数据库层进行详细功能说明。
一、区块链层:发布数据、数据权限交易、日志管理:
发布数据:在不同的应用场景中,发布数据的实现方式较为不同。对于免费的可共享数据,将数据访问记录用于上链记录里,拥有共享数据的实体组织可以将数据的摘要信息和访问途径以明文的形式公布到区块链上,每个参与方(实体组织)都可以直接根据访问途径去持有方的数据库获得数据真实内容。对于用于交易的非共享数据,数据的持有方可以将数据的摘要信息以明文但访问权限经过加密公布到区块链上,其他参与方可以查看数据的摘要信息,但未经交易就无法获取数据内容。其中,对于可共享的数据资源,数据访问记录用于上链记录,
数据权限交易:数据权限交易主要针对非共享数据的应用场景,数据访问权限上链用于交易。该场景中,每一笔数据的交易需要严格的审计过程,购买方可以向数据的持有方购买数据,交易过后数据的访问方式经过解密可以被购买方查看。同时数据在链上被资产化后,可以通过智能合约保证数据资产在链上的不可复制性,即购买方无法将数据资产转卖给第三方的同时还保留着数据资产。
日志管理:日志管理适用于非共享数据的数据访问记录上链用于记录。该场景中,数据内容都可以共享给其他实体组织访问,在链上记录访问的日志用于后续追溯结算。购买方将要访问某数据的消息发布到链上作为访问日志,数据的持有方的数据库节点及时同步链上信息,准许访问日志有效时间范围内的实体组织访问数据。在超出有效时间后,购买方需要再次在链上记录访问日志以再次访问数据内容。
二、权限准入层:权限准入层存在于数据的持有方的运行本地数据库的节点,主要完成访问控制这一基本功能。
访问控制:访问控制是通过检测链上的事件,为每一个发布的数据资源及时维护一个准许访问的实体组织列表(也叫用户列表)。访问控制的存在,可以进一步地确保数据的不可复制性,避免数据访问权限在链下被转交给其他实体组织造成数据易被滥用的问题。
三、传统数据库层:传统数据库层运行于数据的持有方控制的数据库节点,主要完成数据存储这一基本功能。
数据存储:各实体组织存储数据的原始内容,其他实体组织可以通过链上获得的访问途径或访问权限访问数据内容。
由上述实施例可知,对于不同应用场景的数据资源,数据的发布和数据权限交易等有区别,下面针对不同的数据资源分别对区块链层、权限准入层、传统数据库层的工作原理进行说明:
第一、非共享数据资源:在区块链上,将数据的访问权限代替数据内容本身上链,并作为数字资产用于交易,数据不可以随意被访问,实现对各实体组织访问数据做严格的控制。
其中,区块链层采用联盟链架构,实体组织隶属于不同的组织,每个组织中有仅负责记账的节点,也有运行本地数据库的节点。仅负责记账的节点可以仅有区块链层;运行本地数据库的节点还需要有权限准入层和传统数据库层。由于传统数据库层负责存储原始的数据内容,且隶属于各个实体组织,对于各个实体组织来说它是中心化的数据库,因此安全起见应该同时为本地数据库做异地备份来保证数据的安全和完整。在该场景中,区块链层运行在网络中所有节点(记账节点、本地数据库节点等),主要包括发布资源和数据权限交易两项基本功能,其中,数据的持有方同时将数据的摘要信息以明文、访问权限经过自己的公钥加密后发布在区块链上,其他参与方可以查看数据的摘要信息,但没有数据持有方的私钥无法直接获得数据访问权限。这样就算每一个网络节点都要同步区块存储到本地,但也无法解密得知数据访问权限的真实内容,保护了数据访问权限在区块链系统中的机密性。数据访问权限在链上进行交易时,数据的持有方先用自己的私钥解密出数据访问权限,然后用购买方的公钥加密得到加密后的数据访问权限。加密后的数据访问权限只有拥有购买方的私钥才能解密出真实的数据访问权限进而访问数据的真实内容。同时购买方将链上的代币等资产转移给数据的持有方,完成一笔完整的交易。数据在链上资产化后,通过智能合约可以保证数据资产在链上的不可复制性,具体来说,其他的实体组织在向已购买的实体组织购买数据权限时,数据权限是一个转让而非复制的过程。
权限准入层运行在本地数据库节点,主要包括访问控制这一基本功能,当购买方通过自己的私钥获得了数据的访问权限后,这笔交易也被同步到了区块链网络上各个节点。数据的原始持有方所在实体组织的本地数据库节点实时同步链上的交易信息,维护一个当前拥有该数据资源访问权限的用户列表。交易成功后,向该数据资源的允许访问用户列表中添加购买方。在购买方通过获得的数据访问权限来访问数据时,权限准入层的访问控制功能将查询该数据资源的允许访问用户列表核实访客的身份来决定是否允许访问数据内容。由于权限准入层的存在,就算已购买的实体组织将数据访问权限泄露给其他实体组织,其他实体组织能找到数据位置,但依然不能通过数据原始持有方的权限准入层的访问控制,避免了数据的可复制性导致的数据易被滥用的问题。
传统数据库层运行在本地数据库节点,主要包括数据存储这一基本功能。各实体组织存储数据的原始内容,经过权限准入层访问控制的访客可以访问数据内容。
根据本发明的一个示例,如图2所示,一个数据交易系统的拓扑结构示意图,其中,区块链层采用联盟链的架构,A、B、C分别是一个实体组织,节点A1、A2、A3隶属于实体组织A,节点B1、B2隶属于实体组织B,节点C1、C2、C3隶属于实体组织C,其中,实体组织中有仅负责记账的节点,如A1、A3、B1、B2、C1,也有运行本地数据库的节点,如A2、C2、C3,本地数据库节点实时同步链上信息。本地数据库依然是中心化数据库,安全起见应做异地备份,如C2、C3间完全同步。
以实体组织B中的节点B1访问实体组织A数据库中的非数据资源S为例,说明数据交易的过程,如图3所示,包括如下步骤:
F1、A组织的记账节点A1对数据库中资源S的访问权限P通过A1自己的公钥PublicKeyA1进行加密,然后发布到链上;
F2、链上的其他节点同步数据资源S的发布信息;
F3、实体组织B中的节点B1查看到数据资源S的发布信息后欲向A1购买;
F4、资源S的访问权限P在链上进行交易时,A1先用自己的私钥PrivateKeyA1解密出原始数据的访问权限P,然后用B1的公钥PublicKeyB1对访问权限P进行加密,再发布到链上;当这笔交易被同步到各个网络节点后,只有B1可以用他的私钥PrivateKeyB1解密查看数据的真实访问权限;
F5、节点A2的数据库实时同步链上的交易信息,维护一个当前拥有资源S访问权的用户列表。交易成功后,向资源S的允许访问用户列表中添加B1;
F6、有用户对资源S发起访问时,判断是否是B1解密加密后的访问权限P,如果是,B1获得资源S的访问权限P,如果不是,其他实体无法解密得到资源S的访问权限;
F7、当A2节点收到对资源S的访问请求时,判断是否是B1通过数据访问权限P找到数据资源S,如果是,节点A2的数据库查验资源S的允许访问列表中有B1后准许B1访问,如果不是,节点A2的数据库查验资源S的允许访问列表中无来访实体,不允许访问。
通过以上流程,实现数据的持有方发布数据,购买方交易得到数据访问权限并访问数据原始内容,能够保证数据的安全性、完整性、机密性和系统性能。
以实体组织B的B2购买了实体组织A的数据库中资源S的访问权限后,C组织的节点C1向B1购买实体组织A的数据库中资源S的访问权限为例说明数据访问权限上链用于交易的过程,如图4所示,包括如下步骤:
Z1、实体组织C中的节点C1欲向B1购买A2数据库中资源S的访问权限;
Z2、节点B1先用自己的私钥PrivateKeyB1解密出原始数据的访问权限P,然后用C1的公钥PublicKeyC1对原始数据的访问权限P进行加密,再发布到链上;
Z3、节点A2的数据库实时同步链上的交易信息,维护一个当前拥有资源S访问权的用户列表,交易成功后,向资源S的允许访问列表中删除B1并添加C1;
Z4、节点C1访问资源S时,首先通过数据访问权限P找到数据资源S,A2的数据库收到资源S的访问请求时,判断是否是C1解密了加密后的访问权限,如果不是,其他实体(包括B1)无法解密得到资源S的访问权限,因为此时资源S的访问列表中已经没有了B1;如果是,C1获得资源S的访问权限;
Z5、C1通过数据访问权限P找到数据资源S,A2的数据判断C1是否是通过数据访问权限P找到数据资源S,如果是,节点A2的数据库查验资源S的允许访问列表中有C1后准许C1访问,如果不是,节点A2的数据库查验资源S的允许访问列表中无来访实体,不允许访问。
通过以上流程,实现了同一数据资源在多次交易过程中的版权保护,并可实现链上追溯。
第二、共享数据资源:将数据访问记录上链用于记录,适用于数据资源在参与记账的实体组织之间可以自由查看、无需严格的隐私保护的业务场景。在链上,将访问数据的日志信息上链,日志用于追溯访问记录,并依此核算收益。所有数据内容可以共享给其他实体组织查看,因此不需要对各实体组织访问数据做严格的控制。
其中,该场景中的区块链层依然采用联盟链架构,实体组织隶属于不同的组织,每个组织中有仅负责记账的节点,也有运行本地数据库的节点。仅负责记账的节点可以仅有区块链层;运行本地数据库的节点还需要有权限准入层和传统数据库层。由于传统数据库层负责存储原始的数据内容,且隶属于各个实体组织,对于各个实体组织来说它是中心化的数据库,因此安全起见应该同时为本地数据库做异地备份来保证数据的安全和完整。区块链层运行在网络中所有节点(记账节点、本地数据库节点等),主要包括发布资源和日志管理两项基本功能,其中,数据均为可共享的数据,数据的持有方将数据的摘要信息和访问途径无需加密,以明文的形式发布在区块链上。数据的摘要信息和访问途径在链上仅用于供其他实体组织查找已发布的数据资源信息。购买方用自己的私钥对“访问某数据资源;时间戳”的消息进行签名发布到链上作为访问日志,区块链网络中节点可以通过购买方的公钥验证该日志就是购买方自己发出的,不会出现冒名顶替的情况。由于区块链不可篡改的技术特性,各实体组织可以按照日志信息溯源访问记录并核算实体组织间的收益。
权限准入层运行在本地数据库节点,主要包括访问控制这一基本功能,当购买方在链上发布访问日志后,这条日志信息也被同步到了区块链网络上各个节点。数据的原始持有方所在组织的本地数据库节点实时同步链上的日志信息,维护一个该数据资源的访问日志有效期列表,验证链上日志成功后,向该数据资源的访问日志列表中添加该购买方访问该数据资源的有效期。到期后,该购买方需要再次经过链上共识,才可以访问该数据资源。在购买方在日志的有效期内来访问数据时,权限准入层的访问控制功能将查询该数据资源的访问日志有效期列表核实访客的身份来决定是否允许访问数据内容。
传统数据库层运行在本地数据库节点,主要包括数据存储这一基本功能。各实体组织存储数据的原始内容,经过权限准入层访问控制的访客可以访问数据内容。
仍旧参考图2中的示例,假设实体组织A中的数据资源S为共享数据以实体组织B中的节点B1访问数据资源S为例为例,说明数据访问记录上链的过程,如图5所示,包括如下步骤:
S1、实体组织A中的节点A1将数据库中资源S的摘要及访问途径P发布到链上,这些信息无需加密,均是明文,P在链上仅用于供其他用户查找已发布资源的信息;
S2、链上其他节点同步数据资源S的发布信息;
S3、实体组织B的节点B1查看到数据资源S的发布信息后预访问S;
S4、节点B1用自己的私钥PrivateKeyB1对“B1访问资源S;时间戳”这一日志签名并发布到链上;
S5、节点A2点的数据库实时同步链上的日志信息,维护一个资源S访问日志的有效期列表。验证链上日志成功后,向资源S的访问日志列表中添加B1访问资源S的有效期,到期后,B1需要再次经过链上共识,才可以访问资源S;
S6、节点A2收到对数据资源S的访问请求时,判断是否是B1访问数据资源S,如果不是,由于其他实体组织不存在数据资源S的访问列表,不准许访问;如果是,判断B1是否在访问数据资源S的日志有效期内,如果是,A2节点的数据库查验数据资源S的访问日志列表中有B1且在有效期内后准许B1访问,如果不是,A2节点的数据库查验数据资源S的访问日志列表中有B1但超出有效期内,不准许访问。
通过以上流程,实现数据的持有方发布数据,购买方在链上公布访问日志并访问数据原始内容,能够保证数据的安全性、完整性、机密性、版权保护和系统性能。
当前普遍的数据交易平台,可大体上分为将数据存储在中心化数据库中的传统的数据交易平台和将数据存储在区块链上的纯粹基于区块链的数据交易平台。前者存在数据内容安全性、完整性和版权保护的问题,后者存在数据内容机密性和大量数据存储在链上带来的性能问题。相关研究工作主要集中在数据存储、数据安全、数据共享等方向,但缺少区块链与传统数据库融合的数据交易方案的研究。实际上,基于传统数据库和基于区块链的数据交易平台各自存在的问题可以通过技术融合的方式各取所长,基于本发明提出的区块链与传统数据库融合的数据交易系统架构可以同时保证数据的安全性、完整性、机密性、版权保护和性能,本发明提出的不同场景的应用方案,分别适用于不同数据权限要求的应用场景,若数据资源在参与记账的实体组织之间需要隐私保护、严格的权限准入,则数据访问权限作为资产在链上流通的方案更加合适;若数据资源在参与记账的实体组织之间可以自由查看、无需严格的隐私保护,则仅记录访问日志的方案更加合适。至此,本发明提出的数据交易系统架构和具体方案巧妙地解决了前文提到的当前基于传统数据库和纯粹基于区块链的数据交易平台中存在的问题。
需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种数据交易系统,其特征在于,所述数据交易系统包括多个实体组织,每个实体组织包括记账节点,其中一个或多个实体组织还包括数据库节点,所述每个记账节点至少包括区块链层,所述每个数据库节点包括区块链层、权限准入层和传统数据库层,其中:
所有区块链层维护一条共同的区块链,所述区块链层用于发布数据资源、数据访问权限的链上交易以及数据访问记录的日志管理;
所述权限准入层用于根据区块链上信息,通过身份认证的方式控制访客身份的实体组织对其所在数据库节点的原始数据的访问;
所述传统数据库层用于存储其所在数据库节点的原始数据。
2.根据权利要求1所述的一种数据交易系统,其特征在于,所述区块链层配置有智能合约,所述实体组织被配置为通过其对应区块链层将自身持有的原始数据的摘要信息以明文、访问权限经过自己的公钥加密后发布在区块链上。
3.根据权利要求1所述的一种数据交易系统,其特征在于,所述每个实体组织被配置为完成链上交易后以获取其他实体组织所存储的原始数据的访问权限。
4.根据权利要求3所述的一种数据交易系统,其特征在于,所述链上交易包括链上数据交易、链上数据权限交易,其中:
链上交易是指实体组织通过链上交易获得另一个实体组织所存储的原始数据的访问权限;
链上数据权限交易是指实体组织通过链上交易将已获得的另一个实体组织所存储的原始数据的访问权限转让给第三方实体组织。
5.根据权利要求1所述的一种数据交易系统,其特征在于,
所述每一个数据库节点通过其对应区块链层实时同步链上交易信息,并为其存储的原始数据维护一个具有访问该原始数据权限的实体组织所对应的用户列表,每个数据库节点的权限准入层基于数据库节点对应的用户列表对访客身份的实体组织进行身份认证。
6.一种基于权利要求1至5任一所述的数据交易系统的数据交易方法,其特征在于,包括:
实体组织将自身的数据库节点存储的非共享原始数据的摘要以明文、访问权限通过区块链层用自身的公钥进行加密后发布到链上;
响应于数据交易的需求,作为数据持有方的实体组织用自身的私钥解密其数据库节点存储的原始数据,并用作为访客的实体组织的公钥加密该原始数据的访问权限后将交易发布到链上;
在区块链上完成数据交易;
作为数据持有方的实体组织的数据库节点实时同步链上交易信息,并为其存储的原始数据维护一个具有访问该原始数据权限的实体组织所对应的用户列表,将作为访客的实体组织加入具有其原始数据访问权限的用户列表中;
作为访客的实体组织用私钥解密数据持有方的实体组织存储的原始数据的访问权限以访问原始数据,作为数据持有方的实体组织的数据库节点基于用户列表对作为访客的实体组织进行身份验证以确定是否准许访问。
7.根据权利要求6所述的一种数据交易方法,其特征在于,所述交易方法还包括:
响应于数据权限交易的需求,作为访客的实体组织将其拥有的对数据持有方的实体组织存储的原始数据的访问权限转让给第三方的实体组织组织;
作为访客的实体组织用自己的私钥解密出数据持有方的实体组织的原始数据,并用第三方的实体组织的公钥加密该原始数据的访问权限,将数据权限交易发布到区块链上;
在区块链上完成数据权限交易;
作为数据持有方的实体组织的数据库节点实时同步链上交易信息,将作为访客的实体组织从具有其原始数据访问权限的用户列表删除,将第三方的实体组织加入具有其原始数据访问权限的用户列表中;
第三方的实体组织组织用私钥解密数据持有方的实体组织存储的原始数据的访问权限以访问原始数据,作为数据持有方的实体组织的数据库节点基于用户列表对第三方的实体组织进行身份验证以确定是否准许访问。
8.根据权利要求6所述的一种数据交易方法,其特征在于,所述交易方法还包括:
实体组织将自身的数据库节点存储的共享原始数据的摘要信息和访问途径通过明文发布到链上;
响应于数据访问的请求,作为访客身份的实体组织用私钥将对共享数据的访问信息签名后发布到区块链上作为访问日志;
区块链中的节点通过访客身份的实体组织的公钥验证访问日志;
作为数据持有方的实体组织实时同步链上日志信息,并为其存储的共享数据维护一个访问该数据的访问日志有效期列表,在日志有效期列表中添加访客身份的实体组织访问该数据的有效期;
访客身份的实体组织向共享数据发起访问,拥有该共享数据的实体组织基于其日志有效期列表对访客身份的实体组织进行身份验证,验证通过后允许访问。
9.一种计算机可读存储介质,其特征在于,其上包含有计算机程序,所述计算机程序可被处理器执行以实现权利要求6至8任一所述方法的步骤。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求6至8中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011575592.1A CN112732829B (zh) | 2020-12-28 | 2020-12-28 | 一种数据交易系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011575592.1A CN112732829B (zh) | 2020-12-28 | 2020-12-28 | 一种数据交易系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112732829A true CN112732829A (zh) | 2021-04-30 |
CN112732829B CN112732829B (zh) | 2024-01-09 |
Family
ID=75606188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011575592.1A Active CN112732829B (zh) | 2020-12-28 | 2020-12-28 | 一种数据交易系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112732829B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113221174A (zh) * | 2021-05-25 | 2021-08-06 | 成都佰纳瑞信息技术有限公司 | 基于区块链的权属分离数据流通模型、方法、设备和产品 |
CN113572825A (zh) * | 2021-07-09 | 2021-10-29 | 中国科学院计算技术研究所 | 面向中继链跨链架构的接入控制与资源访问控制方法及系统 |
CN116304228A (zh) * | 2023-05-25 | 2023-06-23 | 中国信息通信研究院 | 基于区块链的数据存储方法、装置、设备和介质 |
CN116340366A (zh) * | 2023-05-25 | 2023-06-27 | 中国信息通信研究院 | 基于区块链的数据共享存储方法、装置、设备和介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170213209A1 (en) * | 2016-01-21 | 2017-07-27 | International Business Machines Corporation | Enterprise blockchains and transactional systems |
CN111427869A (zh) * | 2020-04-10 | 2020-07-17 | 科通工业技术(深圳)有限公司 | 一种基于区块链的日志系统 |
CN111612619A (zh) * | 2020-04-29 | 2020-09-01 | 南京邮电大学 | 一种基于区块链的仓储共享平台及仓储交易方法 |
CN112003886A (zh) * | 2020-07-03 | 2020-11-27 | 北京工业大学 | 一种基于区块链的物联网数据共享系统和方法 |
-
2020
- 2020-12-28 CN CN202011575592.1A patent/CN112732829B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170213209A1 (en) * | 2016-01-21 | 2017-07-27 | International Business Machines Corporation | Enterprise blockchains and transactional systems |
CN111427869A (zh) * | 2020-04-10 | 2020-07-17 | 科通工业技术(深圳)有限公司 | 一种基于区块链的日志系统 |
CN111612619A (zh) * | 2020-04-29 | 2020-09-01 | 南京邮电大学 | 一种基于区块链的仓储共享平台及仓储交易方法 |
CN112003886A (zh) * | 2020-07-03 | 2020-11-27 | 北京工业大学 | 一种基于区块链的物联网数据共享系统和方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113221174A (zh) * | 2021-05-25 | 2021-08-06 | 成都佰纳瑞信息技术有限公司 | 基于区块链的权属分离数据流通模型、方法、设备和产品 |
CN113572825A (zh) * | 2021-07-09 | 2021-10-29 | 中国科学院计算技术研究所 | 面向中继链跨链架构的接入控制与资源访问控制方法及系统 |
CN113572825B (zh) * | 2021-07-09 | 2023-03-21 | 中国科学院计算技术研究所 | 面向中继链跨链架构的接入控制与资源访问控制方法及系统 |
CN116304228A (zh) * | 2023-05-25 | 2023-06-23 | 中国信息通信研究院 | 基于区块链的数据存储方法、装置、设备和介质 |
CN116340366A (zh) * | 2023-05-25 | 2023-06-27 | 中国信息通信研究院 | 基于区块链的数据共享存储方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112732829B (zh) | 2024-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108830601B (zh) | 基于区块链的智慧城市信息安全使用方法及系统 | |
CN107766542B (zh) | 一种分区的区块链网络及其实现分区查询的方法 | |
Toth et al. | Self-sovereign digital identity: A paradigm shift for identity | |
EP3962019B1 (en) | Trusted data transmission methods, apparatuses, and devices | |
CN111143872A (zh) | 用于分布式分类账中数据机密性的系统和设备 | |
CN112732829B (zh) | 一种数据交易系统及方法 | |
CN113255005B (zh) | 一种基于区块链的数据资产流转方法、装置及设备 | |
CN111988338B (zh) | 基于区块链的权限可控的物联网云平台及数据交互方法 | |
Vishwa et al. | A blockchain based approach for multimedia privacy protection and provenance | |
KR20210040078A (ko) | 안전한 보관 서비스를 위한 시스템 및 방법 | |
Liu et al. | Design patterns for blockchain-based self-sovereign identity | |
US11405198B2 (en) | System and method for storing and managing keys for signing transactions using key of cluster managed in trusted execution environment | |
CN111814156B (zh) | 一种基于可信设备的数据获取方法、装置及设备 | |
CN111611554B (zh) | 基于联盟区块链的图档文件流转与追溯系统及方法 | |
CN109951490A (zh) | 基于区块链的网页防篡改方法、系统及电子设备 | |
CN115567312B (zh) | 一种可满足多种场景的联盟链数据权限管理系统和方法 | |
Kim et al. | Role‐based Access Control Video Surveillance Mechanism Modeling in Smart Contract Environment | |
AU2018256787B2 (en) | Systems and methods for distributed data mapping | |
Patole et al. | Personal identity on blockchain | |
CN116015619A (zh) | 一种兼顾隐私保护和数据可用性的区块链数据共享协议 | |
Reddy et al. | Framework for privacy preserving credential issuance and verification system using soulbound token | |
Wang et al. | A personal data determination method based on blockchain technology and smart contract | |
Rech et al. | A decentralized service-platform towards cross-domain entitlement handling | |
TWI737139B (zh) | 個人資料保護應用系統與個人資料保護應用方法 | |
Kim et al. | Blockchain-based distributed data management for enhanced data integrity. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |