CN113626523B - 基于did的区块链数据交换方法及*** - Google Patents
基于did的区块链数据交换方法及*** Download PDFInfo
- Publication number
- CN113626523B CN113626523B CN202110910575.7A CN202110910575A CN113626523B CN 113626523 B CN113626523 B CN 113626523B CN 202110910575 A CN202110910575 A CN 202110910575A CN 113626523 B CN113626523 B CN 113626523B
- Authority
- CN
- China
- Prior art keywords
- data
- intelligent contract
- exchange method
- data exchange
- blockchain
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000004458 analytical method Methods 0.000 claims abstract description 19
- 238000000586 desensitisation Methods 0.000 claims description 11
- 238000013475 authorization Methods 0.000 claims description 10
- 238000012795 verification Methods 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 4
- 230000008520 organization Effects 0.000 description 5
- 239000003999 initiator Substances 0.000 description 3
- 238000013499 data model Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- YSCNMFDFYJUPEF-OWOJBTEDSA-N 4,4'-diisothiocyano-trans-stilbene-2,2'-disulfonic acid Chemical compound OS(=O)(=O)C1=CC(N=C=S)=CC=C1\C=C\C1=CC=C(N=C=S)C=C1S(O)(=O)=O YSCNMFDFYJUPEF-OWOJBTEDSA-N 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
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
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于DID的区块链数据交换方法及***。该方法包括:用户使用DID的身份登录区块链智能合约,登录后用户身份记为UserDid;用户UserDid调用智能合约Smart,在智能合约Smart中调用一种分布式SQL脚本;分布式脚本的解析引擎dSQLEnginer解析执行dSQL,解析后获取不同节点的IP地址,不同数据操作节点返回数据nodeData给解析引擎dSQLEnginer,解析引擎合并nodeData数据,返回dataSet给智能合约Smart;智能合约Smart,获取dataSet后,将应用所需数据返回给上层应用。本发明提供的基于DID的区块链数据交换方法及***能够实现在不同组织间,有条件数据共享和计算。
Description
技术领域
本发明涉及区块链技术领域,特别是涉及一种基于DID的区块链数据交换方法及***。
背景技术
目前:区块链上不同节点,不同合约之间数据交换缺乏统一的标准和规范,另外同一个体的数据分布在不同区块链节点上。例如公安局存有个人身份信息,税务局存有个人纳税信息,而学校存有个人的学历证明,银行存有个人的征信,随着国家对个人隐私数据的越来越重视,这些信息是不能在区块链上各个节点共享的,然而在应用中如果需要同时访问这些信息。通常的做法,抽取各个组织***到一个中心数据库,再合并,这样隐私数据很容易集中外泄,也无法定位泄露的责任方;另外基于区块链的数据共享方法,如下:
CN202011403482.7,“基于区块链技术的政务数据交换方法及***”,一文总只是描述了利用智能合约***完成数据交换过程,但是智能合约怎么完成数据交换,数据的组织和交换的形式,以及怎么和多个组织节点交换没有论述。
CN201811376370.X,“基于区块链的数据交换方法及装置“,提出了一种基于区块链的数据交换方法,从区块链上确定目标数据对应的目标区块链标识,根据所述目标区块链标识生成数据交换订单,从区块链上调取订单管理合约及数据合约根据所述数据交换订单创建订单主合约,将所述订单主合约发布至区块链上以使所述目标区块链标识对应的数据提供方对所述订单主合约进行签名;触发所述订单主合约开始执行,以使所述数据提供方将所述目标数据的源数据上传至存储***,并将所述源数据的hash值发布至区块链上;从区块链上获取所述源数据的hash值,并根据所述hash值从所述存储***获取源数据。
触发所述订单主合约开始执行,以使所述数据提供方将所述目标数据的源数据上传至存储***,并将所述源数据的hash值发布至区块链上;从所述区块链上获取所述源数据的hash值,并根据所述hash值从所述存储***获取源数据。在这里原始数据都在存储***中,原始数据的Hash值在区块链上,并不是做的链上数据的共享和计算。
区块链上不同组织(不同节点)数据,在考虑到隐私安全和数据所有权,商业利益下,很大情况下不愿意在节点间共享;即使在考虑到隐私安全,各个组织中同一个用户的账号可能不一致,数据怎么关联,即使关联了怎么很方便的在多组织间进行数据筛选和计算,都是问题。
同一个体,在不同组织产生的区块链数据,在不共享来源,也不集中的情况下,怎么用一种语言统一描述,这些数据从哪里来,以及怎么加工使用,以及如何验证数据的来源的合法性等。如果能达到这种目的,则可以比较方便在不同数据持有方之间做到数据共享和计算。
发明内容
本发明要解决的技术问题是提供一种基于DID的区块链数据交换方法及***,能够实现在不同组织间,有条件数据共享和计算。
为解决上述技术问题,本发明提供了一种基于DID的区块链数据交换方法,所述方法包括:用户使用DID的身份登录区块链智能合约,登录后用户身份记为UserDid;用户UserDid调用智能合约Smart,在智能合约Smart中调用一种分布式SQL脚本;分布式脚本的解析引擎dSQLEnginer解析执行dSQL,解析后获取不同节点的IP地址,以及获得节点上智能合约名称,以及对应数据的Schema,在不同节点上执行,不同数据操作节点返回数据nodeData给解析引擎dSQLEnginer,解析引擎合并nodeData数据,返回dataSet给智能合约Smart;智能合约Smart,获取dataSet后,将应用所需数据返回给上层应用。
在一些实施方式中,DID是一种分布式的身份,能解决区块链上同一用户在不同组织注册的身份不一致的问题。
在一些实施方式中,智能合约平台包含:DSQL解析引擎。
在一些实施方式中,DSQL解析引擎能够解析DSQL的关键字。
在一些实施方式中,关键字包括:操作码和操作数。
在一些实施方式中,凭证中应该包含验证算法,以及凭证对应的DID,以及数据所有者对授权的相关签名,来标识对数据访问的合法使用。
在一些实施方式中,智能合约平台包含:数据脱敏模块。
在一些实施方式中,数据脱敏模块dataSecOpt,此模块可包含零知识证明,同态加密,或者其它加密方法,通过数据脱敏模块能根据需要在数据持有节点上进行数据脱敏操作。
在一些实施方式中,数据脱敏操作作用于DSQL中的操作数上。
此外,本发明还提供了一种基于DID的区块链数据交换***,所述***包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据前文所述的基于DID的区块链数据交换方法。
采用这样的设计后,本发明至少具有以下优点:
按照以上方案,在智能合约中我们可以用一条分布式SQL语句描述和实现在不同组织间,有条件数据共享和计算。
1.满足智能合约开发的简洁性;
2.满足数据的访问都经过数据持有方的授权;
3.满足即使数据被授权,也可以通过数据持有节点的隐私安全操作dataSecOpt来达到一定隐私安全目的;
4.不同组织的数据通过一个公开的Schema来定义数据公开访问方式,来达到数据互操作目的;
5.不同组织的数据访问接口,通过一个公开的智能合约来实现远程调用。
附图说明
上述仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,以下结合附图与具体实施方式对本发明作进一步的详细说明。
图1是方法的原理示意图;
图2是发起方节点的流程图;
图3是被调用方节点的流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
(一)主要流程如下:
1.用户使用DID(Decentralized Identifiers)的身份登陆区块链智能合约,DID是一种分布式的身份,能解决区块链上同一用户在不同组织注册的身份不一致的问题,登陆后用户身份记为UserDid;
2.用户UserDid调用智能合约Smart,在智能合约Smart中调用一种分布式SQL脚本dSQL。
3.分布式脚本的解析引擎dSQLEnginer解析执行dSQL,解析后获取不同节点的IP地址,以及获得节点上智能合约名称,以及对应数据的Schema,在不同节点上执行(如图1node0,node1,node2),不同的节点可能需要数据访问者授权,在验证授权后,执行相关数据操作,此数据操作完成后,在数据操作节点做数据脱敏操作dataSecOpt,不同数据操作节点返回数据nodeData给解析引擎dSQLEnginer,解析引擎合并nodeData数据,返回dataSet给智能合约Smart。
4.智能合约Smart,获取dataSet后,将应用所需数据返回给上层应用。
(二)工作原理部分:
1.对应于以上定义一种分布式的SQL脚本,来对不同组织间数据进行操作。语言包含数据操作语言(DML)和数据定义语言(DDL),以及数据控制语言(DCL)三部分。
数据操作语言(DML):应该包含操作码和操作数和限定操作语句,可包含操作码和操作数的分割符。操作码定义了对数据的操作,操作码可包含***,选择,更新,删除等;操作数定义了数据的来源。操作数应该包含区块链节点编号,节点上智能合约名称或者编号,以及智能合约的数据schema名称或者编号。对于限定操作语句应该包含限定操作的对象的DID以及相关Did的授权凭证Credential,当访问智能合约的对象不具备对此条数据访问权限时,会要求出示相关授权凭证。
例如
Select Encrypt(Person.personNum)Person.Scorts frombankOrg.CreditInqure.Person
Select degree.educationInfo from colledgeOrg.educationInqure.degree
where userDid==“this is the userdid”with Credential=“this is theuser data access credential”;
表明从bankOrg节点的CreditInqure智能合约的名称为Person的Schema中获取加密的个人信息personNum,以及明文的信用评分Scorts,从colledgeOrg节点的educationInqure智能合约的degree的Schema中获取educationInfo个人教育信息,对应的限定操作语句为where…with…语句。限定个人用户的userDid==“this is theuserdid”,对应的userDid的授权凭证Credential为“this is the user data accesscredential”。
这里的Schema可以是SQL型数据库的一个或者多个表,也可以是KV型数据库。对应的did的映射为SQL型数据库的一个主键,或者是映射为KV型数据库的Key的一部分或者索引的一部分。
2.对应于以上智能合约平台,应该包含DSQL解析引擎,即dSQLEnginer,通过它完成对DSQL的解析执行,要求能够解析dSQL的关键字,如操作码和操作数等,能将不同节点的名称解析为不同的节点的IP地址,将DSQL路由到相关区块链节点上对应的智能合约上远程执行。
3.对应于以上智能合约平台,其中DSQL的语句中的授权凭证Credential,应该能被远程执行的区块链节点验证。Credential中应该包含验证算法,以及Credential对应的did,以及数据所有者对授权的相关签名,来标识对数据访问的合法使用。例如:对于凭证credential的赋值“this is the user data access credential“,实现上可以参考Verifiable Credentials Data Model模型的实现(https://w3c.github.io/vc-data-model/#credentials)
4.对应于以上智能合约平台,应该包含数据脱敏模块dataSecOpt,此模块可包含零知识证明,同态加密,或者其它加密方法,通过数据脱敏模块能根据需要在数据持有节点上进行数据脱敏操作。数据脱敏操作作用于DSQL中的操作数上。
5.对应于以上智能合约平台,作为DSQL的发起方,解析引擎dSQLEnginer,只解析执行本节点相关的语句,非本节点的语句发起相关DSQL语句的远程调用到相对应节点程序。最后DSQL的发起方的dSQLEnginer将各个节点返回的nodeData汇总为dataSet返回给智能合约。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,本领域技术人员利用上述揭示的技术内容做出些许简单修改、等同变化或修饰,均落在本发明的保护范围内。
Claims (8)
1.一种基于DID的区块链数据交换方法,其特征在于,包括:
用户使用DID的身份登录区块链智能合约,登录后用户身份记为UserDid;
用户UserDid调用智能合约Smart,在智能合约Smart中调用一种分布式SQL脚本;
分布式脚本的解析引擎dSQLEnginer解析执行dSQL,解析后获取不同节点的IP地址,以及获得节点上智能合约名称,以及对应数据的Schema,在不同节点上执行,不同数据操作节点返回数据nodeData给解析引擎dSQLEnginer,解析引擎合并nodeData数据,返回dataSet给智能合约Smart;其中,DSQL的语句中包含能被远程执行的区块链节点验证的授权凭证;所述凭证中包含验证算法,以及凭证对应的DID,以及数据所有者对授权的相关签名,来标识对数据访问的合法使用;
智能合约Smart,获取dataSet后,将应用所需数据返回给上层应用;智能合约平台包含:数据脱敏模块。
2.根据权利要求1所述的基于DID的区块链数据交换方法,其特征在于,DID是一种分布式的身份,能解决区块链上同一用户在不同组织注册的身份不一致的问题。
3.根据权利要求1所述的基于DID的区块链数据交换方法,其特征在于,智能合约平台包含:DSQL解析引擎。
4.根据权利要求3所述的基于DID的区块链数据交换方法,其特征在于,DSQL解析引擎能够解析DSQL的关键字。
5.根据权利要求4所述的基于DID的区块链数据交换方法,其特征在于,关键字包括:操作码和操作数。
6.根据权利要求1所述的基于DID的区块链数据交换方法,其特征在于,数据脱敏模块dataSecOpt,此模块包含零知识证明,同态加密,通过数据脱敏模块能根据需要在数据持有节点上进行数据脱敏操作。
7.根据权利要求1所述的基于DID的区块链数据交换方法,其特征在于,数据脱敏操作作用于DSQL中的操作数上。
8.一种基于DID的区块链数据交换***,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求1至7任意一项所述的基于DID的区块链数据交换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110910575.7A CN113626523B (zh) | 2021-08-09 | 2021-08-09 | 基于did的区块链数据交换方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110910575.7A CN113626523B (zh) | 2021-08-09 | 2021-08-09 | 基于did的区块链数据交换方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113626523A CN113626523A (zh) | 2021-11-09 |
CN113626523B true CN113626523B (zh) | 2024-01-30 |
Family
ID=78383865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110910575.7A Active CN113626523B (zh) | 2021-08-09 | 2021-08-09 | 基于did的区块链数据交换方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113626523B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114756622B (zh) * | 2022-03-16 | 2024-07-02 | 西安电子科技大学 | 一种基于数据湖的政务数据共享交换*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3098920A1 (en) * | 2018-04-30 | 2019-11-07 | Shyft Network Inc. | Methods, apparatus and system for identification verification |
CN111859422A (zh) * | 2020-07-10 | 2020-10-30 | 郑州信大先进技术研究院 | 一种基于区块链的数字资产存证*** |
CN111884805A (zh) * | 2020-06-24 | 2020-11-03 | 易联众信息技术股份有限公司 | 基于区块链及分布式身份的数据托管方法及*** |
CN112580102A (zh) * | 2020-12-29 | 2021-03-30 | 郑州大学 | 基于区块链的多维度数字身份鉴别*** |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018047085A1 (en) * | 2016-09-08 | 2018-03-15 | Thomson Reuters Global Resources Unlimited Company | Systems and methods for providing identity assurance for decentralized applications |
US10972274B2 (en) * | 2018-08-29 | 2021-04-06 | International Business Machines Corporation | Trusted identity solution using blockchain |
US10742424B2 (en) * | 2018-08-29 | 2020-08-11 | International Business Machines Corporation | Trusted identity solution using blockchain |
US11252166B2 (en) * | 2019-07-31 | 2022-02-15 | Advanced New Technologies Co., Ltd. | Providing data authorization based on blockchain |
US11057189B2 (en) * | 2019-07-31 | 2021-07-06 | Advanced New Technologies Co., Ltd. | Providing data authorization based on blockchain |
-
2021
- 2021-08-09 CN CN202110910575.7A patent/CN113626523B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3098920A1 (en) * | 2018-04-30 | 2019-11-07 | Shyft Network Inc. | Methods, apparatus and system for identification verification |
CN111884805A (zh) * | 2020-06-24 | 2020-11-03 | 易联众信息技术股份有限公司 | 基于区块链及分布式身份的数据托管方法及*** |
CN111859422A (zh) * | 2020-07-10 | 2020-10-30 | 郑州信大先进技术研究院 | 一种基于区块链的数字资产存证*** |
CN112580102A (zh) * | 2020-12-29 | 2021-03-30 | 郑州大学 | 基于区块链的多维度数字身份鉴别*** |
Also Published As
Publication number | Publication date |
---|---|
CN113626523A (zh) | 2021-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11552795B2 (en) | Key recovery | |
AU2019239311B2 (en) | Facilitating queries of encrypted sensitive data via encrypted variant data objects | |
US20220353274A1 (en) | Managing verification repositories to facilitate real-time servicing of verification queries | |
US11663364B2 (en) | Whole-lifecycle encrypted big data analysis method and system for the data from the different sources | |
WO2017088683A1 (zh) | 一种数据脱敏的方法及*** | |
US9558366B2 (en) | Computer system for storing and retrieval of encrypted data items, client computer, computer program product and computer-implemented method | |
JP2019537318A (ja) | ブロックチェーンを介したアイデンティティと証明書の保護及び検証とのための方法及びシステム | |
CN113377805B (zh) | 数据查询方法、装置、电子设备及计算机可读存储介质 | |
CN111177252B (zh) | 一种业务数据的处理方法及装置 | |
CN106874461A (zh) | 一种工作流引擎支持多数据源配置安全访问***及方法 | |
CN110046890A (zh) | 一种区块链权限管理***及方法 | |
CN102844756A (zh) | 具有基于角色的访问控制的计算机关系数据库方法和*** | |
US20230289464A1 (en) | Data access method and device, storage medium, and electronic device | |
US9465954B1 (en) | Method and system for tracking masking of data | |
US20200387634A1 (en) | Facilitating entity resolution, keying, and search match without transmitting personally identifiable information in the clear | |
US20210266162A1 (en) | Story assisted mnemonic phrase | |
Bai et al. | Decentralized and self-sovereign identity in the era of blockchain: a survey | |
CN113626523B (zh) | 基于did的区块链数据交换方法及*** | |
CN115758459A (zh) | 数据权限管理方法及装置 | |
Kim et al. | Design and implementation of a personal health record platform based on patient-consent blockchain technology | |
CN115292353B (zh) | 数据查询方法、装置、计算机设备和存储介质 | |
Ramasamy et al. | Cluster based multi layer user authentication data center storage architecture for big data security in cloud computing | |
US20140172834A1 (en) | Providing premium access to aggregated data sets | |
US11387998B2 (en) | Processing personally identifiable information from separate sources | |
CN115827589A (zh) | 一种权限验证方法、装置、电子设备及存储介质 |
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 |