CN110599177A - 一种交易验证方法及相关设备 - Google Patents
一种交易验证方法及相关设备 Download PDFInfo
- Publication number
- CN110599177A CN110599177A CN201910909878.XA CN201910909878A CN110599177A CN 110599177 A CN110599177 A CN 110599177A CN 201910909878 A CN201910909878 A CN 201910909878A CN 110599177 A CN110599177 A CN 110599177A
- Authority
- CN
- China
- Prior art keywords
- transaction
- verification
- data
- verification operation
- block
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明实施例公开了一种交易验证方法及相关设备,本发明实施例通过增加交易验证合约作为智能合约,通过在虚拟机上运行交易验证合约以执行对交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,不仅可以实现区块链节点的交易验证功能,而且对交易验证功能进行维护更新时,只需修改交易验证合约代码并完成代码上链,即可以变更交易验证功能,灵活性强,交易验证功能的维护更新流程方便高效,区块链节点无需停机,保证区块链网络的正常运行。
Description
技术领域
本发明涉及互联网技术领域,具体涉及区块链技术领域,尤其涉及一种交易验证方法、一种区块链节点、一种终端设备及一种计算机存储介质。
背景技术
区块链技术,也被称之为分布式账本技术,是一种由若干台计算设备共同参与“记账”,共同维护一份完整的分布式数据库的新兴技术。由于区块链技术具有去中心化、公开透明、每台计算设备可以参与数据库记录、并且各计算设备之间可以快速的进行数据同步的特性,使得区块链技术已在众多的领域中广泛的进行应用。
现有技术中,由于交易验证功能的程序代码是写入到区块链的底层架构代码中的,因此,在修改区块链的交易验证功能逻辑时,重新编写交易验证功能的程序代码后,对于区块链中每个节点,都需要停止工作以载入新的程序代码,再重启节点才能最终完成修改,造成区块链的升级维护流程繁琐,工作量巨大;而且,在升级维护过程中如果出现大量节点停机的话,将对区块链的正常工作产生巨大影响。
发明内容
本发明实施例提供了一种交易验证方法及相关设备,不仅可以实现交易验证,还可以灵活变更交易验证功能,交易验证功能的维护更新流程方便高效。
一方面,本发明实施例提供了一种交易验证方法,应用于区块链网络中的区块链节点,所述区块链节点上部署有用于运行智能合约的虚拟机,所述智能合约包括交易验证合约;所述交易验证方法包括:
接收利用交易发起者的私钥签名后的交易,所述交易包括交易签名和交易数据;
通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;
交易大小验证、gas价格验证、交易签名验证和交易数据验证通过,则打包所述交易生成待上链区块;
将所述待上链区块添加到区块链中。
其中,所述交易数据包括gas价格,所述对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,包括:
判断所述交易的大小是否超过预设交易大小,若判断为未超过,则所述交易通过交易大小验证,进入对所述交易的gas价格验证操作,否则,所述交易未通过交易大小验证;
所述gas价格验证操作包括:
判断所述交易的gas价格是否超过预设gas价格,若判断为超过,则所述交易通过gas价格验证,进入对所述交易的交易签名验证操作,否则,所述交易未通过gas价格验证;
所述交易签名验证操作包括:
根据所述交易签名获取交易发起者的公钥;
利用所述公钥对所述交易签名进行解密得到解密数据,并将所述解密数据与所述交易数据进行信息对比,对比相同,则所述交易通过交易签名验证,进入对所述交易的交易数据验证操作,否则,所述交易未通过交易签名验证;
所述交易数据验证操作包括:
根据预设敏感词汇数据库对所述交易数据进行数据验证,若所述交易数据包含敏感词汇数据,则所述交易未通过交易数据验证,或者,则对所述交易数据进行敏感词汇数据过滤;否则,所述交易通过交易数据验证。
其中,所述交易为转账交易,所述交易数据还包括转账方的虚拟资产地址、接收方地址和转账金额;
在所述通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作之前,还包括:
判断所述转账方的虚拟资产地址的虚拟资产余额是否大于所述转账金额,若判断结果为是,则进入对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;否则,向所述交易发起者发送提示信息,以提示交易出错。
其中,所述交易验证合约的代码包括预设验证字段和验证操作字段,所述预设验证字段用于存储与待验证数据进行比较的预设数据,所述验证操作字段指示所述待验证数据与所述预设验证字段的数据之间的验证逻辑。
其中,所述交易数据包括交易发起时间,所述方法还包括:
根据所述交易发起者的优先级的赋值和所述交易的交易发起时间的乘积,确定交易的交易验证操作顺序,其中,所述交易发起者的优先级越高,优先级的赋值数值越小;所述交易对应的乘积的数值越小,越早对所述交易进行交易大小验证、gas价格验证、交易签名验证和交易数据验证。
其中,所述交易发起者在预设时间内发起的交易数量越大,所述交易发起者的优先级越高。
另一方面,本发明实施例提供了一种区块链节点,所述区块链节点上部署有用于运行智能合约的虚拟机,所述智能合约包括交易验证合约;所述区块链节点包括:
交易接收模块,用于接收利用交易发起者的私钥签名后的交易,所述交易包括交易签名和交易数据;
交易验证模块,用于通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;
区块生成模块,用于交易大小验证、gas价格验证、交易签名验证和交易数据验证通过,则打包交易生成待上链区块;
上链模块,用于将所述待上链区块添加到区块链中。
其中,所述交易数据包括交易发起时间,所述区块链节点还包括:
验证顺序确定模块,用于根据所述交易发起者的优先级的赋值和所述交易的交易发起时间的乘积,确定交易的交易验证操作顺序,其中,所述交易发起者的优先级越高,优先级的赋值数值越小;所述交易对应的乘积的数值越小,越早对所述交易进行交易大小验证、gas价格验证、交易签名验证和交易数据验证。
另一方面,本发明实施例提供了一种终端设备,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行所述的交易验证方法。
另一方面,本发明实施例提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行所述的交易验证方法。
本发明实施例通过增加交易验证合约作为智能合约,通过在虚拟机上运行交易验证合约以执行对交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,不仅可以实现区块链节点的交易验证功能,而且对交易验证功能进行维护更新时,只需修改交易验证合约代码并完成代码上链,即可以变更交易验证功能,灵活性强,交易验证功能的维护更新流程方便高效,区块链节点无需停机,保证区块链网络的正常运行。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种交易验证方法中数据上链的示意图;
图2是本发明实施例提供的一种交易验证方法的流程示意图;
图3是本发明实施例提供的一种交易验证方法的流程示意图;
图4是本发明实施例提供的一种区块链节点的结构示意图;
图5是本发明实施例提供的一种区块链节点中上链模块的结构示意图;
图6是本发明实施例提供的一种终端设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
首先,区块链网络就是一个分布式(Distributed)数据库,这个数据库维护了一个不断增长的数据记录列表,区块链网络中的每个节点都保存有该数据记录列表。在区块链里,多个数据记录组成的批次就被称为区块(block),块里的每一行数据记录就被称为交易(transaction),具体地,区块的结构包括区块大小、区块头、交易计数器和交易。
区块链中的交易,存在狭义的交易以及广义的交易之分,狭义的交易是指用户向区块链发布的一笔价值转移,例如,在关于虚拟资产(例如游戏中游戏币)的区块链网络中,交易可以是用户在区块链中发起的一笔转账。而广义的交易是指用户通过节点设备向区块链发布的一笔具有业务意图的业务数据,如在物品流转过程中为物品及其持有方存证的数据信息,又如以太坊中部署合约时,一次部署就是一笔交易,交易数据为合约代码;为候选者投票时,一次投票又是另一笔交易。
智能合约程序不只是一个可以自动执行的计算机程序:它自己就是一个系统参与者。它对接收到的信息进行回应,它可以接收和储存价值,也可以向外发送信息和价值。这个程序就像一个可以被信任的人,可以临时保管资产,总是按照事先的规则执行操作。而以太坊就是区块链技术加智能合约,以太坊是一种区块链的实现,可以用来编程,分散,担保和交易任何事物,比如投票,域名,金融交易所,众筹,公司管理,合同等等。以太坊允许任何人在平台中建立和使用通过区块链技术运行的去中心化应用。在以太坊网络中,众多的节点彼此连接,构成了以太坊网络。以太坊区块链不仅存储数据和代码,每个节点中还包含一个虚拟机(EVM:Ethereum Virtual Machine)来执行合约代码。另外,以太坊节点软件提供两个核心功能:数据存储、合约代码执行。在每个以太坊全节点中,都保存有完整的区块链数据。以太坊不仅将交易数据保存在链上,编译后的智能合约代码同样也保存在链上。
为了解决背景技术中提出的技术问题,即现有区块链网络中,交易验证模块设置在区块链的底层架构中,交易验证模块的代码是设置在底层架构代码中,每次进行交易验证时,需要在区块链系统里执行;而每次需要修改或者维护交易验证模块时,需要对区块链中每个区块链节点进行修改;具体修改时,需要将区块链节点停机,再将修改后的交易验证模块代码载入节点中,再重启区块链节点以完成修改或维护,不仅工作量巨大,而且效率低下,对区块链网络的正常运转十分不利,因此,本发明实施例提供一种新的解决方案,总体的思路是:
将交易验证模块设置成一种运行在虚拟机上的智能合约,即交易验证合约,则在对交易验证功能进行维护更新时,只需修改交易验证合约代码并完成代码上链,即可以变更交易验证功能,灵活性强,交易验证功能的维护更新流程方便高效,区块链节点无需停机,保证区块链网络的正常运行。另外,通过增加交易验证合约作为智能合约,接收到新的交易时,通过在虚拟机上运行交易验证合约以实现对交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,可以实现区块链节点的交易验证功能。
具体地,参考图1,图1是本发明实施例提供的一种交易验证方法中数据上链的示意图,客户端D向区块链网络提交一笔新交易时,会先被广播到区块链网络中的所有节点(例如节点A、节点B和节点C),每个节点会将数笔未验证的交易收集到区块中,每个区块可以包含数百笔或上千笔交易,最快完成交易大小验证、gas价格验证、交易签名验证和交易数据验证的节点,例如节点A,会将自己的区块上链,并将该区块传播给区块链网络中的其他节点以实现上链,节点A向节点B、节点C广播自己的区块,节点B、节点C将接收到的区块上链。
基于上述思路,本发明实施例提供了一种交易验证方法,应用于区块链网络中的区块链节点,所述区块链节点上部署有用于运行智能合约的虚拟机,所述智能合约包括交易验证合约;以网络中的单个区块链节点为例,对数据上链过程进行说明,参考图2,图2是本发明实施例提供的一种交易验证方法的流程示意图,所述交易验证方法包括:
步骤S101,接收利用交易发起者的私钥签名后的交易,所述交易包括交易签名和交易数据;
具体地,以单个区块链节点,如区块节点A为例,在一个应用场景中,用户可以通过客户端向区块链节点A提交一笔交易(交易可以是具体的交易数据或者业务数据等)。而客户端在向区块链节点提交交易数据之前,可先采用非对称加密算法创建一个密钥对;此处的非对称加密算法可包括但不限于:Elgamal算法(一种非对称加密算法)、Rabin算法(一种非对称加密算法)、Diffie-Hellman算法(一种非对称加密算法)、ECC算法(椭圆曲线加密算法)。其中,密钥对包括一个公钥和一个私钥;公钥用于标识客户端的交易地址,需要说明的是,区块链网络中的交易地址是具有唯一性的,一个交易地址对应一个客户端(即用户);也就是说,公钥可标记客户端所指示的用户的用户身份。私钥用于客户端对交易数据进行签名。在创建密钥对之后,客户端可将密钥对中的公钥上传至区块链网络,以使得区块链网络将密钥对中的公钥作为该客户端的交易地址;而私钥由客户端保管。提交交易数据之前,客户端利用私钥对交易数据进行签名(相当于利用秘钥对交易数据进行加密)得到一段数字串(即交易签名),再将交易数据和交易签名一并提交给区块链节点A。实际上,区块链节点A可以接收到若干(不止一笔交易)交易和对应的交易签名。
步骤S102,通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;
具体地,利用区块链节点A上的虚拟机调用交易验证合约,以执行对交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,对区块链节点A接收到的所有交易均进行交易验证。
步骤S103,交易大小验证、gas价格验证、交易签名验证和交易数据验证通过,则打包所述交易生成待上链区块;
具体地,区块链节点A将若干个经过上述验证的交易数据和对应的交易签名打包成一个区块得到待上链区块。
步骤S104,将所述待上链区块添加到区块链中。
具体地,区块链节点A可以将待上链区块上链到区块链中。
由上述可知,通过设置交易验证合约,本发明实施例中,区块链节点在接收到交易时,可以通过虚拟机直接调用交易验证合约以完成对交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,不仅操作简单,而且对于交易验证逻辑的修改和维护十分简便,只需修改交易验证合约的代码,再完成代码上链,即可以一次性完成交易验证功能的更新和维护,有效提高效率,降低维护工作量;灵活性强,可以灵活变更交易验证逻辑。
进一步地,下面对步骤S104进行具体说明,步骤S104包括步骤S204至步骤S206,参考图3,图3是本发明实施例提供的一种交易验证方法的流程示意图;以区块链节点A为例,交易验证方法包括:
步骤S201,接收利用交易发起者的私钥签名后的交易,所述交易包括交易签名和交易数据;
步骤S202,通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;
步骤S203,交易大小验证、gas价格验证、交易签名验证和交易数据验证通过,则打包交易生成待上链区块;
其中,步骤S201至步骤S203的具体过程可参考步骤S101至步骤S103的描述,不再赘述。
步骤S204,执行对所述待上链区块的上链区块验证操作;
具体地,区块链节点A对待上链区块进行上链区块验证,此处可以是执行现有技术中对区块的验证操作,对具体的上链区块验证操作不做特别限定。优选地,所述上链区块验证操作包括区块大小验证操作,所述区块大小验证操作包括:
判断所述待上链区块的区块大小是否超过预设区块大小,若判断未超过,则所述待上链区块通过区块大小验证;否则,所述待上链区块未通过区块大小验证。
具体地,不同的区块链网络对可传递的区块的大小有不同的限制,因此,为了避免区块过大造成区块链网络的信息传递堵塞,不同的区块链网络可以预设不同的预设区块大小,具体的数值可以根据不同的区块链网络和不同的需求进行设置。当待上链区块的区块大小超过预设区块大小时,此时区块验证失败,该待上链区块的处理流程停止;而当待上链区块的区块大小小于预设区块大小时,此时表明待上链区块通过了区块大小验证,可以进入共识投票环节。
另外,可选地,对于待上链区块,在通过上链区块验证后,在对待上链区块进行共识投票之前,区块链节点A还可以通过虚拟机执行业务逻辑以完成特定的功能,包括账本校验、游戏奖罚等,账本校验是将待上链区块的交易与区块链节点A的账本上已有的交易进行比较,以判断该交易是否为重复的交易,当交易重复时,区块链节点A向客户端返回出错信息,提醒交易发起者出现重复的交易,需要修改交易;若判断待上链区块所有的交易均未与已有的交易重复时,进入对待上链区块的共识投票。
步骤S205,上链区块验证通过后,对所述待上链区块进行共识投票;
具体地,当待上链区块通过上链区块验证时,区块链节点A发起对待上链区块的共识投票;可以将待上链区块发送给区块链网络中的投票节点,由投票节点收集投票结果,投票节点将投票结果返回给区块链节点A。
步骤S206,在共识投票的票数满足预设条件时,将所述待上链区块添加到区块链中;
具体地,根据投票结果判断票数是否满足预设条件,当票数达到预设条件时,表明待上链区块通过了投票,可以将该待上链区块添加到区块链中。其中,对预设条件不做特别限定。进一步地,所述预设条件包括共识投票的票数大于或等于预设阈值,如总票数的3/4,确保待上链区块得到区块链网络中大多数节点的支持,提高上链区块的可信度。
步骤S207,将所述待上链区块广播给区块链网络中的其余区块链节点。
具体地,当区块链节点A将待上链区块添加到区块链中后,同时需要将该待上链区块广播给网络中的其余的区块链节点,即与区块链节点A相邻且有连接的区块链节点,例如图1中的区块链节点B和区块链节点C,区块链节点B和区块链节点C接收到待上链区块后,将该待上链区块写入自身的账本中,即完成上链;并继续向与自身相连的区块链节点广播该待上链区块,实现整个区块链网络的节点都将该待上链区块进行上链,保证网络中每个节点的账本完全相同。
进一步地,所述交易数据包括gas价格,对于区块链节点接收到的交易,所述对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,包括:
判断所述交易的大小是否超过预设交易大小,若判断为未超过,则所述交易通过交易大小验证,进入对所述交易的gas价格验证操作,否则,所述交易未通过交易大小验证。
具体地,为了避免单条交易的数据大小过大,而造成区块链网络堵塞,需要对交易的大小进行验证,即区块链网络可以设置一个预设交易大小,预设交易大小的具体数值可以根据不同的区块链网络和具体的需求进行设置,例如,预设交易大小为300字节、400字节等。当区块链节点接收到一笔交易时,首先对交易大小进行验证,将该交易的大小和预设交易大小进行对比,当该交易的大小小于预设交易大小时,此时该交易通过交易大小验证,可以进入进入对所述交易的gas价格验证操作,;反之,该交易的大小大于预设交易大小,此时,区块链节点向客户端返回交易大小异常信息,以提醒交易发起者修改交易,使交易的大小满足要求。
所述gas价格验证操作包括:
判断所述交易的gas价格是否超过预设gas价格,若判断为超过,则所述交易通过gas价格验证,进入对所述交易的交易签名验证操作,否则,所述交易未通过gas价格验证。
具体地,首先,gas对应于一个交易中以太坊的虚拟机(EVM)的实际运算步数。越简单的交易,需要的运算步数越少,gas亦会需要的少一点。反之,如果要计算一些复杂运算,gas的消耗量就会大。所以交易发起者提交的交易需要EVM进行的计算量越大,所需的gas消耗量就越高了。
而gas price(即gas价格)就是交易发起者愿意为一个单位的gas出多少Eth(Ether,以太币),一般用Gwei作单位。所以gas price越高,就表示交易中每运算一步,会支付更多的Eth。Gwei是10^-9Eth,也就是说1Gwei=0.000000001Eth。所以,当交易发起者设定gas price=20Gwei,就意味着交易发起者愿意为单步运算支付0.00000002Eth。
交易发起者设置gas价格用于奖励矿工打包自己发起的交易,gas价格越高,交易就越快被矿工处理。实际上,区块链网络也可以处理未设置gas价格的交易,即交易发起者也可以不设置gas价格,但是一般为了激励矿工积极挖矿,区块链网络会设定一个最低的gas价格,即预设gas价格,此价格的具体数值可以根据具体的需求和不同的区块链网络进行设置。因此,在区块链节点接收到一笔交易后,将根据交易发起者设定的gas价格判断其是否超过预设gas价格,若判断为超过,即设定的gas价格大于预设gas价格,则该交易通过gas价格验证,可以进入对所述交易的交易签名验证操作,;否则,交易的gas价格小于或等于预设gas价格,该交易未通过gas价格验证。
而为了确保交易是交易发起者自己发起的,且未被篡改的,需要对交易进行交易签名验证,所述交易签名验证操作包括:
根据所述交易签名获取交易发起者的公钥;
利用所述公钥对所述交易签名进行解密得到解密数据,并将所述解密数据与所述交易数据进行信息对比,对比相同,则所述交易通过交易签名验证,进入对所述交易的交易数据验证操作,否则,所述交易未通过交易签名验证。
具体地,由于区块中包括多个交易,因此,区块中,按照交易数据、对应的交易签名的对应关系进行存储。对区块中的每个交易均进行交易签名验证操作,以单个交易为例,由上述描述可知,交易签名为利用私钥加密交易数据后得到的一段数字串,获得交易后,由于通常会把公钥增加到交易里,因此,可以直接从交易数据中获得交易发起者(也即客户端)的公钥,再利用公钥对交易签名进行验证,即利用公钥对交易签名进行解密得到解密后的数据,再将解密后的数据与交易数据进行比对,比对相同则表明该交易数据是由交易发起者自己发送的,该交易数据未被篡改。另外,由于以太坊所用的ECDSA算法有一个很有意思的特性:可以从签名推导出公钥,以太坊的交易格式只包含了签名,验证交易签名前,先用算法从交易签名推导出公钥,然后再进行验签。
另外,为了保证交易数据不存在敏感词汇数据,需要对交易进行交易数据验证,所述交易数据验证操作包括:
根据预设敏感词汇数据库对所述交易数据进行数据验证,若所述交易数据包含敏感词汇数据,则所述交易未通过交易数据验证,或者,则对所述交易数据进行敏感词汇数据过滤;否则,所述交易通过交易数据验证。
具体地,需要预先在虚拟机中建立敏感词汇数据库(即预设敏感词汇数据库),预设敏感词汇数据库包括各种敏感词汇,例如用户的借款信息词汇,包括借款时间、借款金额、借款对象,又比如用户的出借信息词汇,包括出借时间、出借金额、出借对象。对于每个交易数据,虚拟机通过预设敏感词汇数据库进行数据验证,当判断交易数据中包括预设敏感词汇数据库中的敏感词汇数据时,该交易的数据验证失败,停止处理该交易;或者交易数据验证失败时,将交易数据中的敏感词汇进行删除过滤,形成新的交易数据,根据新的交易数据进入下一处理步骤。确保区块链网络中的交易数据不含敏感词汇数据,保证交易发起者的信息安全。
更进一步地,本发明实施例的交易验证方法还包括交易验证合约的部署方法,所述部署方法包括:
将交易验证逻辑转换成交易验证合约代码;
将所述交易验证合约代码编译成二进制代码;
将所述二进制代码打包成交易并发送至区块链网络中,所述交易被添加至区块链中则完成交易验证合约的部署。
具体地,将对交易的验证逻辑转换成交易验证合约代码,并将交易验证合约代码编译成二进制代码,最后将二进制代码打包成交易并发送至区块链网络中,以使该交易被添加至区块链上,即记录到每个区块链节点的账本中,至此完成对交易验证合约的部署。相同地,虚拟机在调用交易验证合约时,也是通过创建一个新的交易以调用交易验证合约。
其中,所述交易验证合约的代码包括预设验证字段和验证操作字段,所述预设验证字段用于存储与待验证数据进行比较的预设数据,例如上述的预设交易大小、预设gas价格、交易数据(在每次交易签名验证前,先获取当前的交易数据作为预设验证字段)、以及预设敏感词汇数据库,作为验证比较的基础;而所述验证操作字段指示所述待验证数据与所述预设验证字段的数据之间的验证逻辑,例如,对交易进行验证操作时的步骤跳转逻辑可以设定,例如按照交易大小、gas价格、交易签名、交易数据的顺序进行验证;则以交易大小验证为例,其验证操作字段指示的验证逻辑为当前交易的大小a小于预设交易大小b,则当前交易通过交易大小验证,进入gas价格验证;而a大于b,则当前交易未通过交易大小验证,返回交易验证失败结果至客户端,以告知交易发起者。
更进一步地,当所述交易为转账交易时,所述交易数据还包括转账方的虚拟资产地址、接收方地址和转账金额;
参考图2,接收交易之后,在所述通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作之前,还包括:
判断所述转账方的虚拟资产地址的虚拟资产余额是否大于所述转账金额,若判断结果为是,则进入对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;否则,向客户端发送提示信息,以提示所述交易发起者交易异常。
通过增加一个转账金额验证步骤,避免无效的交易进入验证操作,进而消耗区块链节点的资源,提高区块链的运行效率。
进一步地,所述交易数据包括交易发起时间,在接收交易后,交易验证之前,所述方法还包括:
根据所述交易发起者的优先级的赋值和所述交易的交易发起时间的乘积,确定交易的交易验证操作顺序,其中,所述交易发起者的优先级越高,优先级的赋值数值越小;所述交易对应的乘积的数值越小,越早对所述交易进行交易大小验证、gas价格验证、交易签名验证和交易数据验证。
具体地,对所有交易发起者设定优先级顺序,区块链网络开启时,可以按照交易的发起顺序设定对应的交易发起者的初始优先级,例如依次有交易发起者A、B和C发起交易,则按照交易发起者A、B和C的顺序设定初始优先级,分别赋值为1、2和3。按照初始优先级的赋值和交易发起时间的乘积,确定交易的交易验证操作顺序,其中,交易发起时间按照24小时制,根据乘积的大小确定交易被执行验证操作的顺序,而且,每24小时就清除乘积数据一次,并向客户端发送消息,以提示交易发起者交易失败,需要重新提交交易。可以使得优先级别高的交易优先被处理,而在一天之中,白天的交易相比于夜晚的交易的紧急程度和重要程度更高,则可以更优先被处理。
更进一步地,可以通过预设条件调整交易发起者的初始优先级,例如,可以获取预设时间内的每个交易发起者发起的交易数量,按照所述交易发起者在预设时间内发起的交易数量越大,所述交易发起者的优先级越高的思路调整初始优先级,比如,预设时间为48小时内,交易发起者A、B和C的交易数量分别为20条、60条和100条,则将交易发起者A、B和C的初始优先级将被调整为3、2和1,根据调整后的初始优先级和交易发起时间,确定交易被执行验证的顺序,交易数量越多,表明对应的交易发起者的重要程度和活跃程度更高,相应的交易需要被优先处理,提升用户体验,激励交易。
基于上述交易验证方法实施例的描述,本发明实施例还公开了一种区块链节点,所述区块链节点上部署有用于运行智能合约的虚拟机,所述智能合约包括交易验证合约;参考图4,图4是本发明实施例提供的一种区块链节点的结构示意图,区块链节点包括交易接收模块11、交易验证模块12、区块生成模块13、上链模块14和广播模块15,其中:
交易接收模块11,用于接收利用交易发起者的私钥签名后的交易,所述交易包括交易签名和交易数据;
交易验证模块12,用于通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;
区块生成模块13,用于交易大小验证、gas价格验证、交易签名验证和交易数据验证通过,则打包交易生成待上链区块;
上链模块14,用于将所述待上链区块添加到区块链中;
广播模块15,将所述待上链区块广播给区块链网络中的其余区块链节点。
对于交易接收模块11、交易验证模块12、区块生成模块13、上链模块14和广播模块15的具体功能实现,可参考步骤S101至步骤S106、步骤S207的描述,不再赘述。
本发明实施例的区块链节点通过增加交易验证合约作为智能合约,接收到交易后,通过在虚拟机上运行交易验证合约以实现对交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,不仅可以实现区块链节点的交易验证功能,而且对交易验证功能进行维护更新时,只需修改交易验证合约代码并完成代码上链,即可以变更交易验证功能,灵活性强,交易验证功能的维护更新流程方便高效,区块链节点无需停机,保证区块链网络的正常运行。
进一步地,参考图5,图5是本发明实施例提供的一种区块链节点中上链模块的结构示意图;上链模块14包括区块验证子模块21、投票子模块22和添加子模块23,其中:
区块验证子模块21,用于执行对所述待上链区块的上链区块验证操作;
投票子模块22,用于上链区块验证通过后,对所述待上链区块进行共识投票;
添加子模块23,用于在共识投票的票数满足预设条件时,将所述待上链区块添加到区块链中;
区块验证子模块21、投票子模块22和添加子模块23的具体功能实现可参考步骤S204至步骤S206的描述,不再赘述。
进一步地,所述交易为转账交易,所述交易数据还包括转账方的虚拟资产地址、接收方地址和转账金额;此时,在所述交易接收模块11和所述交易验证模块12之间,所述区块链节点还包括:
转账金额验证模块,用于判断所述转账方的虚拟资产地址的虚拟资产余额是否大于所述转账金额,若判断结果为是,则进入对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;否则,向所述交易发起者发送提示信息,以提示交易出错。
更进一步地,所述交易数据包括交易发起时间,在所述交易接收模块11和所述交易验证模块12之间,所述区块链节点还包括:
验证顺序确定模块,用于根据所述交易发起者的优先级的赋值和所述交易的交易发起时间的乘积,确定交易的交易验证操作顺序,其中,所述交易发起者的优先级越高,优先级的赋值数值越小;所述交易对应的乘积的数值越小,越早对所述交易进行交易大小验证、gas价格验证、交易签名验证和交易数据验证。
其中,所述交易发起者在预设时间内发起的交易数量越大,所述交易发起者的优先级越高。
转账金额验证模块和验证顺序确定模块的具体功能实现可参考上述交易验证方法的实施例中的描述,不再赘述。
最后,所述交易验证合约的代码包括预设验证字段和验证操作字段,所述预设验证字段用于存储与待验证数据进行比较的预设数据,所述验证操作字段指示所述待验证数据与所述预设验证字段的数据之间的验证逻辑。针对预设验证字段和验证操作字段的描述、以及交易验证合约的部署过程可参考上述交易验证方法实施例中的描述,不再赘述。
进一步地,请参见图6,是本发明实施例提供的一种终端设备的结构示意图。如图6所示,上述图4和图5中的区块链节点可以应用于所述终端设备1000,所述终端设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,所述终端设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图6所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图6所示的终端设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
接收利用交易发起者的私钥签名后的交易,所述交易包括交易签名和交易数据;
通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;
交易大小验证、gas价格验证、交易签名验证和交易数据验证通过,则打包所述交易生成待上链区块;
将所述待上链区块添加到区块链中。
在一个实施例中,所述交易数据包括gas价格,所述对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,包括:
判断所述交易的大小是否超过预设交易大小,若判断为未超过,则所述交易通过交易大小验证,进入对所述交易的gas价格验证操作,否则,所述交易未通过交易大小验证;
所述gas价格验证操作包括:
判断所述交易的gas价格是否超过预设gas价格,若判断为超过,则所述交易通过gas价格验证,进入对所述交易的交易签名验证操作,否则,所述交易未通过gas价格验证;
所述交易签名验证操作包括:
根据所述交易签名获取交易发起者的公钥;
利用所述公钥对所述交易签名进行解密得到解密数据,并将所述解密数据与所述交易数据进行信息对比,对比相同,则所述交易通过交易签名验证,进入对所述交易的交易数据验证操作,否则,所述交易未通过交易签名验证;
所述交易数据验证操作包括:
根据预设敏感词汇数据库对所述交易数据进行数据验证,若所述交易数据包含敏感词汇数据,则所述交易未通过交易数据验证,或者,则对所述交易数据进行敏感词汇数据过滤;否则,所述交易通过交易数据验证。
在一个实施例中,所述交易为转账交易,所述交易数据还包括转账方的虚拟资产地址、接收方地址和转账金额;
在所述通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作之前,还包括:
判断所述转账方的虚拟资产地址的虚拟资产余额是否大于所述转账金额,若判断结果为是,则进入对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;否则,向所述交易发起者发送提示信息,以提示交易出错。
在一个实施例中,所述交易验证合约的代码包括预设验证字段和验证操作字段,所述预设验证字段用于存储与待验证数据进行比较的预设数据,所述验证操作字段指示所述待验证数据与所述预设验证字段的数据之间的验证逻辑。
在一个实施例中,所述交易数据包括交易发起时间,所述方法还包括:
根据所述交易发起者的优先级的赋值和所述交易的交易发起时间的乘积,确定交易的交易验证操作顺序,其中,所述交易发起者的优先级越高,优先级的赋值数值越小;所述交易对应的乘积的数值越小,越早对所述交易进行交易大小验证、gas价格验证、交易签名验证和交易数据验证。所述交易发起者在预设时间内发起的交易数量越大,所述交易发起者的优先级越高。
终端设备1000的具体工作过程可参考上述区块链节点的描述,不再赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的区块链节点所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图2到图3所对应实施例中对所述交易验证方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (10)
1.一种交易验证方法,其特征在于,应用于区块链网络中的区块链节点,所述区块链节点上部署有用于运行智能合约的虚拟机,所述智能合约包括交易验证合约;所述交易验证方法包括:
接收利用交易发起者的私钥签名后的交易,所述交易包括交易签名和交易数据;
通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;
交易大小验证、gas价格验证、交易签名验证和交易数据验证通过,则打包所述交易生成待上链区块;
将所述待上链区块添加到区块链中。
2.根据权利要求1所述的方法,其特征在于,所述交易数据包括gas价格,所述对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作,包括:
判断所述交易的大小是否超过预设交易大小,若判断为未超过,则所述交易通过交易大小验证,进入对所述交易的gas价格验证操作,否则,所述交易未通过交易大小验证;
所述gas价格验证操作包括:
判断所述交易的gas价格是否超过预设gas价格,若判断为超过,则所述交易通过gas价格验证,进入对所述交易的交易签名验证操作,否则,所述交易未通过gas价格验证;
所述交易签名验证操作包括:
根据所述交易签名获取交易发起者的公钥;
利用所述公钥对所述交易签名进行解密得到解密数据,并将所述解密数据与所述交易数据进行信息对比,对比相同,则所述交易通过交易签名验证,进入对所述交易的交易数据验证操作,否则,所述交易未通过交易签名验证;
所述交易数据验证操作包括:
根据预设敏感词汇数据库对所述交易数据进行数据验证,若所述交易数据包含敏感词汇数据,则所述交易未通过交易数据验证,或者,则对所述交易数据进行敏感词汇数据过滤;否则,所述交易通过交易数据验证。
3.根据权利要求1所述的方法,其特征在于,所述交易为转账交易,所述交易数据还包括转账方的虚拟资产地址、接收方地址和转账金额;
在所述通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作之前,还包括:
判断所述转账方的虚拟资产地址的虚拟资产余额是否大于所述转账金额,若判断结果为是,则进入对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;否则,向所述交易发起者发送提示信息,以提示交易出错。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述交易验证合约的代码包括预设验证字段和验证操作字段,所述预设验证字段用于存储与待验证数据进行比较的预设数据,所述验证操作字段指示所述待验证数据与所述预设验证字段的数据之间的验证逻辑。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述交易数据包括交易发起时间,所述方法还包括:
根据所述交易发起者的优先级的赋值和所述交易的交易发起时间的乘积,确定交易的交易验证操作顺序,其中,所述交易发起者的优先级越高,优先级的赋值数值越小;所述交易对应的乘积的数值越小,越早对所述交易进行交易大小验证、gas价格验证、交易签名验证和交易数据验证。
6.根据权利要求5所述的方法,其特征在于,所述交易发起者在预设时间内发起的交易数量越大,所述交易发起者的优先级越高。
7.一种区块链节点,其特征在于,所述区块链节点上部署有用于运行智能合约的虚拟机,所述智能合约包括交易验证合约;所述区块链节点包括:
交易接收模块,用于接收利用交易发起者的私钥签名后的交易,所述交易包括交易签名和交易数据;
交易验证模块,用于通过所述虚拟机调用所述交易验证合约,以执行对所述交易的交易大小验证操作、gas价格验证操作、交易签名验证操作和交易数据验证操作;
区块生成模块,用于交易大小验证、gas价格验证、交易签名验证和交易数据验证通过,则打包交易生成待上链区块;
上链模块,用于将所述待上链区块添加到区块链中。
8.根据权利要求7所述的区块链节点,其特征在于,所述交易数据包括交易发起时间,所述区块链节点还包括:
验证顺序确定模块,用于根据所述交易发起者的优先级的赋值和所述交易的交易发起时间的乘积,确定交易的交易验证操作顺序,其中,所述交易发起者的优先级越高,优先级的赋值数值越小;所述交易对应的乘积的数值越小,越早对所述交易进行交易大小验证、gas价格验证、交易签名验证和交易数据验证。
9.一种终端设备,其特征在于,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1-6任一项所述的交易验证方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-6任一项所述的交易验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910909878.XA CN110599177A (zh) | 2019-09-23 | 2019-09-23 | 一种交易验证方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910909878.XA CN110599177A (zh) | 2019-09-23 | 2019-09-23 | 一种交易验证方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110599177A true CN110599177A (zh) | 2019-12-20 |
Family
ID=68863111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910909878.XA Pending CN110599177A (zh) | 2019-09-23 | 2019-09-23 | 一种交易验证方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110599177A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111242618A (zh) * | 2020-01-08 | 2020-06-05 | 成都库珀区块链科技有限公司 | 一种基于区块链合约技术的私钥保管方法及装置 |
CN111343142A (zh) * | 2020-01-22 | 2020-06-26 | 腾讯科技(深圳)有限公司 | 一种基于区块链网络的数据处理方法、装置及存储介质 |
CN111488626A (zh) * | 2020-04-09 | 2020-08-04 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及介质 |
CN111562906A (zh) * | 2020-04-15 | 2020-08-21 | 杭州云象网络技术有限公司 | 一种基于Noesis逻辑的智能合约开发与验证方法 |
CN112070608A (zh) * | 2020-08-20 | 2020-12-11 | 财付通支付科技有限公司 | 信息处理方法、装置、介质及电子设备 |
CN112597762A (zh) * | 2020-12-04 | 2021-04-02 | 广东省科学院智能制造研究所 | 一种具有智能合约数据监管功能的区块链系统及监管方法 |
CN112991058A (zh) * | 2021-02-19 | 2021-06-18 | 区块动力(广州)科技有限公司 | 一种基于区块链进行交易的验证方法及系统 |
CN113592645A (zh) * | 2021-07-02 | 2021-11-02 | 中国人民银行数字货币研究所 | 数据验证的方法和装置 |
US20210383371A1 (en) * | 2020-06-05 | 2021-12-09 | Hon Hai Precision Industry Co., Ltd. | Method of recording transactions based on blockchain and electronic device using the same |
CN114830158A (zh) * | 2019-12-23 | 2022-07-29 | 伊斯兰开发银行研究所 | 用于分布式计算系统中的交易验证的方法和系统 |
TWI810464B (zh) * | 2020-06-05 | 2023-08-01 | 鴻海精密工業股份有限公司 | 基於區塊鏈的交易方法、裝置及電子設備 |
-
2019
- 2019-09-23 CN CN201910909878.XA patent/CN110599177A/zh active Pending
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114830158B (zh) * | 2019-12-23 | 2023-04-04 | 伊斯兰开发银行研究所 | 用于分布式计算系统中的交易验证的方法和系统 |
CN114830158A (zh) * | 2019-12-23 | 2022-07-29 | 伊斯兰开发银行研究所 | 用于分布式计算系统中的交易验证的方法和系统 |
CN111242618A (zh) * | 2020-01-08 | 2020-06-05 | 成都库珀区块链科技有限公司 | 一种基于区块链合约技术的私钥保管方法及装置 |
CN111242618B (zh) * | 2020-01-08 | 2023-05-30 | 成都库珀创新科技有限公司 | 一种基于区块链合约技术的私钥保管方法及装置 |
CN111343142A (zh) * | 2020-01-22 | 2020-06-26 | 腾讯科技(深圳)有限公司 | 一种基于区块链网络的数据处理方法、装置及存储介质 |
CN111488626A (zh) * | 2020-04-09 | 2020-08-04 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及介质 |
CN111562906A (zh) * | 2020-04-15 | 2020-08-21 | 杭州云象网络技术有限公司 | 一种基于Noesis逻辑的智能合约开发与验证方法 |
CN111562906B (zh) * | 2020-04-15 | 2023-06-06 | 杭州云象网络技术有限公司 | 一种基于Noesis逻辑的智能合约开发与验证方法 |
US20210383371A1 (en) * | 2020-06-05 | 2021-12-09 | Hon Hai Precision Industry Co., Ltd. | Method of recording transactions based on blockchain and electronic device using the same |
TWI810464B (zh) * | 2020-06-05 | 2023-08-01 | 鴻海精密工業股份有限公司 | 基於區塊鏈的交易方法、裝置及電子設備 |
CN112070608A (zh) * | 2020-08-20 | 2020-12-11 | 财付通支付科技有限公司 | 信息处理方法、装置、介质及电子设备 |
CN112070608B (zh) * | 2020-08-20 | 2024-03-19 | 财付通支付科技有限公司 | 信息处理方法、装置、介质及电子设备 |
CN112597762A (zh) * | 2020-12-04 | 2021-04-02 | 广东省科学院智能制造研究所 | 一种具有智能合约数据监管功能的区块链系统及监管方法 |
CN112597762B (zh) * | 2020-12-04 | 2024-03-08 | 广东省科学院智能制造研究所 | 一种具有智能合约数据监管功能的区块链系统及监管方法 |
CN112991058A (zh) * | 2021-02-19 | 2021-06-18 | 区块动力(广州)科技有限公司 | 一种基于区块链进行交易的验证方法及系统 |
CN112991058B (zh) * | 2021-02-19 | 2023-09-22 | 区块动力(广州)科技有限公司 | 一种基于区块链进行交易的验证方法及系统 |
CN113592645A (zh) * | 2021-07-02 | 2021-11-02 | 中国人民银行数字货币研究所 | 数据验证的方法和装置 |
CN113592645B (zh) * | 2021-07-02 | 2023-11-14 | 中国人民银行数字货币研究所 | 数据验证的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110599177A (zh) | 一种交易验证方法及相关设备 | |
CN110442652B (zh) | 一种基于区块链的跨链数据处理方法及装置 | |
CN111629039B (zh) | 一种区块链共识方法及客户端、背书节点、排序节点 | |
WO2020258847A1 (zh) | 基于处理模块跨链发送可认证消息的方法和装置 | |
CN110597916B (zh) | 基于区块链的数据处理方法、装置、存储介质及终端 | |
CN110557403B (zh) | 基于区块链的资源分配方法、装置、存储介质及节点设备 | |
CN111818185B (zh) | 启动智能合约的方法及装置、电子设备、存储介质 | |
CN110601896B (zh) | 一种基于区块链节点的数据处理方法以及设备 | |
CN112600664B (zh) | 延时交易生成方法、延时交易执行方法、设备和存储介质 | |
CN110599175A (zh) | 一种区块处理方法及相关设备 | |
WO2021204044A1 (zh) | 区块链数据的订正 | |
LU102556B1 (en) | Blockchain-enhanced open internet of things access architecture | |
CN113645278B (zh) | 一种区块链的跨链消息传输方法、设备、存储介质 | |
CN114265898A (zh) | 数据处理方法、装置、设备和存储介质 | |
CN114092253A (zh) | 一种区块链批次交易方法、装置、设备及可读存储介质 | |
CN114445073A (zh) | 计算机实现的方法、信息处理装置以及存储介质 | |
CN116703601B (zh) | 基于区块链网络的数据处理方法、装置、设备及存储介质 | |
CN112995167A (zh) | 基于Kafka机制的用电信息采集方法、区块链网络及用户端 | |
CN113128998B (zh) | 一种区块链系统的业务处理方法、装置及系统 | |
US20230259930A1 (en) | Cross-chain transaction processing method and apparatus, electronic device, and storage medium | |
CN113362064B (zh) | 多重签名方法、计算机设备和存储介质 | |
CN114266665B (zh) | 合约多主链跨链方法、设备和存储介质 | |
CN113810185A (zh) | 一种抗陷门泄露的链上数据修复系统及方法 | |
CN113064899A (zh) | 资产类证券型通证交易凭证的存储方法、装置和电子设备 | |
CN111161070A (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 |