CN111464319A - 一种基于中心化块链式账本的交易存储、签名校验方法 - Google Patents
一种基于中心化块链式账本的交易存储、签名校验方法 Download PDFInfo
- Publication number
- CN111464319A CN111464319A CN202010544983.0A CN202010544983A CN111464319A CN 111464319 A CN111464319 A CN 111464319A CN 202010544983 A CN202010544983 A CN 202010544983A CN 111464319 A CN111464319 A CN 111464319A
- Authority
- CN
- China
- Prior art keywords
- transaction
- object information
- information
- signature
- evidence
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital 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
- 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
公开了一种基于中心化块链式账本的交易存储、签名校验方法。数据库服务端在面对用户想要存储存证对象信息的需求时,会要求用户对不包含存证对象信息明文(但是包含存证对象信息的哈希值)的交易进行签名,如此,数据库服务端可以一方面将签名后的交易存入中心化块链式账本,起到存证的作用;另一方面,将存证对象信息明文另行存入所述中心化块链式账本以外的其他数据库。如此,数据库服务端在需要向用户证明其没有篡改交易时,可以对交易进行签名校验,证明交易内的信息是经过用户签名确认的。
Description
技术领域
本说明书实施例涉及信息技术领域,尤其涉及一种基于中心化块链式账本的交易存储、签名校验方法。
背景技术
中心化块链式账本,区别于去中心化的块链式账本(如区块链网络中各节点分布式维护的区块链),是指中心化的数据库服务端维护的本地数据库。有时,也将中心化块链式账本称为Ledger Data Base(Ledger DB)。
中心化块链式账本是在区块链存储方案的基础上进行改进得到的新型存储方案,其能够克服了区块链存储存在的吞吐量低、响应时间长等问题。中心化块链式账本的服务对象通常是企业级用户,用户一般在数据库服务端注册账户,并通过账户将自身业务产生的业务数据封装成业务交易,将业务交易提交给数据库服务端,数据库服务端基于一定的成块策略,将若干业务交易打包成数据块写入中心化块链式账本进行存储。此处需要说明的是,业务数据只是业务交易这一数据结构中携带的部分信息,业务交易内通常还会携带其他信息,如账本标识、交易类型等。
中心化块链式账本中,类似于传统的区块链,数据块间按照成块时间先后顺序依次链接,每个数据块中携带有本数据块中各业务交易构成的梅克尔树的根哈希值,此外,后一个数据块的块头中携带有前一个数据块的块哈希(即对块头进行哈希计算得到的哈希值),如此确保中心化块链式账本中的业务交易无法被轻易篡改。
在实际应用中,用户可能会责难数据库服务端在将用户提交的交易写入中心化块链式账本之前,擅自修改了交易中的某些信息。
发明内容
本申请实施例是为了解决现有的中心化块链式账本不支持删除数据库的技术问题而提出的。
为解决上述技术问题,本申请实施例是这样实现的:
根据本说明书实施例的第1方面,提供一种基于中心化块链式账本的交易存储方法,应用于数据库服务端,所述数据库服务端维护有中心化块链式账本,所述方法包括:
接收用户账户构建并提交的待存储的交易;所述交易包含存证对象信息与至少一个非存证对象信息;
处理所述交易,包括:将所述交易中的存证对象信息替换成所述存证对象信息的哈希值;
将处理后的所述交易返回给所述用户账户,以使所述用户账户对处理后的所述交易进行签名;
从所述用户账户获取对处理后的所述交易的签名,并在所述签名通过校验的情况下,将处理后的所述交易与对处理后的所述交易的签名以关联形式存入所述中心化块链式账本;
以及,将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
根据本说明书实施例的第2方面,提供一种基于中心化块链式账本的交易存储装置,应用于数据库服务端,所述数据库服务端维护有中心化块链式账本,所述装置包括:
接收模块,接收用户账户构建并提交的待存储的交易;所述交易包含存证对象信息与至少一个非存证对象信息;
处理模块,处理所述交易,包括:将所述交易中的存证对象信息替换成所述存证对象信息的哈希值;
返回模块,将处理后的所述交易返回给所述用户账户,以使所述用户账户对处理后的所述交易进行签名;
第一存储模块,从所述用户账户获取对处理后的所述交易的签名,并在所述签名通过校验的情况下,将处理后的所述交易与对处理后的所述交易的签名以关联形式存入所述中心化块链式账本;
第二存储模块,以及,将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
根据本说明书实施例的第3方面,提供一种签名校验方法,包括:
接收签名校验指令,并确定所述签名校验指令指定的争议信息;所述争议信息是所述签名校验指令指定的目标交易中包含的存证对象信息或非存证对象信息;所述目标交易是基于第1方面的交易存储方法进行存储的;
从所述中心化块链式账本中读取所述目标交易与关联的签名;
若确定所述争议信息属于非存证对象信息,则根据所述目标交易,对读取的签名进行校验;其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
根据本说明书实施例的第4方面,提供一种签名校验装置,包括:
接收模块,接收签名校验指令,并确定所述签名校验指令指定的争议信息;所述争议信息是所述签名校验指令指定的目标交易中包含的存证对象信息或非存证对象信息;所述目标交易是基于第1方面所述的交易存储方法进行存储的;
读取模块,从所述中心化块链式账本中读取所述目标交易与关联的签名;
校验模块,若确定所述争议信息属于非存证对象信息,则根据所述目标交易,对读取的签名进行校验;其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
通过本说明书实施例中所提供的方案,数据库服务端在面对用户想要存储存证对象信息的需求时,会要求用户对不包含存证对象信息明文(但是包含存证对象信息的哈希值)的交易进行签名,如此,数据库服务端可以一方面将签名后的交易存入中心化块链式账本,起到存证的作用;另一方面,将存证对象信息明文另行存入所述中心化块链式账本以外的其他数据库。如此,数据库服务端在需要向用户证明其没有篡改交易时,可以对交易进行签名校验,证明交易内的信息是经过用户签名确认的。
通过本说明书实施例,可以实现如下效果:
1、用户不用担心数据库服务端存储的存证对象信息被篡改,因为包含有存证对象信息的哈希值的交易已经被存入中心化块链式账本;
2、用户如果怀疑数据库服务端,数据库服务端有可信方式可以向用户证明;
3、用户如果怀疑数据库服务端篡改了交易中的某个非存证对象信息,则数据库服务端在进行签名校验时,不需要耗费资源从其他数据库读取存证对象信息(往往数据量较大),而是直接基于轻量化的交易进行签名验证即可。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。
此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本说明书提供的一种基于中心化块链式账本的数据存储系统示意图;
图2是本说明书实施例提供的一种基于中心化块链式账本的交易存储方法的流程示意图;
图3是本说明书实施例提供的一种交易的数据结构的示意图;
图4是本说明书实施例提供的另一种基于中心化块链式账本的交易签名方法的流程示意图;
图5是本说明书实施例提供的一种签名校验方法的流程示意图;
图6是本说明书实施例提供的一种基于中心化块链式账本的交易存储装置的结构示意图;
图7是本说明书实施例提供的一种基于中心化块链式账本的交易签名装置的结构示意图;
图8是本说明书实施例提供的一种签名校验装置的结构示意图;
图9是用于配置本说明书实施例方法的一种设备的结构示意图。
具体实施方式
图1是本说明书提供的一种基于中心化块链式账本的数据存储系统示意图。如图1所示,数据存储系统包括中心化的数据库服务端与多个客户端。其中,数据库服务端负责维护中心化块链式账本,每个客户端对应于一个企业级用户(机构),每个企业级用户自身又进一步对接一个或多个个人用户。
例如,外卖平台与电商平台分别作为用户在数据库服务端上进行注册,获得用户账户,并且,分别在自己的设备上安装数据库服务端提供的客户端,在客户端中登录用户账户,从而具有与数据库服务端进行数据交互的能力。
而外卖平台与电商品台又分别对接各自的大量个人用户。某个个人用户使用自己的手机上安装的外卖客户端购买一份外卖食品后,外卖平台的设备会生成一外卖订单记录(即外卖平台基于业务产生的业务数据),外卖平台会通过自己在数据库服务端注册的用户账户将订单记录封装成交易(类似于区块链,本文所述的交易是适用于中心化块链式账本存储的专用数据结构),将交易提交给数据库服务端,以便数据库服务端将交易封装进数据库写入中心化块链式账本进行存储。类似地,电商平台也会将基于电商业务产生的每个电商订单封装成交易提交给数据库服务端。
为了描述的方便,后文所述的用户是指数据库服务端所服务的企业级用户,后文所述的用户账户,是指企业级用户在数据库服务端注册的账户。
为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图2是本说明书实施例提供的一种基于中心化块链式账本的交易存储方法的流程示意图,包括如下步骤:
S200:接收用户账户构建并提交的待存储的交易。
图2所示方法的执行主体是数据库服务端。数据库服务端维护有中心化块链式账本。
用户账户提交的交易包含存证对象信息与至少一个非存证对象信息。其中,存证对象信息(或称Payload)是指用户账户通过提交交易所要存证的数据对象,其通常是用户的业务所产生的业务数据,如一条记录、一张图片、一段视频等。存证对象信息通常具有较大的数据量,需要占据比较大的存储空间,并且,从存储(不论是内存还是磁盘)中读取存证对象信息需要比较大的资源开销。
非存证对象信息是指交易中携带的除了存证对象以外的其他信息。交易中具体携带哪些非存证对象信息,可以根据实际需要指定。
图3示例性地给出了一种交易的数据结构。如图3所示,交易中的非存证对象信息可以包括以下至少一种:
(1)账本标识(ledger ID);
(2)交易类型信息(TX type);
(3)所述存证对象信息对应的业务关键词列表(clue list);
(4)用户账户标识(client ID);
(5)对应于交易发起时间的时间戳信息(Timestamp);
(6)交易序号N(Nonce),用于表征所述交易是所述用户账户构建并提交给所述数据库服务端的第N个交易。
S202:处理所述交易。
出于节省账本存储容量的目的,以及出于方便后续校验签名时节省服务端开销的目的,数据库服务端可以将所述交易中的存证对象信息替换成所述存证对象信息的哈希值。
S204:将处理后的所述交易返回给所述用户账户。
用户账户需要对处理后的交易进行签名,以表明用户已经对交易中的所有信息进行了确认。
S206:从所述用户账户获取对处理后的所述交易的签名,并在所述签名通过校验的情况下,将处理后的所述交易与对处理后的所述交易的签名以关联形式存入所述中心化块链式账本。
通过步骤S206,相当于未将存证对象信息直接存储到中心化块链式账本中,而是通过将存证对象信息的哈希值直接存储到中心化块链式账本的方式,将存证对象信息锚定到难以被篡改的账本中。
S208:将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
例如,所述其他数据库可以是数据库服务端本地的Key-Value数据库。
图4是本说明书实施例提供的另一种基于中心化块链式账本的交易存储方法的流程示意图,包括:
S400:接收用户账户构建并提交的待存储的交易、对所述交易的签名以及存证对象信息。
在图4所示的方法流程中,用户在构建交易时,就直接将存证对象信息的哈希值写入交易,而不是将存证对象信息写入交易。如此,数据库服务端不必如图2所示的方法流程中一般对交易进行处理。
S402:在所述签名通过校验的情况下,将所述交易与所述签名以关联形式存入所述中心化块链式账本。
S404:将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
图5是本说明书实施例提供的一种签名校验方法的流程示意图,包括:
S500:接收签名校验指令。
所述签名校验指令指定有目标交易以及争议信息。所述争议信息是所述签名校验指令指定的目标交易中包含的存证对象信息或非存证对象信息。
需要说明的是,当用户与数据库服务端针对用户之前提交给数据库服务端进行存储的某个目标交易中的指定信息产生争议(通常是用户认为数据库服务端篡改了该指定信息)时,该指定信息就是争议信息。
所述签名校验指令可以是向数据库服务端提交所述目标交易的用户账户发送给数据库服务端的,也可以是其他具有管理账本权限的管理方账户发送给数据库服务端的。
S502:从所述中心化块链式账本中读取所述目标交易与关联的签名。
S504:若确定所述争议信息属于非存证对象信息,则根据所述目标交易,对读取的签名进行校验。
若所述争议信息属于非存证对象信息,则数据库服务端在校验签名时,不需要从其他数据库读取目标交易中的存证对象信息,如此可以节省数据库服务端从其他数据库读取大数据量的存证对象信息的开销。其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
若所述争议信息属于存证对象信息,则数据库可以从所述其他数据库读取所述签名校验指令指定的目标交易中包含的存证对象信息;根据所述目标交易与读取的存证对象信息,对读取的签名进行校验;其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
通过本说明书实施例中所提供的方案,数据库服务端在面对用户想要存储存证对象信息的需求时,会要求用户对不包含存证对象信息明文(但是包含存证对象信息的哈希值)的交易进行签名,如此,数据库服务端可以一方面将签名后的交易存入中心化块链式账本,起到存证的作用;另一方面,将存证对象信息明文另行存入所述中心化块链式账本以外的其他数据库。如此,数据库服务端在需要向用户证明其没有篡改交易时,可以对交易进行签名校验,证明交易内的信息是经过用户签名确认的。
通过本说明书实施例,可以实现如下效果:
1、用户不用担心数据库服务端存储的存证对象信息被篡改,因为包含有存证对象信息的哈希值的交易已经被存入中心化块链式账本;
2、用户如果怀疑数据库服务端,数据库服务端有可信方式可以向用户证明;
3、用户如果怀疑数据库服务端篡改了交易中的某个非存证对象信息,则数据库服务端在进行签名校验时,不需要耗费资源从其他数据库读取存证对象信息(往往数据量较大),而是直接基于轻量化的交易进行签名验证即可。
图6是本说明书实施例提供的一种基于中心化块链式账本的交易存储装置的结构示意图,应用于数据库服务端,所述数据库服务端维护有中心化块链式账本,所述装置包括:
接收模块601,接收用户账户构建并提交的待存储的交易;所述交易包含存证对象信息与至少一个非存证对象信息;
处理模块602,处理所述交易,包括:将所述交易中的存证对象信息替换成所述存证对象信息的哈希值;
返回模块603,将处理后的所述交易返回给所述用户账户,以使所述用户账户对处理后的所述交易进行签名;
第一存储模块604,从所述用户账户获取对处理后的所述交易的签名,并在所述签名通过校验的情况下,将处理后的所述交易与对处理后的所述交易的签名以关联形式存入所述中心化块链式账本;
第二存储模块605,以及,将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
所述至少一个存证对象信息包括以下信息中的至少一个:
账本标识;
交易类型信息;
所述存证对象信息对应的业务关键词列表;
用户账户标识;
对应于交易发起时间的时间戳信息;
交易序号N,用于表征所述交易是所述用户账户构建并提交给所述数据库服务端的第N个交易。
图7是本说明书实施例提供的一种基于中心化块链式账本的交易存储装置的结构示意图,应用于数据库服务端,所述数据库服务端维护有中心化块链式账本,所述装置包括:
接收模块701,接收用户账户构建并提交的待存储的交易、对所述交易的签名以及存证对象信息;所述交易包含所述存证对象信息的哈希值与至少一个非存证对象信息;
第一存储模块702,在所述签名通过校验的情况下,将所述交易与所述签名以关联形式存入所述中心化块链式账本;
第二存储模块703,将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
图8是本说明书实施例提供的一种签名校验装置的结构示意图,包括:
接收模块801,接收签名校验指令,并确定所述签名校验指令指定的争议信息;所述争议信息是所述签名校验指令指定的目标交易中包含的存证对象信息或非存证对象信息;
读取模块802,从所述中心化块链式账本中读取所述目标交易与关联的签名;
校验模块803,若确定所述争议信息属于非存证对象信息,则根据所述目标交易,对读取的签名进行校验;其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
所述校验模块803,若确定所述争议信息属于存证对象信息,则从所述其他数据库读取所述签名校验指令指定的目标交易中包含的存证对象信息;根据所述目标交易与读取的存证对象信息,对读取的签名进行校验;其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现图2或4或5所示方法。
图9示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现图2或4或5所示方法。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的系统、方法、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于方法实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的方法实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。
Claims (11)
1.一种基于中心化块链式账本的交易存储方法,应用于数据库服务端,所述数据库服务端维护有中心化块链式账本,所述方法包括:
接收用户账户构建并提交的待存储的交易;所述交易包含存证对象信息与至少一个非存证对象信息;
处理所述交易,包括:将所述交易中的存证对象信息替换成所述存证对象信息的哈希值;
将处理后的所述交易返回给所述用户账户,以使所述用户账户对处理后的所述交易进行签名;
从所述用户账户获取对处理后的所述交易的签名,并在所述签名通过校验的情况下,将处理后的所述交易与对处理后的所述交易的签名以关联形式存入所述中心化块链式账本;
以及,将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
2.如权利要求1所述的方法,所述至少一个非存证对象信息包括以下信息中的至少一个:
账本标识;
交易类型信息;
所述存证对象信息对应的业务关键词列表;
用户账户标识;
对应于交易发起时间的时间戳信息;
交易序号N,用于表征所述交易是所述用户账户构建并提交给所述数据库服务端的第N个交易。
3.一种基于中心化块链式账本的交易存储方法,应用于数据库服务端,所述数据库服务端维护有中心化块链式账本,所述方法包括:
接收用户账户构建并提交的待存储的交易、对所述交易的签名以及存证对象信息;所述交易包含所述存证对象信息的哈希值与至少一个非存证对象信息;
在所述签名通过校验的情况下,将所述交易与所述签名以关联形式存入所述中心化块链式账本;
以及,将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
4.一种签名校验方法,包括:
接收签名校验指令,并确定所述签名校验指令指定的争议信息;所述争议信息是所述签名校验指令指定的目标交易中包含的存证对象信息或非存证对象信息;所述目标交易是基于权利要求1~3任一项所述的交易存储方法进行存储的;
从所述中心化块链式账本中读取所述目标交易与关联的签名;
若确定所述争议信息属于非存证对象信息,则根据所述目标交易,对读取的签名进行校验;其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
5.如权利要求4所述的方法,所述方法还包括:
若确定所述争议信息属于存证对象信息,则从所述其他数据库读取所述签名校验指令指定的目标交易中包含的存证对象信息;
根据所述目标交易与读取的存证对象信息,对读取的签名进行校验;其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
6.一种基于中心化块链式账本的交易存储装置,应用于数据库服务端,所述数据库服务端维护有中心化块链式账本,所述装置包括:
接收模块,接收用户账户构建并提交的待存储的交易;所述交易包含存证对象信息与至少一个非存证对象信息;
处理模块,处理所述交易,包括:将所述交易中的存证对象信息替换成所述存证对象信息的哈希值;
返回模块,将处理后的所述交易返回给所述用户账户,以使所述用户账户对处理后的所述交易进行签名;
第一存储模块,从所述用户账户获取对处理后的所述交易的签名,并在所述签名通过校验的情况下,将处理后的所述交易与对处理后的所述交易的签名以关联形式存入所述中心化块链式账本;
第二存储模块,以及,将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
7.如权利要求6所述的装置,所述至少一个非存证对象信息包括以下信息中的至少一个:
账本标识;
交易类型信息;
所述存证对象信息对应的业务关键词列表;
用户账户标识;
对应于交易发起时间的时间戳信息;
交易序号N,用于表征所述交易是所述用户账户构建并提交给所述数据库服务端的第N个交易。
8.一种基于中心化块链式账本的交易存储装置,应用于数据库服务端,所述数据库服务端维护有中心化块链式账本,所述装置包括:
接收模块,接收用户账户构建并提交的待存储的交易、对所述交易的签名以及存证对象信息;所述交易包含所述存证对象信息的哈希值与至少一个非存证对象信息;
第一存储模块,在所述签名通过校验的情况下,将所述交易与所述签名以关联形式存入所述中心化块链式账本;
第二存储模块,将所述存证对象信息存储至所述中心化块链式账本以外的其他数据库。
9.一种签名校验装置,包括:
接收模块,接收签名校验指令,并确定所述签名校验指令指定的争议信息;所述争议信息是所述签名校验指令指定的目标交易中包含的存证对象信息或非存证对象信息;所述目标交易是基于权利要求1~3任一项所述的交易存储方法进行存储的;
读取模块,从所述中心化块链式账本中读取所述目标交易与关联的签名;
校验模块,若确定所述争议信息属于非存证对象信息,则根据所述目标交易,对读取的签名进行校验;其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
10.如权利要求9所述的装置,所述校验模块,若确定所述争议信息属于存证对象信息,则从所述其他数据库读取所述签名校验指令指定的目标交易中包含的存证对象信息;根据所述目标交易与读取的存证对象信息,对读取的签名进行校验;其中,若校验通过,则表征所述争议信息经过用户认可,若校验不通过,则表征所述争议信息未经过用户认可。
11.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1至5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010544983.0A CN111464319B (zh) | 2020-06-15 | 2020-06-15 | 一种基于中心化块链式账本的交易存储、签名校验方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010544983.0A CN111464319B (zh) | 2020-06-15 | 2020-06-15 | 一种基于中心化块链式账本的交易存储、签名校验方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111464319A true CN111464319A (zh) | 2020-07-28 |
CN111464319B CN111464319B (zh) | 2021-08-24 |
Family
ID=71679829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010544983.0A Active CN111464319B (zh) | 2020-06-15 | 2020-06-15 | 一种基于中心化块链式账本的交易存储、签名校验方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111464319B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112364031A (zh) * | 2021-01-12 | 2021-02-12 | 支付宝(杭州)信息技术有限公司 | 一种基于可信账本数据库的业务衍生记录存储方法 |
CN113094352A (zh) * | 2021-03-30 | 2021-07-09 | 清华大学 | 数据湖区块链数据库系统构建方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106506146A (zh) * | 2016-10-26 | 2017-03-15 | 北京瑞卓喜投科技发展有限公司 | 基于区块链技术的交易信息校验方法、装置及系统 |
CN109033841A (zh) * | 2018-07-12 | 2018-12-18 | 杨城 | 一种写验分离的弱中心化可信数据存储系统和管理方法 |
CN110046517A (zh) * | 2018-11-07 | 2019-07-23 | 阿里巴巴集团控股有限公司 | 一种对写入区块链的交易进行隐匿的方法及装置 |
CN110163006A (zh) * | 2019-04-18 | 2019-08-23 | 阿里巴巴集团控股有限公司 | 一种块链式账本中的签名验证方法、系统、装置及设备 |
US20190295079A1 (en) * | 2018-03-23 | 2019-09-26 | Graph Blockchain Limited | Control system and method for controlling private blockchain system |
CN110347678A (zh) * | 2019-06-19 | 2019-10-18 | 阿里巴巴集团控股有限公司 | 一种金融数据的存储方法、系统、装置及设备 |
CN110597911A (zh) * | 2019-09-12 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种区块链网络的证书处理方法、装置、电子设备及存储介质 |
CN110636042A (zh) * | 2019-08-14 | 2019-12-31 | 阿里巴巴集团控股有限公司 | 一种服务端已验证块高的更新方法、装置及设备 |
CN111080294A (zh) * | 2019-12-04 | 2020-04-28 | 杭州复杂美科技有限公司 | 平行链交易加密方法、设备和存储介质 |
-
2020
- 2020-06-15 CN CN202010544983.0A patent/CN111464319B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106506146A (zh) * | 2016-10-26 | 2017-03-15 | 北京瑞卓喜投科技发展有限公司 | 基于区块链技术的交易信息校验方法、装置及系统 |
US20190295079A1 (en) * | 2018-03-23 | 2019-09-26 | Graph Blockchain Limited | Control system and method for controlling private blockchain system |
CN109033841A (zh) * | 2018-07-12 | 2018-12-18 | 杨城 | 一种写验分离的弱中心化可信数据存储系统和管理方法 |
CN110046517A (zh) * | 2018-11-07 | 2019-07-23 | 阿里巴巴集团控股有限公司 | 一种对写入区块链的交易进行隐匿的方法及装置 |
CN110163006A (zh) * | 2019-04-18 | 2019-08-23 | 阿里巴巴集团控股有限公司 | 一种块链式账本中的签名验证方法、系统、装置及设备 |
CN110347678A (zh) * | 2019-06-19 | 2019-10-18 | 阿里巴巴集团控股有限公司 | 一种金融数据的存储方法、系统、装置及设备 |
CN110636042A (zh) * | 2019-08-14 | 2019-12-31 | 阿里巴巴集团控股有限公司 | 一种服务端已验证块高的更新方法、装置及设备 |
CN110597911A (zh) * | 2019-09-12 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种区块链网络的证书处理方法、装置、电子设备及存储介质 |
CN111080294A (zh) * | 2019-12-04 | 2020-04-28 | 杭州复杂美科技有限公司 | 平行链交易加密方法、设备和存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112364031A (zh) * | 2021-01-12 | 2021-02-12 | 支付宝(杭州)信息技术有限公司 | 一种基于可信账本数据库的业务衍生记录存储方法 |
CN113094352A (zh) * | 2021-03-30 | 2021-07-09 | 清华大学 | 数据湖区块链数据库系统构建方法及装置 |
CN113094352B (zh) * | 2021-03-30 | 2022-12-02 | 清华大学 | 数据湖区块链数据库系统构建方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111464319B (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108876380B (zh) | 一种基于中心化结算与区块链存证的交易方法及系统 | |
CN109242453B (zh) | 一种基于中心化结算与区块链存证的交易方法及系统 | |
CN109377216B (zh) | 一种基于中心化结算与区块链存证的交易方法及系统 | |
CN110046023B (zh) | 一种基于区块链智能合约的数据处理方法及系统 | |
CN110245518B (zh) | 一种数据存储方法、装置及设备 | |
CN109359118B (zh) | 一种数据写入方法及装置 | |
CN111382168A (zh) | 在联盟链网络中创建节点组、基于节点组的交易方法 | |
CN110020854B (zh) | 一种基于多个区块链网络的数据存证方法及系统 | |
CN109345392B (zh) | 编程题目发布、解答代码发布、解答代码检验方法及系统 | |
CN110020945B (zh) | 一种基于多个区块链网络的数据读取方法及系统 | |
CN110060153B (zh) | 一种基于多个区块链网络的数据存证方法及系统 | |
CN110046994B (zh) | 一种受理区块链存证交易的方法及系统 | |
CN111464319B (zh) | 一种基于中心化块链式账本的交易存储、签名校验方法 | |
CN110334542B (zh) | 一种网络证据保全、网络证据存证校验方法及装置 | |
CN111506580B (zh) | 一种基于中心化块链式账本的交易存储方法 | |
CN111459948B (zh) | 一种基于中心化块链式账本的交易完整性验证方法 | |
CN111444216A (zh) | 一种基于中心化块链式账本的数据块删除方法 | |
CN112291321B (zh) | 业务处理方法、装置及系统 | |
CN111899104B (zh) | 一种业务执行方法及装置 | |
CN112364382B (zh) | 基于可信账本数据库的业务记录的可信时间域确定方法 | |
CN110060152B (zh) | 一种基于多个区块链网络的数据读取方法及系统 | |
CN110781523B (zh) | 用于处理信息的方法和装置 | |
CN109656805B (zh) | 用于业务分析的代码链路的生成方法、装置及业务服务器 | |
CN108920563B (zh) | 一种数据库切换方法及装置 | |
CN112364030B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40034566 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |