CN116886718A - 基于交易权重的数据存储方法及装置 - Google Patents
基于交易权重的数据存储方法及装置 Download PDFInfo
- Publication number
- CN116886718A CN116886718A CN202310919631.2A CN202310919631A CN116886718A CN 116886718 A CN116886718 A CN 116886718A CN 202310919631 A CN202310919631 A CN 202310919631A CN 116886718 A CN116886718 A CN 116886718A
- Authority
- CN
- China
- Prior art keywords
- data storage
- node
- request
- parameters
- initialization
- 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.)
- Pending
Links
- 238000013500 data storage Methods 0.000 title claims abstract description 206
- 238000000034 method Methods 0.000 title claims abstract description 78
- 238000003860 storage Methods 0.000 claims abstract description 103
- 238000012795 verification Methods 0.000 claims abstract description 77
- 238000012545 processing Methods 0.000 claims abstract description 45
- 238000009826 distribution Methods 0.000 claims abstract description 29
- 238000004364 calculation method Methods 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 28
- 230000000977 initiatory effect Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 22
- 238000010200 validation analysis Methods 0.000 claims description 13
- 125000002015 acyclic group Chemical group 0.000 claims 1
- 230000000875 corresponding effect Effects 0.000 description 82
- 230000006870 function Effects 0.000 description 22
- 238000004891 communication Methods 0.000 description 18
- 238000004422 calculation algorithm Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 239000000872 buffer Substances 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000004873 anchoring Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000013474 audit trail Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000002699 waste material Substances 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/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Databases & Information Systems (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供一种基于交易权重的数据存储方法及装置,涉及数据存储领域,也可以应用于金融领域,方法包括:根据用户发送的初始化安全参数请求和数据存储请求,得到初始化安全参数;将初始化安全参数和数据存储请求发送至去中心化存储节点,进行内容标识处理;将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,生成对应的验证参数,并回传至所述客户节点;本申请基于交易权重构建了一种基于有向无环图DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量。
Description
技术领域
本申请涉及数据存储领域,也可以应用于金融领域,具体涉及一种基于交易权重的数据存储方法及装置。
背景技术
区块链体系结构是区块链系统运行的基础,但随着用户数量和系统规模的增加,区块链系统的可伸缩性差、吞吐量低、交易确认时间长、共识节点接入速度慢以及存储资源浪费等问题变得越发突出,这些问题严重影响了用户的使用体验和行业应用的拓展。
在此情况下,链上链下协同技术作为一种强大的区块链架构模型,被越来越广泛地应用于区块链真实存储系统中,然而,链上链下协同技术在链上大文件存储存在一些问题:
一是存储效率低,虽然大文件可以存储于链下磁盘空间,但一般会将哈希值上链存证,从而实现链下与链上锚定,但由此导致存储效率降低,验证时间比较长;
二是真实性难以证明,链下的数据若是被篡改,则需要上链证明数据的真实性,而往往存在时间差,导致数据存在虚报和瞒报的现象;
三是扩展性差,对于增加或减少链上节点,需要将链下的数据进行相应的增加和删除,付出的代价较多。
发明内容
针对现有技术中的问题,本申请提供一种基于交易权重的数据存储方法及装置,能够确保大文件在链下存储的时候,链上能够同时感知链下数据的真实性,既充分证明链下数据的真实性,又避免数据上链锚定降低文件存储效率。
为了解决上述问题中的至少一个,本申请提供以下技术方案:
根据本申请实施例的第一方面,本申请提供一种基于交易权重的数据存储方法,应用于客户节点,所述方法包括:
根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点;
将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点;
响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。
根据本申请的任一实施方式,所述响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功,包括:
响应于接收到由所述区块链发送的对称私钥,将所述对称私钥存储至本地空间;
向用户发送初始化安全参数成功消息。
根据本申请实施例的第二方面,本申请提供一种基于交易权重的数据存储方法,应用于去中心化存储节点,所述方法包括:
接收客户节点发送的初始化安全参数,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到;
对所述安全参数进行内容标识处理,得到对应的数据内容文件;
将所述数据内容文件发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
根据本申请的任一实施方式,在对所述安全参数进行内容标识处理,得到对应的数据内容文件后,还包括:
对所述数据内容文件进行默克尔校验,在根节点的数据内容文件与所述数据内容文件的哈希值相等的情况下,将所述数据内容文件发送至区块链节点。
根据本申请实施例的第三方面,本申请提供一种基于交易权重的数据存储方法,应用于区块链节点,所述方法包括:
接收客户节点发送的初始化安全参数和数据存储请求和去中心化存储节点发送的数据内容文件,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到,所述数据内容文件根据所述去中心化存储节点对所述安全参数进行内容标识处理得到;
发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息;
根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点,以使所述客户节点在接收到由所述区块链节点发送的验证参数后确定数据存储成功。
根据本申请的任一实施方式,所述发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,包括:
根据所述安全参数生成新建区块,并将所述数据内容确定为所述新建区块的参考标识;
向其他参与节点发起共识投票,响应于投票结果通过,基于有向无环图将所述新建区块更新至当前区块链。
根据本申请实施例的第四方面,本申请提供一种基于交易权重的数据存储装置,包括:
安全认证模块,用于:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
第一发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点;
第二发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至客户节点;
结果接收模块,用于:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。
根据本申请的任一实施方式,所述响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功,包括:
响应于接收到由所述区块链发送的对称私钥,将所述对称私钥存储至本地空间;
向用户发送初始化安全参数成功消息。
根据本申请实施例的第五方面,本申请提供一种基于交易权重的数据存储装置,包括:
第二接收模块,用于:接收客户节点发送的初始化安全参数,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到;
内容标识模块,用于:对所述安全参数进行内容标识处理,得到对应的数据内容文件;
第三发送模块,用于:将所述数据内容文件发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
根据本申请的任一实施方式,在对所述安全参数进行内容标识处理,得到对应的数据内容文件后,还包括:
对所述数据内容文件进行默克尔校验,在根节点的数据内容文件与所述数据内容文件的哈希值相等的情况下,将所述数据内容文件发送至区块链节点。
根据本申请实施例的第六方面,本申请提供一种基于交易权重的数据存储装置,包括:
第三接收模块,用于:接收客户节点发送的初始化安全参数和数据存储请求和去中心化存储节点发送的数据内容文件,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到,所述数据内容文件根据所述去中心化存储节点对所述安全参数进行内容标识处理得到;
区块生成模块,用于:发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息;
结果发送模块,用于:根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点,以使所述客户节点在接收到由区块链节点发送的验证参数后确定数据存储成功。
根据本申请的任一实施方式,所述发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,包括:
根据所述安全参数生成新建区块,并将所述数据内容确定为所述新建区块的参考标识;
向其他参与节点发起共识投票,响应于投票结果通过,基于有向无环图将所述新建区块更新至当前区块链。
根据本申请实施例的第七方面,本申请提供一种数据存储系统,包括客户节点,去中心化存储节点,以及区块链节点;
所述客户节点包括:
安全认证模块,用于:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
第一发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点;
第二发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至区块链节点;
结果接收模块,用于:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功;
所述去中心化存储节点包括:
第二接收模块,用于:接收客户节点发送的初始化安全参数;
内容标识模块,用于:对所述安全参数进行内容标识处理,得到对应的数据内容文件;
第三发送模块,用于:将所述数据内容文件发送至区块链节点;
所述区块链节点包括:
第三接收模块,用于:接收客户节点发送的初始化安全参数和数据存储请求和去中心化存储节点发送的数据内容文件;
区块生成模块,用于:发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息;
结果发送模块,用于:根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
根据本申请实施例的第八方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的基于交易权重的数据存储方法的步骤。
根据本申请实施例的第九方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的基于交易权重的数据存储方法的步骤。
根据本申请实施例的第十方面,本申请提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现所述的基于交易权重的数据存储方法的步骤。
由上述技术方案可知,本申请提供一种基于交易权重的数据存储方法及装置,通过根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点;将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点;响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。提出了一种基于有向无环图DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中的基于交易权重的数据存储方法的流程示意图之一;
图2为本申请实施例中的基于交易权重的数据存储方法的场景结构图;
图3为本申请实施例中的基于交易权重的数据存储方法的分层结构图;
图4为本申请实施例中的基于交易权重的数据存储方法的流程示意图之三;
图5为本申请实施例中的基于交易权重的数据存储方法的流程示意图之四;
图6为本申请实施例中的基于交易权重的数据存储方法的流程示意图之五;
图7为本申请实施例中的基于交易权重的数据存储方法的流程示意图之六;
图8为本申请实施例中的基于交易权重的数据存储装置的业务流程图;
图9为本申请实施例中的基于交易权重的数据存储装置的结构图之一;
图10为本申请实施例中的基于交易权重的数据存储装置的结构图之二;
图11为本申请实施例中的基于交易权重的数据存储装置的结构图之三;
图12为本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
考虑到链上链下协同技术在链上大文件存储存在的问题,本申请提供一种基于交易权重的数据存储方法及装置,提出了一种基于有向无环图DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量,其中,所述链上链下协同技术是一种新的区块链架构范式,通过在链下存储计算、链上共识验证的模式,将参与交易的双方或多方进行链上的状态锁定,然后在链下开辟通道进行通道内的交易,从而可以在链下进行低成本与迅速的交易过程。
本申请提供一种基于交易权重的数据存储方法的实施例,参见图1,所述基于交易权重的数据存储方法,应用于客户节点,具体包含有如下内容:
步骤S101:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数。
首先,根据用户发送的初始化安全参数请求和数据存储请求,系统确定对应的安全参数。所述安全参数可以涉及数据存储的加密算法、访问控制策略、身份验证机制等方面的设置。系统根据用户的请求,选择合适的安全参数进行后续处理。
接下来,系统通过对应的智能合约对所述安全参数进行初始化计算。根据用户请求传入的参数和系统设定的规则,智能合约进行相应的计算和处理,生成初始化的安全参数。
所述客户节点包括客户端和服务网关,在一个示例中,一种基于DAG的链上链下协同的系统结构图如图2所示,其主要技术结构包括用户1、客户端2、服务网关3、区块链节点4以及去中心化存储(DS)节点5,其中:
用户1负责发起用户数据上传,或接收来自区块链网络的数据信息,用户希望用户偏好数据的敏感信息不能被泄露。
客户端2主要负责发起智能合约部署请求、去中心化存储交易请求、去中心化存储查询请求等。
服务网关主要负责提供智能合约API,实现限流熔断,安全检测,文件存储和访问,身份验证和安全参数设置等。
区块链节点4负责完成交易广播、交易执行、交易验证、共识和存储等功能的节点。具有区块链的一般特性。通过客户端发起文件读取指令,同时经过文件读写存证的智能合约执行后的交易记录也会保存在区块链上。
去中心化存储节点5即去中心化存储节点,负责接收服务网关1的文件读写请求,进行分散式文件读写,交易信息存证到区块链节点。本发明客户端A和客户端B分别通过服务网关1和服务网关2接入区块链节点,实现发布智能合约,读取文件和存储文件。
一种基于DAG的链上链下协同分层结构图如图3所示,包括客户访问层20,服务网关层21,区块链网络22,去中心化文件存储网络23。
其中,所述客户节点中的客户端设置于所述客户端访问层,所述服务网关设置于所述网关服务层,其中:
客户端访问层20负责提供运营商访问的客户端软件,便于发起去中心化存储请求,接收去中心化存储结果。客户端可在区块链平台上发布链码,客户产生上传或下载的行为数据后,可调用链码发起交易请求,将行为数据上链,根据客户使用场景,提交到各个场景对应的通道上(客户端可以直接上送客户行为数据,无需加工处理,具体数据处理逻辑可交由场景提供商执行)。供应商也可以发布链码,可以查询属于自己通道的数据,可以对自己通道的数据进行处理分析。
网关服务层21负责面向客户端提供区块链智能合约服务API,实现交易的限流熔断、DS节点的文件上传、下载,内容链接(CID)生成,实现数字身份(DID)注册、校验、目录查询更新等智能合约功能调用。
进一步的,所述服务网关负责为服务网关节点建立安全通道,实现去中心化文件存储请求、初始化安全参数等报文收发。
此外,还可以用于根据交易吞吐量配置进行交易限流和熔断控制。
此外,还可以用于保管用户的私钥和对称密钥,管理用户的数字身份;负责调用区块链网络提供的安全接口API,实现用户数据存储、用户数据加密,以及密态文件解密等。
此外,还可以用于提供区块链智能合约API调用,如:数据存证,信息查询,安全设置等一系列智能合约API接口服务。
步骤S102:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点。
步骤S103:将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
系统将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,所述去中心化存储节点是一种分布式网络中的节点,用于存储和管理数据。通过将初始化安全参数和数据存储请求发送至该节点,系统使得该节点能够了解到所需的安全参数和存储请求的详细信息。
所述去中心化存储节点可以对所述安全参数进行内容标识处理,根据内容标识处理的结果,得到对应的数据内容文件。这个文件包含了经过处理的数据内容,以及相应的标识符或其他元数据。该数据内容文件是经过加密和处理的,以保护数据的安全性。
同样的,系统将初始化安全参数和数据存储请求发送至区块链节点。
在区块链节点上,系统发起基于权重分配的共识请求。共识请求是指通过区块链网络中的共识算法,使节点达成一致并确认将数据存储到区块链中。发起基于权重分配的共识请求意味着系统将初始化安全参数和数据存储请求提交给其他节点,并等待其他节点的确认和验证。
如果共识请求通过,系统根据数据存储请求和所述数据内容,基于有向无环图,更新区块信息。所述有向无环图DAG(Directed Acyclic Graph)表征在图论中从任意顶点出发无法经过若干条边回到该点的图,可以有效地描述数据存储请求与数据内容之间的依赖关系和顺序关系,系统根据这些关系,在区块链中更新相应的区块信息,确保数据存储的正确性和一致性。
示例性的,本申请提供一种DAG模型链接,定义如下:
定义1:DAG模型:有向无环图G形式化表示为G=(V,E),V表示定点集合,E表示边的集合,G可达性可以用其顶点的偏序关系<来表示,设(u,v)∈E,如果存在一条路径从顶点u指向顶点v,它们的偏序关系可以被写作u<v。也被称作v是从u可达的。
定义2:图邻居:设G=(V,E)为图,对于任意的顶点v∈V,图邻居表示为比邻v的节点集合,即定义为NV(v)。
定义3:节点权重:对于给定的节点i∈N,节点权重表示为w(i),其中w表示函数w:N→[0,1],如果将节点权重进行标准化,则进一步表示为:
同时,系统根据初始化安全参数生成对应的验证参数并回传至客户节点,使得客户节点可以验证数据的完整性和真实性。
具体的去中心化存储节点和区块链节点的执行方法见后文详述。
步骤S104:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。
在本申请的基于交易权重的数据存储方法的一实施例中,参见图4,所述响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功,还可以具体包含如下内容:
S104A:响应于接收到由所述区块链发送的对称私钥,将所述对称私钥存储至本地空间。
S104B:向用户发送初始化安全参数成功消息。
当客户节点接收到区块链节点发送的验证参数时,客户节若响应接收到的对称私钥向用户发送初始化安全参数成功消息。这意味着客户节点已经成功地接收并处理了区块链节点发送的安全参数,并确认数据存储的成功。通过发送成功消息,客户节点向用户传达了数据存储操作的成功状态。其中,所述对称私钥是区块链节点发送给客户节点的一种密钥,用于后续数据访问和解密。客户节点将该对称私钥存储在本地空间中,以便将来在需要访问存储的数据时使用。
本申请所述方案提出了一种基于DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量。
本申请提供一种基于交易权重的数据存储方法的实施例,参见图5,所述基于交易权重的数据存储方法,应用于去中心化存储节点,具体包含有如下内容:
步骤S201:接收客户节点发送的初始化安全参数,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到。
步骤S202:对所述安全参数进行内容标识处理,得到对应的数据内容文件。
如图3所示,由所述去中心化存储节点构成的去中心化文件存储网络23主要负责根据客户端提交的上传(下载)、查询等请求,通过去中心化存储逻辑配置参数、数据、业务逻辑等,同时加密形成文件分块数据,其哈希值广播给区块链网络22。场景提供商还可以发布联合运营链码,通过链码调用DS节点服务,每个区块链节点都有对应的DS节点服务,链码可以指定需要哪些DS服务进行联合计算。场景提供商通过链码发起联合计算请求,原本其它通道的提供商数据相互之间是无法访问的,通过DS可以在不泄漏各自数据的情况进行分散式数据存储。
在本申请的基于交易权重的数据存储方法的一实施例中,在对所述安全参数进行内容标识处理,得到对应的数据内容文件后,还可以具体包含如下内容:
对所述数据内容文件进行默克尔校验,在根节点的数据内容文件与所述数据内容文件的哈希值相等的情况下,将所述数据内容文件发送至区块链节点。
其中,去中心化存储节点中的能够建立安全通道,实现去中心化存储报文收发。
此外,还可以实现对去中心化文件内容生成内容标识(Cid)处理,具体的,设数字资产M表示用户的文件内容,Cid为M的内容标识。对内容地址Cid执行默克尔(Merkle)校验,保证根节点的Cid与计算出来的摘要哈希相等。为了将链下与链上融合,将Cid作为ref的一部分融入x中。设FileLinkM表示文件M链接的数据格式,形式上如公式(1)所示:
FileLinkM=(Cid,Size,FileObj{Links,dataM},chksum) (1)
其中,Size表示文件M的大小,FileObj表示文件对象结构,Links表示文件分片的链接数组,dataM表示M的数据内容,Cid表示内容地址信息,形式上如公式(2)所示:
Cid=h(M,Did1,...,Didn) (2)
其中h是Hash函数,Did1,Did2,....,Didn表示拥有文件M的数字身份群组。当新增节点的时候,区块支持者信息更新算法如下:
算法:区块支持者更新
输入:DAG图D,账本DLedger,新节点x∈T,签署节点j,{sqrtLedger(y)}y∈Ledger
输出:更新{sqrtLedger(y)}y∈Ledger
算法步骤如下:
1:For each
2:sqrtLedger(z)←sqrtLedger(y)∪{j}
3:End
4:For each z∈L anddo
5:sqrtLedger(z)←sqrtLedger(z)\{j}
6:End
其中,⊥表示冲突符号,Ledger表示账本区块集合,与L的含义相同。
Chunk模块55:对文件对象数据内容进行分片,同时确保分片后的数据彼此连接,形成文件对象树。
步骤S203:将所述数据内容文件发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
本申请提供一种基于交易权重的数据存储方法的实施例,参见图6,所述基于交易权重的数据存储方法,应用于区块链节点,具体包含有如下内容:
步骤S301:接收客户节点发送的初始化安全参数和数据存储请求和去中心化存储节点发送的数据内容文件,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到,所述数据内容文件根据所述去中心化存储节点对所述安全参数进行内容标识处理得到。
步骤S302:发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息。
如图3所示,由所述区块链节点组成的所述区块链网络22主要负责接收和解密文件去中心化存储报文,触发预设的智能合约逻辑,形成去中心化存储的日志结果。区块链网络可提供托管节点,对于有能力的提供商也可提供本地节点部署。每个场景提供商在区块链上有各自的通道,场景提供商无法获取其它通道也即其它提供商的数据信息。
本申请提供一种基于交易权重的数据存储方法的实施例,参见图7,所述发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,具体包含有如下内容:
步骤S302A:根据所述安全参数生成新建区块,并将所述数据内容确定为所述新建区块的参考标识;
步骤S302B:向其他参与节点发起共识投票,响应于投票结果通过,基于有向无环图将所述新建区块更新至当前区块链。
示例性的,所述区块链节点负责各节点间的通信交互,完成一般区块链节点通讯信息,包括交易信息广播、共识相关信息、区块同步信息、网络状态信息等。
此外,还可以负责接收交易请求,生成交易唯一标识,将交易唯一标识、合约唯一标识以及调用参数组装成交易,广播到区块链的其它节点;同时通过内置编译器编译智能合约,实现交易请求的执行。本发明智能合约模块提供数据存证服务,将智能合约执行结果以文件形式存储在区块链存储网络5。
此外,还可以负责对接收到交易请求进行共识处理,如达成共识,调用智能合约模块43,执行智能合约,并最终形成记录在案,可供日后审计追溯或验证。本发明采用节点权重分配共识,该共识算法为每个共识节点分配节点权重w(w>0),w可以与股权货币正相关,在共识过程中,不存在leader节点对账本状态进行更新,而是允许所有参与者进行投票以及参与共识验证,投票的权重等比例于节点的权重。
在生成基于有向无环图DAG的区块形式的过程中,区块x形式化表示为公式(3)所示:
x=({ref1(x),...,refk(x)},trans,node(x)) (3)
其中,ref(x)表示x直接或间接参考的节点,设该节点为y,则ref(x)表示为:(ry,v),其中ry=hash(y),或者ry=Cid;v为标识的整数值,用于表示参考或投票类型,形式化表示如公式(4)所示:
其中,Cid表示数字内容M的内容标识;trans表示一个交易集合,存储智能合约交易信息;node(x)表示为x签名的节点。由此可见,基于DAG的区块形式遵循以下原则,即:为了签署一个区块x,node(x)需要选择至少2个区块作为参考,即必须满足k≥2。
与工作量证明不同,DAG共识算法采用节点的权重作为获得投票支持率的关键因子,设x∈Ti,t表示节点i在t时刻的区块,x被未来节点集合确认签名的函数表示为形式化如公式(5)所示:
其中,表示链接x的未来的区块集合,issue(y)表示对区块y进行签名的节点。
步骤S303:根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点,以使所述客户节点在接收到由所述区块链节点发送的验证参数后确定数据存储成功。
本申请提出了一种基于DAG的链上链下协同系统和方法,用于解决大文件链上链下存储的一致性和证明真实性等问题,该方法基于有向无环图,构建了一条跨越链上和链下的树图结构,节点由交易信息构成,边由交易构成,并建立了一套基于DAG的链上链下数据真实评估方法,该方法引入交易权重,深度等评估因子,有效评估验证者的评价可信度,同时在增加的节点中实现内容验证,实现文件数据真实性和有效性评估。该方法适用于去中心化环境下执行大文件存储,有效解决了大文件存储的效率低、真实性证明难、扩展性差等缺点,具有较好的推广价值。
本申请提出基于DAG的链上链下协同系统框架,该框架提出了一种基于DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量。
此外,本申请提出一种DAG的区块投票机制,采用区块权重确认区块,而不是采用竞争的方式确认leader,从而减少了选取领导人的时间延迟和性能瓶颈。
最后,本申请提出了一种区块支持算法,通过将碰撞节点进行剥离,有效提高了区块签名的效率和可信度,从而对DAG链上链下形成较好的支撑。
为了更进一步说明本方案,本申请还提供一种应用上述基于交易权重的数据存储装置实现基于交易权重的数据存储方法的具体应用实例,具体包含有如下内容:
一种基于DAG的链上链下协同的业务流程图如图8所示:
步骤S601:用户提交初始化安全参数请求;
步骤S602:客户端接收请求后,调用密钥初始化模块setup,生成主密钥;再调用密钥生成模块,生成密钥Sk。具体步骤如下:
1、初始化(Setup):setup模块选取一个双射群G0,其生成元为g,阶为素数p。在Zp中任意选取两个随机数α,β∈Zp作为指数,公钥表示为一个元组:
其中,Mk=(β,gα)表示主密钥。其中DIDH∈DID表示数字文件所有者(Host)的DID。
2、生成密钥(keyGen):补充输入参数,表示为keyGen(Mk,S),其中Mk为主密钥,S为属性集合,此函数产生的值为密钥Sk。即:
其中,r∈Zp为随机数,对于每个属性j∈S,rj∈Zp为随机数。
步骤S603:调用区块链智能合约算法初始化安全参数。
步骤S604-1:密态文件存储到节点,同时生成文件内容CID。
内容地址Cid执行默克尔(Merkle)校验,保证根节点的Cid与计算出来的摘要哈希相等。为了将链下与链上融合,将Cid作为ref的一部分融入x中。设FileLinkM表示文件M链接的数据格式,形式上:
FileLinkM=(Cid,Size,FileObj{Links,dataM},chksum)
其中,Size表示文件M的大小,FileObj表示文件对象结构,Links表示文件分片的链接数组,dataM表示M的数据内容,Cid表示内容地址信息,形式上:
Cid=h(M,Did1,...,Didn)
其中h是Hash函数,Did1,Did2,....,Didn表示拥有文件M的数字身份群组。
检查文件上传和生成Cid是否成功。
解析报文PU,将密态文件CU上传存储到DS存储节点,同时生成文件内容Cid。Cid表示文件M的内容地址信息,形式上:
其中DIDH为数据所有者的DID,表示CU的Cid。
步骤S604-2:交易处理模块接收初始化安全参数和文件存证请求。
步骤S605:执行存证处理智能合约,将用户公钥、主密钥存证。
步骤S606:节点生成新区块,同时将文件内容Cid作为ref存储在新区块:
区块x形式化表示为:
x=({ref1(x),...,refk(x)},trans,node(x))
其中,ref(x)表示x直接或间接参考的节点,设该节点为y,则ref(x)表示为:(ry,v),其中,或者ry=Cid;v为标识的整数值,用于表示参考或投票类型,形式化表示如下:
其中,Cid表示数字内容M的内容标识;trans表示一个交易集合,存储智能合约交易信息;node(x)ry=hash(y)表示为x签名的节点。由此可见,基于D AG的区块形式遵循以下原则,即:为了签署一个区块x,node(x)需要选择至少2个区块作为参考,即必须满足k≥2。
步骤S607:共识节点发起投票,根据节点权重确定区块是否被确认。DAG共识算法采用节点的权重作为获得投票支持率的关键因子,设x∈Ti,t表示节点i在t时刻的区块,x被未来节点集合确认签名的函数表示为形式化表示为:
其中,表示链接x的未来的区块集合,issue(y)表示对区块y进行签名的节点。
步骤S608:执行区块支持者算法更新区块信息。当新增节点的时候,区块支持者信息更新算法如下:
算法:区块支持者更新
输入:DAG图D,账本DLedger,新节点x∈T,签署节点j,
{sqrtLedger(y)}y∈Ledger
输出:更新{sqrtLedger(y)}y∈Ledger
算法步骤:
其中,⊥表示冲突符号,Ledger表示账本区块集合,与L的含义相同。
步骤S609:将数字身份DID、主密钥Mk、用户公钥PK进行存证,同时执行如下加密函数加密对称密钥,产生对称密钥pkb的密文并返传用户:
步骤S610:将安全参数返传给客户端。
步骤S611:将对称私钥存储到本地保管。
步骤S612:返回初始化安全参数成功消息。
为了提出了一种基于有向无环图DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量,本申请提供一种用于实现所述基于交易权重的数据存储方法的全部或部分内容的基于交易权重的数据存储装置的实施例,参见图5,所述基于交易权重的数据存储装置具体包含有如下内容:
如图9所示,本申请提供一种基于交易权重的数据存储装置,包括:
安全认证模块1101,用于:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
第一发送模块1102,用于:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点;
第二发送模块1103,用于:将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至客户节点;
结果接收模块1104,用于:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。
根据本申请的任一实施方式,所述响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功,包括:
响应于接收到由所述区块链发送的对称私钥,将所述对称私钥存储至本地空间;
向用户发送初始化安全参数成功消息。
如图10所示,本申请提供一种基于交易权重的数据存储装置,包括:
第二接收模块2201,用于:接收客户节点发送的初始化安全参数,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到;
内容标识模块2202,用于:对所述安全参数进行内容标识处理,得到对应的数据内容文件;
第三发送模块2203,用于:将所述数据内容文件发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
根据本申请的任一实施方式,在对所述安全参数进行内容标识处理,得到对应的数据内容文件后,还包括:
对所述数据内容文件进行默克尔校验,在根节点的数据内容文件与所述数据内容文件的哈希值相等的情况下,将所述数据内容文件发送至区块链节点。
如图11所示,本申请提供一种基于交易权重的数据存储装置,包括:
第三接收模块3301,用于:接收客户节点发送的初始化安全参数和数据存储请求和去中心化存储节点发送的数据内容文件,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到,所述数据内容文件根据所述去中心化存储节点对所述安全参数进行内容标识处理得到;
区块生成模块3302,用于:发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息;
结果发送模块3303,用于:根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点,以使所述客户节点在接收到由区块链节点发送的验证参数后确定数据存储成功。
根据本申请的任一实施方式,所述发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,包括:
根据所述安全参数生成新建区块,并将所述数据内容确定为所述新建区块的参考标识;
向其他参与节点发起共识投票,响应于投票结果通过,基于有向无环图将所述新建区块更新至当前区块链。
为了提出了一种基于有向无环图DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量,本申请提供一种用于实现所述基于交易权重的数据存储方法的全部或部分内容的数据存储系统的实施例,所述数据存储系统具体包含有如下内容:
数据存储系统,包括客户节点,去中心化存储节点,以及区块链节点;
所述客户节点包括:
安全认证模块,用于:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
第一发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点;
第二发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至区块链节点;
结果接收模块,用于:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功;
所述去中心化存储节点包括:
第二接收模块,用于:接收客户节点发送的初始化安全参数;
内容标识模块,用于:对所述安全参数进行内容标识处理,得到对应的数据内容文件;
第三发送模块,用于:将所述数据内容文件发送至区块链节点;
所述区块链节点包括:
第三接收模块,用于:接收客户节点发送的初始化安全参数和数据存储请求和去中心化存储节点发送的数据内容文件;
区块生成模块,用于:发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息;
结果发送模块,用于:根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
从硬件层面来说,为了提出了一种基于有向无环图DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量,本申请提供一种用于实现所述基于交易权重的数据存储方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现基于交易权重的数据存储装置与核心业务系统、用户终端以及相关数据库等相关设备之间的信息传输;该逻辑控制器可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该逻辑控制器可以参照实施例中的基于交易权重的数据存储方法的实施例,以及基于交易权重的数据存储装置的实施例进行实施,其内容被合并于此,重复之处不再赘述。
可以理解的是,所述用户终端可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
在实际应用中,基于交易权重的数据存储方法的部分可以在如上述内容所述的电子设备侧执行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。
上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
图12为本申请实施例的电子设备9600的系统构成的示意框图。如图12所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图12是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,基于交易权重的数据存储方法功能可以被集成到中央处理器9100中。其中,中央处理器9100可以被配置为进行如下控制:
步骤S101:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
步骤S102:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点;
步骤S103:将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点;
步骤S104:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。
从上述描述可知,本申请实施例提供的电子设备,提出了一种基于有向无环图DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量。
在另一个实施方式中,基于交易权重的数据存储装置可以与中央处理器9100分开配置,例如可以将基于交易权重的数据存储装置配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现基于交易权重的数据存储方法功能。
如图12所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图12中所示的所有部件;此外,电子设备9600还可以包括图12中没有示出的部件,可以参考现有技术。
如图12所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的基于交易权重的数据存储方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的基于交易权重的数据存储方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤S101:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
步骤S102:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点;
步骤S103:将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点;
步骤S104:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。
从上述描述可知,本申请实施例提供的计算机可读存储介质,提出了一种基于有向无环图DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的基于交易权重的数据存储方法中全部步骤的一种计算机程序产品,该计算机程序/指令被处理器执行时实现所述的基于交易权重的数据存储方法的步骤,例如,所述计算机程序/指令实现下述步骤:
步骤S101:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
步骤S102:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点;
步骤S103:将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点;
步骤S104:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。
从上述描述可知,本申请实施例提供的计算机程序产品,提出了一种基于有向无环图DAG的框架,可有效替代现有单链结构,既提升了链式结构的拓展性,又有效降低了链式结构的存储容量。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (13)
1.一种基于交易权重的数据存储方法,其特征在于,应用于客户节点,所述方法包括:
根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点;
将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点;
响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。
2.根据权利要求1所述的方法,其特征在于,所述响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功,包括:
响应于接收到由所述区块链发送的对称私钥,将所述对称私钥存储至本地空间;
向用户发送初始化安全参数成功消息。
3.一种基于交易权重的数据存储方法,其特征在于,应用于去中心化存储节点,所述方法包括:
接收客户节点发送的初始化安全参数,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到;
对所述安全参数进行内容标识处理,得到对应的数据内容文件;
将所述数据内容文件发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
4.根据权利要求3所述的方法,其特征在于,在对所述安全参数进行内容标识处理,得到对应的数据内容文件后,还包括:
对所述数据内容文件进行默克尔校验,在根节点的数据内容文件与所述数据内容文件的哈希值相等的情况下,将所述数据内容文件发送至区块链节点。
5.一种基于交易权重的数据存储方法,其特征在于,应用于区块链节点,所述方法包括:
接收客户节点发送的初始化安全参数和数据存储请求和去中心化存储节点发送的数据内容文件,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到,所述数据内容文件根据所述去中心化存储节点对所述安全参数进行内容标识处理得到;
发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息;
根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点,以使所述客户节点在接收到由所述区块链节点发送的验证参数后确定数据存储成功。
6.根据权利要求5所述的方法,其特征在于,所述发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,包括:
根据所述安全参数生成新建区块,并将所述数据内容确定为所述新建区块的参考标识;
向其他参与节点发起共识投票,响应于投票结果通过,基于有向无环图将所述新建区块更新至当前区块链。
7.一种基于交易权重的数据存储装置,其特征在于,所述装置包括:
安全认证模块,用于:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
第一发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点,以使所述去中心化存储节点对所述安全参数进行内容标识处理,得到对应的数据内容文件,并将所述数据内容文件发送至区块链节点;
第二发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至客户节点;
结果接收模块,用于:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功。
8.一种基于交易权重的数据存储装置,其特征在于,所述装置包括:
第二接收模块,用于:接收客户节点发送的初始化安全参数,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到;
内容标识模块,用于:对所述安全参数进行内容标识处理,得到对应的数据内容文件;
第三发送模块,用于:将所述数据内容文件发送至区块链节点,以使所述区块链节点发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息,根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
9.一种基于交易权重的数据存储装置,其特征在于,所述装置包括:
第三接收模块,用于:接收客户节点发送的初始化安全参数和数据存储请求和去中心化存储节点发送的数据内容文件,其中,所述初始化安全参数通过所述客户节点根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算得到,所述数据内容文件根据所述去中心化存储节点对所述安全参数进行内容标识处理得到;
区块生成模块,用于:发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息;
结果发送模块,用于:根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点,以使所述客户节点在接收到由区块链节点发送的验证参数后确定数据存储成功。
10.一种数据存储系统,其特征在于,包括客户节点,去中心化存储节点,以及区块链节点;
所述客户节点包括:
安全认证模块,用于:根据用户发送的初始化安全参数请求和数据存储请求,确定对应的安全参数,并通过对应的智能合约对所述安全参数进行初始化计算,得到初始化安全参数;
第一发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至去中心化存储节点;
第二发送模块,用于:将所述初始化安全参数和所述数据存储请求发送至区块链节点;
结果接收模块,用于:响应于接收到由所述区块链节点发送的验证参数,确定数据存储成功;
所述去中心化存储节点包括:
第二接收模块,用于:接收客户节点发送的初始化安全参数;
内容标识模块,用于:对所述安全参数进行内容标识处理,得到对应的数据内容文件;
第三发送模块,用于:将所述数据内容文件发送至区块链节点;
所述区块链节点包括:
第三接收模块,用于:接收客户节点发送的初始化安全参数和数据存储请求和去中心化存储节点发送的数据内容文件;
区块生成模块,用于:发起基于权重分配的共识请求,并在请求通过的情况下,根据所述数据存储请求与所述数据内容基于有向无环图更新区块信息;
结果发送模块,用于:根据所述初始化安全参数生成对应的验证参数,并将所述验证参数回传至所述客户节点。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至2任一项所述的基于交易权重的数据存储方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至2任一项所述的基于交易权重的数据存储方法的步骤。
13.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至2任一项所述的基于交易权重的数据存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310919631.2A CN116886718A (zh) | 2023-07-25 | 2023-07-25 | 基于交易权重的数据存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310919631.2A CN116886718A (zh) | 2023-07-25 | 2023-07-25 | 基于交易权重的数据存储方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116886718A true CN116886718A (zh) | 2023-10-13 |
Family
ID=88267905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310919631.2A Pending CN116886718A (zh) | 2023-07-25 | 2023-07-25 | 基于交易权重的数据存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116886718A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117278216A (zh) * | 2023-11-23 | 2023-12-22 | 三亚学院 | 一种基于云计算虚拟化与网络存储文件的加密系统 |
-
2023
- 2023-07-25 CN CN202310919631.2A patent/CN116886718A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117278216A (zh) * | 2023-11-23 | 2023-12-22 | 三亚学院 | 一种基于云计算虚拟化与网络存储文件的加密系统 |
CN117278216B (zh) * | 2023-11-23 | 2024-02-13 | 三亚学院 | 一种基于云计算虚拟化与网络存储文件的加密系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111970129B (zh) | 一种基于区块链的数据处理方法、设备以及可读存储介质 | |
CN110855791B (zh) | 一种区块链节点部署方法及相关设备 | |
JP2024505692A (ja) | ブロックチェーンネットワークに基づくデータ処理方法、装置及びコンピュータ機器 | |
CN113541970B (zh) | 分布式标识符的使用方法和分布式标识符使用系统 | |
CN112804354B (zh) | 跨链进行数据传输的方法、装置、计算机设备和存储介质 | |
CN111767569A (zh) | 区块链的访问授权方法及节点 | |
CN112788593B (zh) | 安全策略的更新方法及装置、系统 | |
CN111275555A (zh) | 区块链交易处理方法、交易节点以及区块链系统 | |
CN113255014B (zh) | 一种基于区块链的数据处理方法以及相关设备 | |
BRPI0614202A2 (pt) | método para atualizar conteúdo de informação da uma página da web; método para fornecer um servidor de rede com informação sobre atualização da página da web proveniente do terminal; servidor da rede que mantém uma página da rede; terminal para manter uma conexão com o servidor da rede que mantém a página da rede; produto de programa de computador armazenado em um meio fìsico legìvel pelo computador e executável em um dispositivo de processamento de dados para manter a página da rede; e produto de programa de computador, armazenado em um meio fìsico legìvel pelo computador e executável em um dispositivo de processamento de dados, para fornecer um servidor de rede com informação sobre atualizações feitas na página da rede | |
US11943210B2 (en) | System and method for distributed, keyless electronic transactions with authentication | |
CN116886718A (zh) | 基于交易权重的数据存储方法及装置 | |
CN111666589A (zh) | 区块链分布式的风险数据共享系统及方法 | |
CN112235294A (zh) | 区块链协同权限控制方法及装置 | |
CN111709053B (zh) | 基于松散耦合交易网络的作业方法及作业装置 | |
CN116668456A (zh) | 一种基于dag多节点共识的区块生成方法、装置及系统 | |
US11231920B2 (en) | Electronic device management | |
CN111666590A (zh) | 分布式文件安全传输方法、装置及系统 | |
CN116962444A (zh) | 基于状态通道的数据存储方法及装置 | |
CN116743782A (zh) | 区块数据处理方法、装置及系统 | |
CN116668118A (zh) | 基于内容链接的无状态用户数据处理方法、装置及系统 | |
CN115829692A (zh) | 基于区块链的产品推荐方法、装置及系统 | |
CN117768159A (zh) | 基于纳什均衡的数据资产供给方法及系统 | |
CN116743377B (zh) | 基于区块链密钥的数据处理方法、装置、设备及存储介质 | |
CN116962391A (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 |