CN116468439A - 数据管理方法、装置、设备、存储介质及计算机程序产品 - Google Patents
数据管理方法、装置、设备、存储介质及计算机程序产品 Download PDFInfo
- Publication number
- CN116468439A CN116468439A CN202210046033.4A CN202210046033A CN116468439A CN 116468439 A CN116468439 A CN 116468439A CN 202210046033 A CN202210046033 A CN 202210046033A CN 116468439 A CN116468439 A CN 116468439A
- Authority
- CN
- China
- Prior art keywords
- data
- data processing
- address
- processing request
- 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.)
- Pending
Links
- 238000013523 data management Methods 0.000 title claims abstract description 100
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000004590 computer program Methods 0.000 title claims abstract description 22
- 238000012545 processing Methods 0.000 claims abstract description 360
- 230000008569 process Effects 0.000 claims abstract description 34
- 238000012795 verification Methods 0.000 claims description 24
- 230000006870 function Effects 0.000 claims description 23
- 238000004891 communication Methods 0.000 claims description 16
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000013473 artificial intelligence Methods 0.000 abstract 1
- 238000012546 transfer Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 11
- 230000008520 organization Effects 0.000 description 10
- 238000000547 structure data Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000003203 everyday effect Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- JEIPFZHSYJVQDO-UHFFFAOYSA-N iron(III) oxide Inorganic materials O=[Fe]O[Fe]=O JEIPFZHSYJVQDO-UHFFFAOYSA-N 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- 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
-
- 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
-
- 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)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提出了一种数据管理方法、装置、设备、存储介质及计算机程序产品,可以应用于云技术、人工智能、区块链、车联网、智慧交通、智能家居等各种领域或场景,该方法包括:接收客户端通过调用数据接口发送的数据处理请求,数据处理请求携带客户端的第一地址;调用区块链网络的目标智能合约的数据处理模块对数据处理请求进行处理,得到数据处理请求的处理结果;调用目标智能合约的数据记录模块,将处理结果、第一地址和目标智能合约的第二地址写入区块链网络对应的区块链中。本申请实施例,可以提高数据处理的透明度和数据可信度。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据管理方法、一种数据管理装置、一种计算机设备、一种计算机可读存储介质及一种计算机程序产品。
背景技术
日常生活中,人们在移动终端上安装各种类型的应用程序,来提供不同的服务,以数字资产交易为例,当转出方在支付应用程序中将数字资产转移到转入方时,支付应用程序对应的中心化管理平台就从转出方的账户中扣除相应数量的数字资产,并在转入方的账户中添加相应数量的数字资产。
在实现相关技术的过程中发现,由于数据的处理逻辑封装在平台端,因此对于用户来说,数据处理的过程是不透明的,比如转出方只能知道数字资产转出有没有成功,但不知道是怎么转移数字资产的,缺乏可信度。
发明内容
本申请实施例提供了一种数据管理方法、装置、设备、存储介质及计算机程序产品,可以提高数据处理的透明度和数据可信度。
一方面,本申请实施例提供了一种数据管理方法,应用于数据管理平台,所述方法包括:
接收客户端通过调用数据接口发送的数据处理请求,所述数据处理请求携带所述客户端的第一地址;
调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求进行处理,得到所述数据处理请求的处理结果;
调用所述目标智能合约的数据记录模块,将所述处理结果、所述第一地址和所述目标智能合约的第二地址写入所述区块链网络对应的区块链中
一方面,本申请实施例提供了一种数据管理装置,应用于数据管理平台,所述装置包括:
接收单元,用于接收客户端通过调用数据接口发送的数据处理请求,所述数据处理请求携带所述客户端的第一地址;
处理单元,用于调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求进行处理,得到所述数据处理请求的处理结果;
所述处理单元,还用于调用所述目标智能合约的数据记录模块,将所述处理结果、所述第一地址和所述目标智能合约的第二地址写入所述区块链网络对应的区块链中。
相应地,本申请实施例提供了一种计算机设备,上述计算机设备包括处理器、通信接口和存储器,处理器、通信接口和存储器相互连接,其中,上述存储器存储有计算机程序,上述处理器用于调用上述计算机程序,执行上述任一可能实现方式的数据管理方法。
相应地,本申请实施例提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行实现本申请实施例提供的数据管理方法的步骤。
相应地,本申请实施例还提供了一种计算机程序产品,上述计算机程序产品包括计算机程序或计算机指令,上述计算机程序或计算机指令被处理器执行实现本申请实施例提供的数据管理方法的步骤。
相应地,本申请实施例还提供了一种计算机程序,上述计算机程序包括计算机指令,上述计算机指令存储在计算机可读存储介质中,计算机设备的处理器从上述计算机可读存储介质读取上述计算机指令,上述处理器执行上述计算机指令,使得上述计算机设备执行本申请实施例提供的数据管理方法。
本申请实施例中,数据管理平台接收客户端通过调用数据接口发送的数据处理请求,数据处理请求携带客户端的第一地址,调用区块链网络的目标智能合约的数据处理模块对数据处理请求进行处理,得到数据处理请求的处理结果,调用目标智能合约的数据记录模块,将处理结果、第一地址和目标智能合约的第二地址写入区块链网络对应的区块链中;上述方案,使数据的接收、处理和存储都是透明的,可以提高数据处理的透明度和数据可信度。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种区块链网络的架构示意图;
图2为本申请实施例提供的一种区块链的结构示意图;
图3为本申请实施例提供的一种区块生成过程的流程示意图;
图4为本申请实施例提供的一种数据管理系统的系统架构示意图;
图5为本申请实施例提供的一种数据管理方法的流程示意图一;
图6为本申请实施例提供的一种数据管理方法的流程示意图二;
图7为本申请实施例提供的一种密码生成规则的示意图;
图8为本申请实施例提供的一种智能合约的生命周期示意图;
图9为本申请实施例提供的一种数据管理装置的结构示意图;
图10为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中所涉及到的“第一”、“第二”等描述仅用于描述目的,而不能理解为指示或者暗示其相对重要性或者隐含指明所指示的技术特征的数量。因此,限定有“第一”、“第二”等的技术特征可以明示或者隐含的包括至少一个该特征。
请参见图1,图1为本申请实施例提供的一种区块链网络的结构示意图。该区块链网络是一个数据共享系统,可以包括多个节点,多个节点具体可以包括节点1、节点2、节点3…、节点N。其中,每个节点在正常工作时可以接收到外界发送的数据,并基于接收到的数据进行区块上链处理,也可以向外界发送数据。为了保证各个节点之间的数据互通,每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当区块链网络中的任意节点接收到输入信息时,区块链网络中的其他节点便根据共识算法获取该输入信息,将该输入信息作为共享数据中的数据进行存储,使得区块链网络中全部节点上存储的数据均一致。
可以理解的是,上述的信息连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接,还可以通过其他连接方式,本申请在此不做限制。
可以理解的是,对于区块链网络中的每个节点,均具有与其对应的节点标识,而且区块链网络中的每个节点均可以存储有区块链网络中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至区块链网络中的其他节点。每个节点中可维护一个如下表1所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为IP(Internet Protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息,表1中仅以IP地址为例进行说明:
表1
节点名称 | 节点标识 |
节点1 | 117.114.151.174 |
节点2 | 117.116.189.145 |
节点3 | 117.113.181.124 |
… | … |
节点N | xx.xx.xx.xx |
区块链网络中的每个节点均存储一条相同的区块链(Blockchain)。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。参见图2,区块链由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
在生成区块链中的各个区块时,参见图3,区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行特征值计算,使得计算得到的特征值可以满足下述公式:
SHA256(SHA256(version+prev_hash+merkle_root+ntime+nbits+x))<TARGET
其中,SHA256为计算特征值所用的特征值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头特征值;merkle_root为输入信息的特征值;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;TARGET为特征值阈值,该特征值阈值可以根据nbits确定得到。
这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据区块链网络中其他节点的节点标识,将新生成的区块分别发送给其所在的区块链网络中的其他节点,由其他节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议,能够允许在没有第三方的情况下进行可信交易,且这些交易不可篡改。交易(Transaction),等同于计算机术语“事务”,交易包括了需要提交到区块链网络执行的操作,并非单指商业语境中的交易,鉴于在区块链技术中约定俗成地使用了“交易”这一术语,本申请实施例遵循了这一习惯。应当理解,区块链中可包括一个或多个智能合约,通过向区块链网络上的节点提交交易,可以触发执行相应地智能合约,利用智能合约提供的功能实现业务需求。
请参见图4,图4为本申请实施例提供的一种数据管理系统的架构示意图,图4所示的数据管理平台40可以是服务器或者是运行在服务器上管理区块链网络的服务平台。该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
数据管理平台40可以负责智能合约的注册发行以及智能合约触发和执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(智能合约注册),根据智能合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;也可以用来验证数据处理请求的有效性,并在有效请求完成共识后记录到存储上,对于一个新的数据处理请求,可以先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将数据处理请求携带的信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;还可以负责所有区块链参与者(区块链网络中的节点)的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);还可以负责部署区块链,使用户专注于区块链应用的开发和基于区块链的服务的快速部署,无需建立、维护和管理区块链网络本身。
图4所示的客户端41是为客户提供本地服务的程序,安装在终端上,可以从数据管理平台40下载得到,需要与数据管理平台40互相配合运行。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备、智能家电、车载终端,等等,但并不局限于此。
图4所示的区块链网络42是指用于进行节点与节点之间数据共享的网络,区块链网络42的类型是灵活多样的,例如可以为公有链、私有链或联盟链中的任意一种。加入公有链的参与者可以读取链上的数据记录、参与交易以及竞争新区块的记账权等,且各参与者(即节点)可自由加入以及退出网络。公有链的去中心化程度最高。私有链则相反,该网络的数据写入权限由某个组织或者机构控制,数据读取权限受组织规定;简单来说,私有链可以为一个弱中心化系统,参与节点具有严格限制且少,因而私有链更适合于特定机构内部使用。联盟链则是介于公有链以及私有链之间的区块链,可实现“部分去中心化”,联盟链中各个节点通常有与之相对应的实体机构或者组织,参与者通过授权加入网络并组成利益相关联盟,共同维护区块链运行。
数据管理平台40可以接入该区块链网络42,并与区块链网络42中的节点进行通信,例如,向节点发送智能合约的部署指令等。区块链上部署的智能合约,通常只能引用区块链上存储的数据内容,因此,图4所示的数据接口43可以是预言机服务器,该预言机服务器上部署有预言机智能合约,可以作为客户端41与数据管理平台40之间的媒介,实现智能合约与真实世界之间的数据交互。另外,客户端41也可以通过数据接口43与区块链网络42进行通信。
图4所示的系统架构可以实现本申请实施例提供的数据管理方法,该方法的实现流程大致包括:
①数据管理平台40接收客户端41通过调用数据接口43发送的数据处理请求,数据处理请求携带客户端41的第一地址。
②数据管理平台40调用区块链网络42的目标智能合约的数据处理模块对数据处理请求进行处理,得到数据处理请求的处理结果。
③数据管理平台40调用目标智能合约的数据记录模块,将处理结果、第一地址和目标智能合约的第二地址写入区块链网络42对应的区块链中。
上述方法,通过将与数据处理请求相关的处理结果、客户端的第一地址、目标智能合约的第二地址写入区块链中,使得数据的接收、处理和存储过程都是透明的,可以提高数据处理的透明度和数据可信度。
可以理解的是,本申请实施例描述的系统架构示意图是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
以上对本申请实施例提供的数据管理方法进行了简要介绍,下面对该数据管理方法的具体实现方式进行详细阐述。
请参阅图5,图5为本申请实施例提供的一种数据管理方法的流程示意图一。该数据管理方法可以由图4中的数据管理平台40执行。该方法包括以下步骤S501-S503:
S501、接收客户端通过调用数据接口发送的数据处理请求,数据处理请求携带客户端的第一地址。
数据处理请求用于请求对账本进行数据处理。账本(Ledger)是区块链(也称为账本数据)、以及与区块链同步的状态数据库的统称;状态数据库是以不同类型的键(Key)值(Value)对的形式来记录区块链中的交易,用于支持对区块链中交易的快速查询。该数据处理涉及写入、更改、读取或删除等处理操作。
本申请对数据处理涉及的业务场景不加以限制,例如,可以是针对数字资产的转账处理,或者是针对医疗数据、游戏数据的读取处理,或者是针对保险电子合同、旅行服务电子合同的写入处理。
第一地址为客户端在区块链网络中的虚拟地址;当区块链网络为公有链时,客户端可不经验证,直接接入区块链网络;在区块链网络为联盟链时,可设置接入条件,只有在客户端满足接入条件时,才允许客户端接入;当区块链网络为私有链时,需要经过组织或者机构的许可后,才允许客户端接入。通过将第一地址写入区块链,可以实现数据的接收过程的透明化,同时也隐藏了客户端的真实信息,实现了用户的隐私保护。
数据接口可以是预言机服务器,在一实施方式中,客户端可将数据处理请求先发送至预言机服务器,再通过预言机服务器部署的预言机智能合约将数据处理请求发送给数据管理平台。另外,数据管理平台也可以调用预言机服务器获取外部数据,将外部数据提供给智能合约以完成交易。
S502、调用区块链网络的目标智能合约的数据处理模块对数据处理请求进行处理,得到数据处理请求的处理结果。
目标智能合约可包括一个或多个数据处理模块。数据处理模块是按照业务逻辑预先编写、编译得到的,每个业务逻辑对应有数据处理模块,例如,查看账户余额、转账都相应有数据处理模块。
在一实施方式中,数据管理平台调用区块链网络的目标智能合约的数据处理模块对数据处理请求进行处理,得到数据处理请求的处理结果。具体为:数据管理平台在接收到数据处理请求后,可以从区块链网络中确定目标节点。目标节点可以是区块链网络中的任意一个节点,或者是与客户端或数据管理平台距离最近的节点,或者是与客户端或数据管理平台通信质量最好的节点。
在可行的实施例中,目标节点还可以是区块链网络中的所有节点根据共识算法选举得到的。共识算法是基于共识机制得到的算法,共识机制是区块链网络中实现不同节点之间建立信任、获取权益的数学算法。在区块链网络中,通过特殊节点的投票,可以在很短的时间内完成对交易的验证和确认,对一笔交易,如果利益不相干的若干个节点能够达成共识,就可以认为系统中的全部节点对此也能够达成共识。共识算法包括但不限于工作量证明(Proof of Work,PoW)算法、权益证明(Proof of Stake,PoS)算法、授权权益证明(Delegated Proof of Stake,DPoS)算法、实用拜占庭容错(PracticalByzantine FaultTolerance,PBFT)算法等。
进一步地,数据管理平台可基于数据处理请求向目标节点提交交易提案,例如,交易提案可包括数据处理请求携带的合约标识(可以是智能合约的名称或序列号)、模块标识(用于标识智能合约中的数据处理模块)和需要向智能合约传递的交易数据,交易数据是智能合约操作的对象,如当智能合约用于执行增加、删除、查询或修改操作时,交易数据可以是增加、删除、查询或修改操作所处理的数据。目标节点可以将与该合约标识相匹配的智能合约作为目标智能合约,以及利用模块标识匹配目标智能合约中的数据处理模块,通过将交易数据传递给目标智能合约中的数据处理模块,使得目标智能合约中的数据处理模块可以按照其对应的业务逻辑进行数据处理,得到数据处理请求的处理结果。例如,当数据处理请求涉及转账处理时,交易数据可包括转出账户的标识、转入账户的标识、转账金额等信息,该转出账户的标识和转入账户的标识可以是经用户在客户端许可或者同意后,添加到数据处理请求中的,处理结果可以包括转账后转出账户包括的余额,也可以包括转账成功的信息或转账失败的信息,还可以包括对处理结果进行加密得到的数字签名;又例如,当读取医疗数据时,处理结果可以包括读取到的医疗数据,也可以包括是否读取成功的信息或读取失败的信息。数据管理平台可以将数据处理请求的处理结果返回给客户端,使得客户端的用户可以了解到数据处理请求的处理结果。
在一实现方式中,目标节点可以与区块链网络中的其它节点对交易提案包括的交易数据进行共识验证,并在验证通过后,生成交易提案包括的交易数据对应的新区块,将新区块添加到区块链网络对应的区块链中,后续区块链网络中的其它节点均可以获取该新区块。
S503、调用目标智能合约的数据记录模块,将处理结果、第一地址和目标智能合约的第二地址写入区块链网络对应的区块链中。
第二地址为目标智能合约在区块链中的调用地址。使用高级编程语言编写的目标智能合约经区块链网络进行共识认可后可部署在区块链中,部署在区块链中的目标智能合约是可供虚拟机或处理器执行的智能合约的字节码,同时还会分配该目标智能合约对应的调用地址。目标智能合约一旦部署好就可以被用户信赖,合约条款不能被改变。
其中,高级编程语言包括但不限于以下任一种:Solidity语言、C++语言、GO语言、Rust语言、python语言、javascript语言、Java语言、Hashell语言、Ruby语言等。
数据记录模块是按照记录逻辑预先编写、编译得到的。在一实现方式中,记录逻辑包括获取数据处理请求的处理结果、客户端的第一地址和目标智能合约的第二地址,以及将处理结果、第一地址和第二地址写入在区块链网络对应的区块链中。具体地,数据管理平台可通过交易的方式将处理结果、第一地址和第二地址构成的记录数据发送给目标节点,并要求目标节点对记录数据进行共识上链处理。例如,目标节点可以与区块链网络中的其它节点对处理结果、第一地址和第二地址构成的记录数据进行共识验证,并在验证通过后,生成记录数据对应的新区块,将新区块添加到区块链网络对应的区块链中,后续区块链网络中的其它节点均可以获取该新区块。通过将第二地址记录在区块链,用户可通过第二地址确定数据处理请求的智能合约所包括的业务逻辑,可以实现数据的处理过程的透明化。
在一实施例中,区块链网络对应有区块链浏览器,用户可通过区块链浏览器向数据管理平台发起查询请求,数据管理平台可通过接入区块链网络,使得数据管理平台可向区块链网络发起查询请求,或者,用户可直接通过区块链浏览器向区块链网络发起查询请求,该查询请求可包括待查询的地址和记录数据对应的区块在区块链中的存储地址中的一种或两种,区块链网络中的目标节点可根据待查询的地址和记录数据对应的区块在区块链中的存储地址中的一种或两种,查询区块链上目标数据处理请求对应的记录数据。其中,目标数据处理请求是由待查询的地址对应的客户端发送的,该记录数据包括发送目标数据处理请求的客户端的第一地址、调用的智能合约的第二地址和目标数据处理请求的处理结果。通过将该记录数据返回给区块链浏览器,使得用户可以在区块链浏览器上查看数据处理请求的处理过程。
另外,用户还可以在区块链浏览器上利用第二地址发起查询请求,以查看针对目标数据处理请求进行处理时调用的智能合约的业务逻辑,实现数据的处理过程的透明化。通过区块链浏览器,可以便于后续进行数据处理的复查等操作,提高了用户体验。
通过本申请实施例,数据管理平台接收客户端通过调用数据接口发送的数据处理请求,数据处理请求携带客户端的第一地址,调用区块链网络的目标智能合约的数据处理模块对数据处理请求进行处理,得到数据处理请求的处理结果,调用目标智能合约的数据记录模块,将处理结果、第一地址和目标智能合约的第二地址写入区块链网络对应的区块链中;上述方案,通过将与数据处理请求相关的处理结果、客户端的第一地址、目标智能合约的第二地址写入区块链中,使得数据的接收、处理和存储过程都是透明的,可以提高数据处理的透明度和数据可信度。
请参阅图6,图6为本申请实施例提供的一种数据管理方法的流程示意图二。该数据管理方法可以由图4中的数据管理平台40执行。该方法包括以下步骤S601-S603:
S601、接收客户端通过调用数据接口发送的数据处理请求,数据处理请求携带客户端的第一地址。
在一实现方式中,如图7所示,区块链网络的地址生成规则包括:①将私钥经过非对称加密算法生成公钥。非对称加密算法是一种不可逆算法,已知私钥时可以通过非对称加密算法得到公钥,而已知公钥时却无法反向计算出私钥。非对称加密算法可以是公钥密码算法(RSA算法)、背包算法、密钥交换算法(D-H算法)、椭圆曲线加密算法等。在一实现方式中,非对称加密算法具体可采用椭圆曲线加密算法,椭圆曲线加密算法是基于椭圆曲线数学理论实现的一种非对称加密算法,可得到65字节的公钥,其中,1字节为0x04,32字节为x坐标、32字节为y坐标。②计算公钥的SHA-256哈希值。具体可以利用安全散列算法(SHA-256算法)得到,对于任意长度的消息,SHA-256算法都会产生一个256位的哈希值,相当于是一个长度为32个字节的数组,可以由长度为64的十六进制字符串来表示,其中,1个字节等于8位,一个十六进制的字符的长度为4位。③在②的基础上计算RIPEMD-160哈希值。具体可以利用加密哈希函数算法(RIPEMD-160算法)得到,对于任意长度的消息,RIPEMD-160算法都会产生一个160位的哈希值。④在③得到的哈希值前加入地址版本号。该地址版本号为区块链网络的通信协议的版本号,取值范围可以是0x00-0xFF,通信协议是区块链网络所遵循的通用通信规则。⑤在④的基础上计算SHA-256哈希值。⑥在⑤的基础上二次计算SHA-256哈希值。⑦取⑥得到的哈希值的前4个字节(8位十六进制),并将这4个字节加在④得到的结果后面。⑧在⑦的基础上采用base58表示法变换一下,得到压缩长度后的地址,将压缩长度后的地址作为最终的地址。base58表示法是一种二进制转可视字符串的算法,主要用来转换大整数值。
在一实现方式中,第一地址是由客户端根据对应的私钥和区块链网络的地址生成规则生成的,私钥是从数据管理平台下载客户端时由数据管理平台分配的,若区块链网络为私有链或联盟链,则分配的私钥还需经区块链对应的机构或者组织许可后再分配。私钥可以是随机选取的一个32字节的随机数,其大小可以介于1~0xFFFF FFFF FFFF FFFFFFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4141之间。
在一实施例中,数据管理平台在获取到客户端的第一地址后,可以检测第一地址是否符合地址生成规则,若第一地址不符合地址生成规则,则可以确定客户端为非法接入区块链网络的设备,可返回用于表示执行失败的提示信息,若第一地址符合地址生成规则,则可以检查第一地址在区块链中是否具有唯一性,若第一地址在区块链中不具有唯一性,则可以确定客户端为非法接入区块链网络的设备,返回用于表示执行失败的提示信息,若第一地址在区块链中具有唯一性,则可以继续执行步骤S602-S603。
S602、调用区块链网络的目标智能合约的数据处理模块对数据处理请求中的结构体数据进行验证,以确定处理结果的结果标识。
在一实施例中,数据管理平台可获取数据记录模块对应的数据记录函数,在基础智能合约中添加数据记录函数得到目标智能合约,并将目标智能合约部署至区块链网络中。
数据记录函数为能够实现数据记录模块所指示的记录逻辑的程序代码。基础智能合约为待发布的智能合约,包括有数据处理模块对应的数据处理函数,未包括有数据记录函数,数据处理函数为能够实现数据处理模块所指示的业务逻辑的程序代码。当指示将基础智能合约部署至区块链网络时,数据管理平台可以自动化地在基础智能合约中添加数据记录函数,得到目标智能合约,并将目标智能合约通过编译工具编译成字节码之后,以交易的方式将该字节码发送至区块链网络中的目标节点,该目标节点可以与区块链网络中的其它节点对该字节码进行共识验证,在共识验证通过后,生成该字节码对应的新区块,将新区块添加到区块链网络对应的区块链中,后续区块链网络中的其它节点均可以获取上述新区块,运行新区块中智能合约的字节码。通过本实施例,使得在数据管理平台上发布的智能合约具有针对数据处理请求进行记录数据处理过程的功能。
在一实施方式中,当目标智能合约在区块链网络部署成功时,数据管理平台可根据区块链网络的地址生成规则生成目标智能合约在区块链中的调用地址,将该调用地址作为目标智能合约的第二地址。
在一实现方式中,如图8所示,用户可在数据管理平台构建目标智能合约包括的数据记录模块对应的数据记录函数,以及数据处理模块对应的数据处理函数,数据管理平台可将构建好的目标智能合约对应的源码文件写入区块链网络对应的区块链中,以及将目标智能合约部署至区块链网络中,数据管理平台可定期检查是否有满足该目标智能合约定义的函数的处理,如,当目标智能合约的数据处理模块要求每天凌晨1点获取天气数据时,数据管理平台可每天凌晨1点将获取到的天气数据提交给目标智能合约的数据处理模块。
在一实施例中,数据管理平台可通过交易的方式将目标智能合约的源码文件发送至区块链网络中的目标节点,该目标节点可以与区块链网络中的其它节点对目标智能合约的源码文件进行共识验证,在共识验证通过后,可以生成智能合约的源码文件对应的新区块,并将新区块添加到区块链网络对应的区块链中。可理解的,通过对目标智能合约的源码文件进行编译可得到目标智能合约对应的字节码,而将源码文件加入区块链中,使得用户可以查看到最底层的程序代码,以了解智能合约在数据处理过程中的业务逻辑。
在一实现方式中,结构体数据包括待处理数据和数据处理模块的模块标识中的一种或两种,待处理数据可以理解为上述交易数据(还可以是加密后的交易数据)。数据管理平台可调用区块链网络的目标智能合约的数据处理模块对数据处理请求中的待处理数据和数据处理模块的模块标识中的一种或两种进行验证,若验证通过,则消费结构体数据(即对账本进行数据处理),并确定数据处理请求的处理结果的结果标识为处理成功的标识,若验证未通过,则确定数据处理请求的处理结果的结果标识为处理失败的标识。
处理结果的结果标识为处理失败的标识,包括以下至少一种:①目标智能合约未包括与该模块标识相匹配的数据处理模块;②模块标识对应的数据处理模块不能够执行该数据处理请求所要求的业务逻辑,例如数据处理请求指示进行转账处理,而该模块标识相匹配的数据处理模块用于查询余额;③待处理数据中数据的格式、大小、结构或语法不符合数据处理模块要求的数据规范,例如,数据处理模块要求输入转出账户的标识,而待处理数据中未包括转出账户的标识,或者,待处理数据未包括转账的数额,导致数据处理模块无法进行转账处理,都可以确定为验证未通过,该转出账户的标识和转账的数额是经用户在客户端许可或者同意后,添加到数据处理请求中的。
在可行的实施例中,数据处理模块可包括与数据处理函数相关的交易对象的定义,该交易对象可以根据业务场景确定,如针对数字资产时,定义的交易对象可以包括转出账户(包括转出账户的数据类型)、转入账户(包括转入账户的数据类型)、转账金额(包括转账金额的数据类型),等等。可通过数据处理请求中的交易数据的数据类型与数据处理模块中定义的对应的交易对象的数据类型是否匹配,确定待处理数据是否符合数据处理模块要求的数据规范。如,数据处理请求中的交易数据的数据类型为字符串,而交易数据对应的交易对象为转账金额时,则与数据处理模块定义的转账金额的数据类型(数据类型为数字)不匹配,可确定待处理数据不符合数据处理模块要求的数据规范。
在一实施方式中,上述消费结构体数据包括以下至少一种:①若数据处理请求要求删除账本中的数据,目标智能合约的数据处理模块可以为删除处理模块,可以调用目标智能合约的删除处理模块对账本中相应的数据按照删除逻辑进行删除处理;②若数据处理请求要求修改账本中的数据时,目标智能合约的数据处理模块可以为修改处理模块,可以调用目标智能合约的修改处理模块对账本中相应的数据按照修改逻辑进行修改处理(该修改处理包括更新或写入);③若数据处理请求所要求的业务逻辑是要查询账本中的数据时,目标智能合约的数据处理模块可以为查询处理模块,可以调用目标智能合约的查询处理模块按照查询逻辑获取账本中相应的数据。
S603、调用目标智能合约的数据记录模块,将数据处理请求对应的订单标识、数据处理请求中的结构体数据、处理结果的结果标识、第一地址和目标智能合约的第二地址中的一种或多种写入区块链网络对应的区块链中。
在一实施例中,若处理结果的结果标识为处理成功的标识,则将数据处理请求对应的订单标识(用于唯一标识数据处理请求)、数据处理请求中的结构体数据、处理成功的标识、客户端的第一地址和目标智能合约的第二地址写入区块链网络对应的区块链中。例如,数据管理平台可通过交易的方式将订单标识、结构体数据、处理成功的标识、第一地址和第二地址构成的记录数据发送给目标节点,目标节点可以与区块链网络中的其它节点对该记录数据进行共识验证,并在验证通过后,生成记录数据对应的新区块,将新区块添加到区块链网络对应的区块链中,后续区块链网络中的其它节点均可以获取上述新区块。
在一实施例中,若处理结果的结果标识为处理失败的标识,则将数据处理请求对应的订单标识、处理失败的标识、第一地址和目标智能合约的第二地址写入区块链网络对应的区块链中。例如,数据管理平台可通过交易的方式将订单标识、处理失败的标识、第一地址和第二地址构成的记录数据发送给目标节点,目标节点可以与区块链网络中的其它节点对该记录数据进行共识验证,并在验证通过后,生成记录数据对应的新区块,将新区块添加到区块链网络对应的区块链中,后续区块链网络中的其它节点均可以获取上述新区块。
在一实施方式中,数据处理请求携带有时间戳(发送数据处理请求的时间),需要调用的智能合约的标识、需要调用的智能合约中的数据处理模块的模块标识,可以利用时间戳、智能合约的标识、数据处理模块的模块标识构成随机数,通过采用非对称加密算法对该随机数进行一次或多次加密得到数据处理请求对应的订单标识。
在一可行的方式中,数据管理平台可以将处理结果的结果标识返回给客户端,处理结果的结果标识包括处理成功的标识以及处理失败的标识。该处理结果的结果标识可以显示在客户端包括的界面上,以便于用户确定数据处理请求是否被成功执行。数据管理平台也可以将处理成功的提示信息以及处理失败的提示信息返回给客户端。
在一实现方式中,数据管理平台可以将数据处理请求对应的订单标识返回给客户端。该订单标识可以显示在客户端包括的界面上,以便于用户根据界面显示的订单标识在区块链浏览器中搜索数据处理请求对应的记录数据。
在一实现方式中,数据管理平台可以将处理结果的结果标识和数据处理请求对应的订单标识返回给客户端。可将处理结果的结果标识和数据处理请求对应的订单标识显示在客户端包括的界面上,使得用户获取到处理结果的结果标识和数据处理请求对应的订单标识。
在一实施例中,区块链网络对应有区块链浏览器,用户可通过区块链浏览器向数据管理平台发起查询请求,数据管理平台接收区块链浏览器发送的查询请求,并通过接入区块链网络,向区块链网络发起查询请求,该查询请求可包括待查询的地址和待查询的订单标识中的一种或两种,区块链网络中的目标节点可根据待查询的地址和待查询的订单标识中的一种或两种,查询区块链上目标数据处理请求对应的记录数据,其中,目标数据处理请求是由待查询的地址对应的客户端发送的,待查询的订单标识与目标数据处理请求一一对应,则输入的为待查询的地址时,目标数据处理请求可以为一个或多个。可以将目标数据处理请求对应的记录数据返回给区块链浏览器,使得用户可以在区块链浏览器上通过查看记录数据了解数据处理请求的处理过程。若目标数据处理请求的处理结果为处理成功时,记录数据包括发送目标数据处理请求的客户端的第一地址、调用的智能合约的第二地址、处理成功的标识、目标数据处理请求的订单标识、目标数据处理请求的结构体数据;若目标数据处理请求的处理结果为处理失败时,记录数据包括发送目标数据处理请求的客户端的第一地址、调用的智能合约的第二地址、处理失败的标识、目标数据处理请求的订单标识。另外,用户还可以在区块链浏览器上利用第二地址发起查询请求,以查看针对目标数据处理请求进行处理的智能合约的处理逻辑。通过区块链浏览器,可以便于后续进行数据处理的复查等操作,提高了用户体验,同时用户无需人工编写查询记录数据的程序代码,去除了不同语言的差异性。
在一实施例中,第二地址还可以指示智能合约的源码文件在区块链中的存储地址,通过在区块链浏览器中输入第二地址,可以返回智能合约的源码文件,以便于用户查看,以及其它开发者使用智能合约的源码文件。
通过本申请实施例,数据管理平台接收客户端通过调用数据接口发送的数据处理请求,数据处理请求携带客户端的第一地址,调用区块链网络的目标智能合约的数据处理模块对数据处理请求中的结构体数据进行验证,得到数据处理请求的处理结果的结果标识,调用目标智能合约的数据记录模块,将处理结果的结果标识、数据处理请求的订单标识、结构体数据、第一地址和目标智能合约的第二地址中的一种或多种写入区块链网络对应的区块链中;上述方案,通过将数据处理请求相关的信息写入区块链,使得数据的接收、处理和存储过程都是透明的,可以提高数据处理的透明度和数据可信度,同时区块链浏览器可便捷快速地实现记录数据的查询。
可以理解的是,在本申请的具体实施方式中,涉及到用户的账户的标识等相关数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
上述详细阐述了本申请实施例的方法,为了便于更好地实施本申请实施例的上述方案,相应地,下面提供了本申请实施例的装置。请参见图9,图9是本申请实施例提供的一种数据管理装置的结构示意图,该数据管理装置应用于数据管理平台,该数据管理装置90可以包括:
接收单元901,用于接收客户端通过调用数据接口发送的数据处理请求,所述数据处理请求携带所述客户端的第一地址;
处理单元902,用于调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求进行处理,得到所述数据处理请求的处理结果;
所述处理单元902,还用于调用所述目标智能合约的数据记录模块,将所述处理结果、所述第一地址和所述目标智能合约的第二地址写入所述区块链网络对应的区块链中。
在一实施例中,所述数据管理装置90包括获取单元903,所述获取单元903用于:获取所述数据记录模块对应的数据记录函数;
所述处理单元902具体用于:在基础智能合约中添加所述数据记录函数,得到所述目标智能合约;将所述目标智能合约部署至所述区块链网络中,并将所述目标智能合约的源码文件写入所述区块链网络对应的区块链中。
在一实施例中,所述处理单元902具体用于:调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求中的结构体数据进行验证,所述结构体数据包括待处理数据和所述数据处理模块的模块标识中的一种或两种;若验证通过,则消费所述结构体数据,并确定所述数据处理请求的处理结果的结果标识为处理成功的标识;若验证未通过,则确定所述数据处理请求的处理结果的结果标识为处理失败的标识。
在一实施例中,所述处理单元902具体用于:生成所述数据处理请求对应的订单标识;调用所述目标智能合约的数据记录模块,将所述订单标识、所述数据处理请求中的结构体数据、所述处理结果的结果标识、所述第一地址和所述目标智能合约的第二地址中的一种或多种写入所述区块链网络对应的区块链中。
在一实施例中,所述处理单元902具体用于:将所述处理结果的结果标识和所述数据处理请求对应的订单标识中的一种或两种返回给所述客户端。
在一实施例中,所述第一地址是由所述客户端根据对应的私钥和所述区块链网络的地址生成规则生成的,所述私钥是从所述数据管理平台下载所述客户端时由所述数据管理平台分配的,所述第二地址是由所述数据管理平台根据所述区块链网络的地址生成规则生成的。
在一实施例中,所述接收单元901具体用于:接收区块链浏览器发送的查询请求,所述查询请求携带待查询的订单标识和待查询的地址中的一种或两种;
所述获取单元903具体用于:根据所述待查询的订单标识和所述待查询的地址中的一种或两种,从所述区块链网络中获取目标数据处理请求对应的记录数据,所述目标数据处理请求是由所述待查询的地址对应的客户端发送的;
所述处理单元902具体用于:将所述记录数据返回给所述区块链浏览器。
可以理解的是,本申请实施例所描述的数据管理装置的各功能单元的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本申请实施例中,数据管理平台接收客户端通过调用数据接口发送的数据处理请求,数据处理请求携带客户端的第一地址,调用区块链网络的目标智能合约的数据处理模块对数据处理请求进行处理,得到数据处理请求的处理结果,调用目标智能合约的数据记录模块,将处理结果、第一地址和目标智能合约的第二地址写入区块链网络对应的区块链中,可以提高数据处理的透明度和数据可信度。
如图10所示,图10是本申请一个实施例提供的一种计算机设备的结构示意图,该计算机设备100内部结构如图10所示,包括:一个或多个处理器1001、存储器1002、通信接口1003。上述处理器1001、存储器1002和通信接口1003可通过总线1004或其他方式连接,本申请实施例以通过总线1004连接为例。
其中,处理器1001(或称CPU(Central Processing Unit,中央处理器))是计算机设备100的计算核心以及控制核心,其可以解析计算机设备100内的各类指令以及处理计算机设备100的各类数据,例如:CPU可以用于解析用户向计算机设备100所发送的开关机指令,并控制计算机设备100进行开关机操作;再如:CPU可以在计算机设备100内部结构之间传输各类交互数据,等等。通信接口1003可选的可以包括标准的有线接口、无线接口(如Wi-Fi、移动通信接口等),受处理器1001的控制用于收发数据。存储器1002(Memory)是计算机设备100中的记忆设备,用于存放计算机程序和数据。可以理解的是,此处的存储器1002既可以包括计算机设备100的内置存储器,当然也可以包括计算机设备100所支持的扩展存储器。存储器1002提供存储空间,该存储空间存储了计算机设备100的操作系统,可包括但不限于:Windows系统、Linux系统等等,本申请对此并不作限定。具体地,处理器1001通过运行存储器1002中存储的计算机程序,执行如下操作:
接收客户端通过调用数据接口发送的数据处理请求,所述数据处理请求携带所述客户端的第一地址;
调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求进行处理,得到所述数据处理请求的处理结果;
调用所述目标智能合约的数据记录模块,将所述处理结果、所述第一地址和所述目标智能合约的第二地址写入所述区块链网络对应的区块链中。
在一实施例中,所述处理器1001具体用于:获取所述数据记录模块对应的数据记录函数;在基础智能合约中添加所述数据记录函数,得到所述目标智能合约;将所述目标智能合约部署至所述区块链网络中,并将所述目标智能合约的源码文件写入所述区块链网络对应的区块链中。
在一实施例中,所述处理器1001具体用于:调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求中的结构体数据进行验证,所述结构体数据包括待处理数据和所述数据处理模块的模块标识中的一种或两种;若验证通过,则消费所述结构体数据,并确定所述数据处理请求的处理结果的结果标识为处理成功的标识;若验证未通过,则确定所述数据处理请求的处理结果的结果标识为处理失败的标识。
在一实施例中,所述处理器1001具体用于:生成所述数据处理请求对应的订单标识;调用所述目标智能合约的数据记录模块,将所述订单标识、所述数据处理请求中的结构体数据、所述处理结果的结果标识、所述第一地址和所述目标智能合约的第二地址中的一种或多种写入所述区块链网络对应的区块链中。
在一实施例中,所述处理器1001具体用于:将所述处理结果的结果标识和所述数据处理请求对应的订单标识中的一种或两种返回给所述客户端。
在一实施例中,所述第一地址是由所述客户端根据对应的私钥和所述区块链网络的地址生成规则生成的,所述私钥是从所述数据管理平台下载所述客户端时由所述数据管理平台分配的,所述第二地址是由所述数据管理平台根据所述区块链网络的地址生成规则生成的。
所述处理器1001具体用于:接收区块链浏览器发送的查询请求,所述查询请求携带待查询的订单标识和待查询的地址中的一种或两种;根据所述待查询的订单标识和所述待查询的地址中的一种或两种,从所述区块链网络中获取目标数据处理请求对应的记录数据,所述目标数据处理请求是由所述待查询的地址对应的客户端发送的;将所述记录数据返回给所述区块链浏览器。
具体实现中,本申请实施例中所描述的处理器1001、存储器1002及通信接口1003可执行本申请实施例提供的一种数据管理方法中所描述的计算机设备的实现方式,也可执行本申请实施例提供的一种数据管理装置中所描述的实现方式,在此不再赘述。
本申请实施例中,数据管理平台接收客户端通过调用数据接口发送的数据处理请求,数据处理请求携带客户端的第一地址,调用区块链网络的目标智能合约的数据处理模块对数据处理请求进行处理,得到数据处理请求的处理结果,调用目标智能合约的数据记录模块,将处理结果、第一地址和目标智能合约的第二地址写入区块链网络对应的区块链中,可以提高数据处理的透明度和数据可信度。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如本申请实施例所述的数据管理方法。其具体实现方式可参考前文描述,此处不再赘述。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现本申请实施例提供的数据管理方法的步骤。其具体实现方式可参考前文描述,此处不再赘述。
本申请实施例还提供了一种计算机程序,所述计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备执行本申请实施例提供的数据管理方法。其具体实现方式可参考前文描述,此处不再赘述。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random AccessMemory,RAM)、磁盘或光盘等。
以上所揭露的仅为本申请部分实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (11)
1.一种数据管理方法,其特征在于,应用于数据管理平台,所述方法包括:
接收客户端通过调用数据接口发送的数据处理请求,所述数据处理请求携带所述客户端的第一地址;
调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求进行处理,得到所述数据处理请求的处理结果;
调用所述目标智能合约的数据记录模块,将所述处理结果、所述第一地址和所述目标智能合约的第二地址写入所述区块链网络对应的区块链中。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述数据记录模块对应的数据记录函数;
在基础智能合约中添加所述数据记录函数,得到所述目标智能合约;
将所述目标智能合约部署至所述区块链网络中,并将所述目标智能合约的源码文件写入所述区块链网络对应的区块链中。
3.根据权利要求1所述的方法,其特征在于,所述调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求进行处理,得到所述数据处理请求的处理结果,包括:
调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求中的结构体数据进行验证,所述结构体数据包括待处理数据和所述数据处理模块的模块标识中的一种或两种;
若验证通过,则消费所述结构体数据,并确定所述数据处理请求的处理结果的结果标识为处理成功的标识;
若验证未通过,则确定所述数据处理请求的处理结果的结果标识为处理失败的标识。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述调用所述目标智能合约的数据记录模块,将所述处理结果、所述第一地址和所述目标智能合约的第二地址写入所述区块链网络对应的区块链中,包括:
生成所述数据处理请求对应的订单标识;
调用所述目标智能合约的数据记录模块,将所述订单标识、所述数据处理请求中的结构体数据、所述处理结果的结果标识、所述第一地址和所述目标智能合约的第二地址中的一种或多种写入所述区块链网络对应的区块链中。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
将所述处理结果的结果标识和所述数据处理请求对应的订单标识中的一种或两种返回给所述客户端。
6.根据权利要求1所述的方法,其特征在于,所述第一地址是由所述客户端根据对应的私钥和所述区块链网络的地址生成规则生成的,所述私钥是从所述数据管理平台下载所述客户端时由所述数据管理平台分配的,所述第二地址是由所述数据管理平台根据所述区块链网络的地址生成规则生成的。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收区块链浏览器发送的查询请求,所述查询请求携带待查询的订单标识和待查询的地址中的一种或两种;
根据所述待查询的订单标识和所述待查询的地址中的一种或两种,从所述区块链网络中获取目标数据处理请求对应的记录数据,所述目标数据处理请求是由所述待查询的地址对应的客户端发送的;
将所述记录数据返回给所述区块链浏览器。
8.一种数据管理装置,其特征在于,所述装置包括:
接收单元,用于接收客户端通过调用数据接口发送的数据处理请求,所述数据处理请求携带所述客户端的第一地址;
处理单元,用于调用区块链网络的目标智能合约的数据处理模块对所述数据处理请求进行处理,得到所述数据处理请求的处理结果;
所述处理单元,还用于调用所述目标智能合约的数据记录模块,将所述处理结果、所述第一地址和所述目标智能合约的第二地址写入所述区块链网络对应的区块链中。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器、通信接口以及处理器,所述存储器、所述通信接口和所述处理器相互连接;所述存储器存储有计算机程序,所述处理器调用所述存储器中存储的计算机程序,用于实现权利要求1-7中任一项所述的数据管理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述的数据管理方法。
11.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现权利要求1-7中任一项所述的数据管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210046033.4A CN116468439A (zh) | 2022-01-12 | 2022-01-12 | 数据管理方法、装置、设备、存储介质及计算机程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210046033.4A CN116468439A (zh) | 2022-01-12 | 2022-01-12 | 数据管理方法、装置、设备、存储介质及计算机程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116468439A true CN116468439A (zh) | 2023-07-21 |
Family
ID=87175888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210046033.4A Pending CN116468439A (zh) | 2022-01-12 | 2022-01-12 | 数据管理方法、装置、设备、存储介质及计算机程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116468439A (zh) |
-
2022
- 2022-01-12 CN CN202210046033.4A patent/CN116468439A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111429254B (zh) | 一种业务数据处理方法、设备以及可读存储介质 | |
CN109819443B (zh) | 基于区块链的注册认证方法、装置及系统 | |
CN110912707B (zh) | 基于区块链的数字证书处理方法、装置、设备及存储介质 | |
AU2017313687A1 (en) | Dynamic cryptocurrency aliasing | |
CN109861996B (zh) | 基于区块链的关系证明方法、装置、设备及存储介质 | |
CN113328997A (zh) | 联盟链跨链系统及方法 | |
CN111327426B (zh) | 数据共享方法及相关装置、设备及系统 | |
US11646897B2 (en) | Method and apparatus for utilizing off-platform-resolved data as an input to code execution on a decentralized platform | |
CN113255014B (zh) | 一种基于区块链的数据处理方法以及相关设备 | |
US20230325833A1 (en) | Blockchain-based data processing method and apparatus, device, storage medium, and program product | |
CN110910110A (zh) | 一种数据处理方法、装置及计算机存储介质 | |
CN116975901A (zh) | 基于区块链的身份验证方法、装置、设备、介质及产品 | |
CN111817859A (zh) | 基于零知识证明的数据共享方法、装置、设备及存储介质 | |
CN110598479A (zh) | 一种数据处理方法、装置以及计算机可读存储介质 | |
CN117376366A (zh) | 区块链交易处理方法、装置、介质及电子设备 | |
CN117010889A (zh) | 数据处理方法、装置及设备、介质、产品 | |
CN116468439A (zh) | 数据管理方法、装置、设备、存储介质及计算机程序产品 | |
CN113014540A (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN116757857B (zh) | 基于区块链的商保数据管理方法、系统、终端及存储介质 | |
CN118410469B (zh) | 应用验证方法及装置 | |
CN115599773B (zh) | 分布式资源转移方法、装置、系统与计算机设备 | |
CN115118461B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN116366254A (zh) | 跨链信息生成方法、跨链信息验证方法及跨链信息验证系统 | |
Bisiach et al. | PUF-enabled blockchain for IoT security: a comparative study | |
Alblooshi | Blockchain-based Ownership Management for Medical IoT (MIoT) Devices and their Data |
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 |