CN112581110A - 燃料代扣方法及装置、电子设备、存储介质 - Google Patents
燃料代扣方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN112581110A CN112581110A CN202110197412.9A CN202110197412A CN112581110A CN 112581110 A CN112581110 A CN 112581110A CN 202110197412 A CN202110197412 A CN 202110197412A CN 112581110 A CN112581110 A CN 112581110A
- Authority
- CN
- China
- Prior art keywords
- fuel
- account
- deduction
- blockchain
- transaction
- 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
- 239000000446 fuel Substances 0.000 title claims abstract description 364
- 238000000034 method Methods 0.000 title claims abstract description 62
- 239000003999 initiator Substances 0.000 claims abstract description 152
- 238000012795 verification Methods 0.000 claims abstract description 40
- 238000005516 engineering process Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 14
- 238000007726 management method Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 9
- 230000003993 interaction Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
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/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
-
- 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
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Public Health (AREA)
- Technology Law (AREA)
- Water Supply & Treatment (AREA)
- Data Mining & Analysis (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- Tourism & Hospitality (AREA)
- Computing Systems (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本说明书提供一种燃料代扣方法及装置、电子设备、存储介质;该方法应用于区块链系统对应的网关设备,该方法可以包括:响应于接收到的交易请求,确定请求发起方对应的发起方账户;获取燃料代扣许可,所述燃料代扣许可用于证明燃料代扣账户允许所述区块链系统通过扣除所述燃料代扣账户中的区块链燃料,以用于执行对应于所述交易请求的区块链交易;将包含所述燃料代扣许可且对应于所述交易请求的区块链交易发送至所述区块链系统,以由所述区块链系统在对所述燃料代扣许可验证成功的情况下,从所述燃料代扣账户中扣除执行所述区块链交易所需的区块链燃料。
Description
技术领域
本说明书涉及区块链领域,特别涉及一种燃料代扣方法及装置、电子设备、存储介质。
背景技术
区块链技术(也被称为,分布式账本技术)是一种去中心化的分布式数据库技术,具有去中心化、公开透明、不可篡改、可信任等多种特点,适用于诸多对数据可靠性具有高需求的应用场景中。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种燃料代扣方法及装置、电子设备、存储介质。
本说明书一个或多个实施例提供技术方案如下:
根据本说明书一个或多个实施例的第一方面,提出了一种燃料代扣方法,应用于区块链系统对应的网关设备,包括:
响应于接收到的交易请求,确定请求发起方对应的发起方账户;
获取燃料代扣许可,所述燃料代扣许可用于证明燃料代扣账户允许所述区块链系统通过扣除所述燃料代扣账户中的区块链燃料,以用于执行对应于所述交易请求的区块链交易;
将包含所述燃料代扣许可且对应于所述交易请求的区块链交易发送至所述区块链系统,以由所述区块链系统在对所述燃料代扣许可验证成功的情况下,从所述燃料代扣账户中扣除执行所述区块链交易所需的区块链燃料。
根据本说明书一个或多个实施例的第二方面,提出了一种燃料代扣装置,应用于区块链系统对应的网关设备,包括:
确定单元,响应于接收到的交易请求,确定请求发起方对应的发起方账户;
获取单元,获取燃料代扣许可,所述燃料代扣许可用于证明燃料代扣账户允许所述区块链系统通过扣除所述燃料代扣账户中的区块链燃料,以用于执行对应于所述交易请求的区块链交易;
发送单元,将包含所述燃料代扣许可且对应于所述交易请求的区块链交易发送至所述区块链系统,以由所述区块链系统在对所述燃料代扣许可验证成功的情况下,从所述燃料代扣账户中扣除执行所述区块链交易所需的区块链燃料。
根据本说明书一个或多个实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如上述第一方面所述的方法。
根据本说明书一个或多个实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述第一方面所述方法的步骤。
附图说明
图1是本说明书一示例性实施例示出的一种燃料代扣方法的流程图。
图2是本说明书一示例性实施例示出的一种燃料代扣方法的交互图。
图3是本说明书一示例性实施例示出的另一种燃料代扣方法的交互图。
图4是本说明书一示例性实施例示出的又一种燃料代扣方法的交互图。
图5是本说明书一示例性实施例示出的一种电子设备的结构示意图。
图6是本说明书一示例性实施例示出的一种燃料代扣装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
区块链技术(也被称为,分布式账本技术)是一种去中心化的分布式数据库技术,具有去中心化、公开透明、不可篡改、可信任等多种特点,适用于诸多对数据可靠性具有高需求的应用场景中。
鉴于区块链技术存在上述优势,越来越多的企业和个人采用区块链技术进行数据存储。在区块链领域中,当区块链系统需要执行用户发起的区块链交易时,需要消耗相应数额的区块链燃料。这种在执行交易时扣除燃料的方式,可以对区块链系统中的工作量进行计数,并抬高恶意交易的执行门槛(如在检测到交易被重复执行而导致消耗过多区块链燃料时,停止执行该交易)。区块链燃料通常被存储于用户注册于区块链系统的区块链账号中,其获取方式通常与区块链系统的类型相关。
例如,在类似于以太坊的区块链系统中,账户中存储的区块链燃料可以由该账户通过挖矿得到。再例如,在类似于“致力于区块链技术的科技公司”的区块链技术提供方提供的区块链系统中,账户中存储的区块链燃料可以通过资产置换的方式补充。
在相关技术中,当用户需要在区块链系统中执行区块链交易时,消耗的均为自身所注册账户中的区块链燃料。这种方式对于个体用户而言,通常可以满足用户的交易执行需求。然而,在实际应用中,区块链技术使用方也可能为企业、政府机构等集体,在该情况下,使用方各个成员账户中存储的区块链燃料通常由集体分配。若仍采用上述燃料扣除方式,很可能出现某些成员账户中的区块链燃料不足,而导致无法执行交易的情况;以及某些成员账户中的区块链燃料过剩的情况。
如果要避免上述情况,必然需要根据各个成员在集体中所担任的职位、所负责的业务等信息预测各个成员账户所需消耗的区块链燃料,以进行准确分配,增大了燃料分配的复杂性。然而,在实际应用中,对于集体中的成员而言,需要通过区块链系统完成的业务量通常是不稳定的,通常难以准确预测各个成员账户所需消耗的区块链燃料。可见,相关技术中的燃料扣除方式,增大了集体统筹管理区块链燃料的难度。
为此,本说明书提出了一种燃料代扣方法,使得各个成员在区块链系统中执行区块链交易时,无需从自身账户中扣除区块链燃料,即可完成区块链交易的执行,避免了相关技术中由于需要在各个成员的账户中存储区块链燃料,而增大燃料统筹管理难度的问题。
图1是本说明书一示例性实施例示出的一种燃料代扣方法的流程图。该方法应用于区块链系统对应的网关设备,该方法可以包括以下步骤:
步骤102,响应于接收到的交易请求,确定请求发起方对应的发起方账户。
由上述内容可知,由于相关技术在区块链系统中执行任一成员发起的区块链交易时,扣除的为该成员在区块链系统中所注册账户中的区块链燃料,使得区块链技术使用方需要为各个成员账户分别配置区块链燃料,加剧了区块链燃料的统筹管理难度。
为此,本说明书在执行任一成员发起的区块链交易时,不再扣除该成员所注册账户中的区块链燃料,而是从该成员所对应的代扣燃料账户中扣除区块链燃料。在实际操作中,可以预先建立各个成员账户与燃料代扣账户之间的关系,以便在执行区块链交易时,查找与发起方账户对应燃料代扣账户进行燃料扣除。
应当理解的是,由于本说明书从燃料代扣账户中扣除执行各个成员发起的区块链交易所需的燃料。因此,本说明书只需保证燃料代扣账户中的区块链燃料充足,即可满足各个成员执行区块链交易的需求,避免了相关技术中针对区块链燃料的统筹管理难度较高的问题。
步骤104,获取燃料代扣许可,所述燃料代扣许可用于证明燃料代扣账户允许所述区块链系统通过扣除所述燃料代扣账户中的区块链燃料,以用于执行对应于所述交易请求的区块链交易。
在本说明书中,区块链技术使用方的成员可以通过所持有的客户端,向上述网关设备发起交易请求。由于对应于该交易请求的区块链交易被区块链系统执行时,扣除的为燃料代扣账户中的区块链燃料。那么,首先需要确定的即为:与交易请求的发起方账户对应的燃料代扣账户。
在一实施例中,网关设备可以根据本地记录的若干燃料代扣账户与其下辖账户的对应关系确定发起方账户对应的燃料代扣账户;或者,向维护有若干燃料代扣账户与其下辖账户的对应关系的网关数据库发送代扣账户获取请求,以由该网关数据库基于维护的对应关系确定发起方账户对应的燃料代扣账户。上述燃料代扣账户与其下辖账户之间的对应关系可由相关技术人员根据各个成员账户之间的预先设定,具体如何设定,可由本领域技术人员根据实际情况确定,本说明书对此不作限制。
在另一实施例中,上述区块链技术使用方为一企业。那么,可以优先确定发起方账户所属的企业部门,并将该企业部门对应的管理账户作为该发起方账户对应的燃料代扣账户。在实际操作中,可以预先存储上述企业中各个企业员工账户所属的企业部门、以及企业部门与企业管理账户之间的对应关系,那么,当任一企业员工通过自己的企业员工账户发起交易请求时,即可在查询得到自身所属企业部门的基础上,根据该对应关系确定出相应的燃料代扣账户。应当理解的是,本实施例应用于企业场景下,相当于根据企业中的部门结构为各个员工账户分配燃料代扣账户。
在又一实施例中,交易请求的发起方可能知晓自身所对应的燃料代扣账户。那么,该发起方即可在交易请求中添加该燃料代扣账户的相关信息,以由网关设备在接收到交易请求后,从中读取发起方账户对应的燃料代扣账户。
当然,上述多个实施例均是示意性的,具体如何确定发起方账户对应的燃料代扣账户可由本领域技术人员根据实际需求确定,本说明书对此不作限制。
在本说明书中,除了需要确定与发起方账户对应的燃料代扣账户以外,还需向区块链系统证明该燃料代扣账户允许通过扣除自身账户中的区块链燃料,以用于执行发起方账户发起的区块链交易。
因此,本说明书在确定交易请求对应的发起方账户后,除了获取对应于该发起方账户的燃料代扣账户以外,还需获取“用于证明燃料代扣账户允许通过扣除自身维护的区块链燃料,以用于执行对应于该交易请求的区块链交易”的燃料代扣许可。
在本说明书中,燃料代扣许可可以根据实际需求采用不同的形式。
在一实施例中,燃料代扣许可可以为经由燃料代扣账户的身份私钥签名的第一签名。具体的,网关设备可以向维护有燃料代扣账户的身份私钥的第一签名设备发送对应于上述交易请求的第一交易数据;第一签名设备在接收到该第一交易数据后,即可通过维护的身份私钥对该第一交易数据进行签名,以将得到第一签名返回至网关设备;网关设备则可以将接收到的第一签名作为燃料代扣许可。
在本实施例中,包含第一签名的区块链交易被发送至区块链系统后,区块链系统只需通过燃料代扣账户的身份公钥对该第一签名进行验签,即可判断燃料代扣账户是否允许区块链系统通过扣除该燃料代扣账户中的区块链燃料,以用于执行接收到的区块链交易。
本实施例中的第一签名设备既可以为燃料代扣账户所属方使用的客户端,也可以为获得燃料代扣账户所属方签名权限的其他设备,例如,该其他设备可以为秘钥管理服务中心(KMS,Key Management Service Center)。
本实施例中的第一交易数据通常与交易请求的具体形式相关。在一种情况下,网关设备接收到的交易请求中包含用于生成区块链交易的业务数据,在该情况下,既可以直接将交易请求中包含的业务数据作为第一交易数据;也可以在基于该交易请求生成区块链交易后,将生成的区块链交易作为第一交易数据;还可以将该业务数据的哈希值、或者生成的区块链交易的哈希值作为第一交易数据。在另一种情况下,网关设备接收到的交易请求已经为区块链交易,在该情况下,可以将该区块链交易作为第一交易数据,或者将该区块链交易的哈希值作为第一交易数据。应当理解的是,只需“能够表征对应于该交易请求的区块链交易,且与该区块链交易唯一对应”的数据均可作为第一交易数据,具体将何种数据作为第一交易数据,可由本领域技术人员根据实际需求确定,本说明书对此不作限制。
在本实施例中,被发送至区块链系统的区块链交易还可以包括经由发起方账户的身份私钥签名的第二签名。在此基础上,区块链系统在接收到区块链交易后,还可以进一步验证发起方账户的身份是否可靠,以避免由于发起方身份不可靠而误扣区块链燃料。在实际操作中,网关设备可以向维护有发起方账户的身份私钥的第二签名设备发送对应于上述交易请求的第二交易数据;第二签名设备在接收到该第二交易数据后,即可通过维护的发起方账户的身份私钥对该第二交易数据进行签名,并将得到第二签名返回至网关设备。
在一种情况下,“获取第二签名的过程”与“获取第一签名的过程”可以相互独立。
例如,可以同时向第一签名设备发送第一交易数据、向第二签名设备发送第二交易数据,以使第一签名设备和第二签名设备分别进行私钥签名(当然,两次签名也可以先后执行,此处以同时为例,仅仅是为了说明两过程独立执行)。在该情况下,第二交易数据与第一交易数据相类似,可以为“基于所述交易请求生成的区块链交易;所述交易请求中包含的业务数据;基于所述交易请求生成的区块链交易的哈希值;所述交易请求中包含的业务数据的哈希值”中的任一。由于两过程相互独立,因此,第一交易数据和第二交易数据既可以相同,也可以不同,例如,两者均可以为交易请求中包含的业务数据的哈希值。
在另一种情况下,“获取第二签名的过程”与“获取第一签名的过程”并非相互独立。
例如,网关设备可以直接将经由第一签名设备签名得到的第一签名,作为第二交易数据发送至第二签名设备,以由第二签名设备通过发起方账户的身份私钥进行签名。在该举例中,由于第一签名被作为燃料代扣许可,相当于将燃料代扣许可作为第二交易数据,进行发起方账户的身份私钥的签名。
不难理解的是,该举例是通过“燃料代扣账户的身份私钥”和“发起方账户的身份私钥”依次对第一交易数据进行签名,进而得到了第二签名。相应的,网关设备可以将包含第二签名的区块链交易发送至区块链系统。区块链系统则可以依次通过“发起方账户的身份公钥”和“燃料代扣账户的身份公钥”对该第二签名进行验签,若两次验签均成功,则从该燃料代扣账户中扣除执行区块链交易所需的区块链燃料。
再例如,与上一举例相对应的,网关设备可以直接将经由第二签名设备签名得到的第二签名,作为第一交易数据发送至第一签名设备,以由第一签名设备通过燃料代扣账户的身份私钥进行签名。在该举例中,相当于依次通过“发起方账户的身份私钥”和“燃料代扣账户的身份私钥”对第二交易数据进行签名,以将得到的第一签名作为燃料代扣许可。
相应的,网关设备可以将包含燃料代扣许可的区块链交易发送至区块链系统,区块链系统则可以依次通过“燃料代扣账户的身份公钥”和“发起方账户的身份公钥”对该燃料代扣许可进行验签,若两次验签均成功,则从该燃料代扣账户中扣除执行区块链交易所需的区块链燃料。
在本情况中,第一签名设备和第二签名设备既可以为同一设备,也可以为不同设备。例如,当两者为同一设备时,该设备可以为同时获得了“燃料代扣账户签名权限”和“发起方账户签名权限”的KMS(也可以被称为将签名操作托管至KMS);当两者为不同设备时,第一签名设备可以为KMS,第二签名设备则为发起方所使用的客户端;或者,第二签名设备可以为KMS,第二签名设备则为燃料代扣账户所属方使用的客户端。第一签名设备和第二签名设备具体为哪一设备可由本领域技术人员根据实际情况确定,本说明书对此不作限制。
应当理解的是,在第一签名设备和第二签名设备为同一设备的情况下,相当于交易发起方和燃料代扣账户所属方均将该设备默认为可信设备,且由该可信设备依次进行两次签名,该可信设备无需对签名的可靠性进行验证。
而在第一签名设备和第二签名设备为不同设备的情况下,交易发起方和燃料代扣账户所属方并未将同一设备默认为可信设备,若优先执行“通过发起方账户的身份私钥进行签名”的过程,那么,网关设备接收到的经由第二签名设备签名后的第二签名,还可以用于向第一签名设备证明交易发起方的身份。
具体的,网关设备在将经由第二签名设备签名后的第二签名(作为第一交易数据)发送至第一签名设备后,第一签名设备还可以通过发起方账户的身份公钥对接收到的第二签名进行验签,若验签成功,则证实了发起方账户的身份的可靠性,进而通过自身所维护的燃料代扣账户的身份私钥对该第二签名进行签名后返回;否则,不对第二签名进行签名。
应当理解的是,在采用“优先通过发起方账户的身份私钥进行签名,再通过燃料代扣账户的身份私钥进行签名”的方式的情况下,第一签名设备可以进一步验证发起方账户的身份可靠性,且仅在验证成功时,才通过“燃料代扣账户的身份私钥”进行签名,避免了由于为身份不可靠的发起方进行签名,而造成误扣区块链燃料的情况。
在另一实施例中,燃料代扣许可还可以为燃料代扣令牌的形式。
在一种情况下,燃料代扣账户可以预先为自身所对应的多个账户分别发放燃料代扣令牌。在此基础上,这多个账户中的任一账户需要发起交易请求时,即可将燃料代扣账户预先发放的燃料代扣令牌添加至交易请求中。那么,在网关设备在接收到该账户发起的交易请求后,即可从中直接读取燃料代扣账户预先发放给该账户的燃料代扣令牌。在本实施例中,网关设备无需进行额外的交互操作,即可获取燃料代扣令牌,可以高效地获取燃料代扣令牌。
在另一实施例中,网关设备在接收到交易请求后,可以向拥有燃料代扣令牌的发放权限的令牌发放设备发送令牌获取请求,以由该令牌发放设备在验证发起方账户身份的情况下,返回针对本次交易请求发放的燃料代扣令牌。该令牌发放设备既可以为燃料代扣方使用的客户端,也可以为预先获得燃料代扣账户授予的令牌发放权限的其他设备。在实际操作中,令牌获取请求中可以包括对应于发起方账户的唯一身份标识符,或者经由发起方账户的身份私钥签名的签名,以由令牌发放设备验证发起方账户的身份。
步骤106,将包含所述燃料代扣许可且对应于所述交易请求的区块链交易发送至所述区块链系统,以由所述区块链系统在对所述燃料代扣许可验证成功的情况下,从所述燃料代扣账户中扣除执行所述区块链交易所需的区块链燃料。
在本说明书中,区块链系统既可以仅包含唯一的区块链网络,也可以包含多个区块链网络。在实际操作中,网关设备必然是将发起方账户发起的区块链交易发送至区块链系统中的一个区块链节点,该节点在接收到区块链交易后,需要与所属区块链网络中的节点进行交易共识,且仅在交易共识通过的情况下,才执行该区块链交易。
换言之,在区块链系统中,区块链交易唯有在通过交易共识的情况下,才确定会被执行。应当理解的是,若区块链交易被发送至区块链系统后,未被执行,那么就无需扣除燃料代扣账户中的区块链燃料。因此,在实际操作中,区块链系统在接收到区块链交易后,除了需要验证燃料代扣许可以外,还需确定针对区块链交易的交易共识是否通过,当且仅当燃料代扣许可验证成功且交易共识通过的情况下,执行从燃料代扣账户汇中扣除区块链燃料的操作。
需要强调的是,燃料扣除操作的具体执行时机,以及执行方式可由本领域技术人员根据实际情况确定。例如,区块链系统中执行每一笔交易所需花费的区块链燃料数额可能是一致的,那么,可以在完成交易共识(即确定会执行该区块链交易)的情况下,执行区块链燃料的扣除操作;再例如,区块链系统中执行交易时所需花费的区块链燃料数额与每一笔交易的执行难度、时长等因素相关,那么可以在交易执行完毕的情况下进行区块链燃料的扣除操作,或者在交易执行的过程中,根据交易所处的执行阶段(如执行时间、交易完成度等)分批次扣除区块链燃料。
由上述技术方案可知,本说明书中的网关设备在接收到交易请求的情况下,会优先获取“用于证明燃料代扣账户允许区块链系统通过扣除自身账户中的区块链燃料,以用于执行对应于交易请求的区块链交易”的燃料代扣许可。在此基础上,区块链系统接收到区块链交易后,即可对上述燃料代扣许可进行验证,且在验证通过的情况下,从燃料代扣账户中扣除执行该区块链交易所需的区块链燃料。
应当理解的是,本说明书的技术方案相当于:燃料代扣账户预先授予了各个账户从该燃料代扣账户中扣除用于执行区块链交易的区块链燃料的权限,使得任一账户在作为发起方账户发起交易请求时,只需获取表征自身拥有上述权限的燃料代扣许可,即可使区块链系统在执行该发起方账户发起的区块链交易时,从对应的燃料代扣账户中扣除所需的区块链燃料。
显然,相较于相关技术中从交易发起方自身的账户中,扣除执行区块链交易所需的区块链燃料的燃料扣除方法,本说明书的技术方案无需对各个账户中的区块链燃料进行分别管理,大幅简化了区块链燃料的统筹管理。尤其在区块链技术使用方为集体的情况下,避免了由于集体成员的账户中区块链燃料不足而造成无法执行区块链交易的情况,以及个别集体成员账户中区块链燃料过剩的情况。
进一步的,本说明书中的燃料代扣许可可以为经由燃料代扣账户的身份私钥签名后的第一签名,这使得区块链系统只需通过燃料代扣账户的身份公钥对接收到的区块链交易进行验证,即可验证燃料代扣许可的可靠性。由于燃料代扣账户的身份公钥为公开的秘钥,区块链系统可以通过多种方式轻易获得,能够大幅简化验证的操作。
再进一步的,发送至区块链系统的区块链交易除了经由燃料代扣账户的身份私钥签名以外,还可以经由发起方账户的身份私钥签名,使得区块链系统还可以进一步通过发起方账户的身份公钥对交易发起方的身份进行验证,以进一步确保燃料扣除操作的可靠性。
又进一步的,可以依次通过“发起方账户的身份私钥”和“燃料代扣账户的身份私钥”对同一交易数据进行签名得到燃料代扣许可。在该情况下,若负责签名的两次签名的签名设备为不同设备,那么,在通过“发起方账户的身份私钥”对该交易数据进行签名,得到第二签名后,第一签名设备还可以进一步通过“发起方账户的身份公钥”对接收到的第二签名进行验签,且仅在验签成功的情况下,才通过自身维护的“燃料代扣账户的身份私钥”对第二签名进行二次签名。换言之,维护有燃料代扣账户的身份私钥的签名设备,唯有在验证发起方账户的身份可靠性的情况下,才会授予交易发起方燃料代扣许可。避免了由于给身份信息不可靠的交易发起方授予燃料代扣许可,而造成误扣区块链燃料的情况。
下面,以发起方账户和燃料代扣账户均将签名操作托管至秘钥管理服务中心为例,对本说明书的技术方案进行介绍。
图2为本说明书一示例性实施例示出的一种燃料代扣方法的交互图。如图2所示,该方法可以包括以下步骤:
步骤201,交易发起方通过所使用的客户端向网关设备发起交易请求。
在本实施例中,交易发起方发起的交易请求中可以包括需要打包成区块链交易的业务数据,那么,在该交易请求在被发送至网关设备后,网关设备即可从中提取出交易请求中包含的业务数据,并按照自身所对应区块链系统的交易格式,将提取出的业务数据打包成区块链交易。
当然,在本实施例中,仅仅是以“网关设备接收到的交易请求中包含的为:需要打包成区块链交易的业务数据”为例进行介绍,在实际运用中,当然可以直接在发起方客户端处,或者发起方客户端所对应的客户端侧网关设备处,将业务数据打包为区块链交易之后,将打包得到的区块链交易作为交易请求发送至区块链系统对应的网关设备处。具体如何操作,可由本领域技术人员根据实际情况确定,本公开对此不作限制。
步骤202,网关设备基于接收到的交易请求生成区块链交易。
步骤203,网关设备向网关数据库发送燃料代扣账户获取请求。
在本实施例中,可以在与网关设备对应的网关数据库处预设各个燃料代扣账户与各自的下辖账户之间的对应关系。
举例而言,假设上述交易发起方为某一企业的员工。那么,上述对应关系即可为:各个企业员工账户与所属企业部门的对应关系,以及企业部门与企业管理账户之间的对应关系;或者,直接为企业员工账户与企业管理账户之间的对应关系。例如,可以如下表1所示:
假设,本次交易请求的发起方账户为账户c,那么网关数据库即可基于上表确定账户c属于部门Y,部门Y所对应的管理账户为账户y,那么,即可将账户与确定为是本次交易请求所对应的燃料代扣账户。
步骤204,网关数据库向网关设备返回发起方账户所对应的燃料代扣账户的相关信息。
承接上述举例,即可将账户y的相关信息返回至网关设备。
需要强调的是,在实际应用中,也可以将预设的对应关系保存在网关设备的本地存储空间中,那么只需在本地查找燃料代扣账户即可,而无需如本实施例需要通过向网关数据库发送请求的方式获取燃料代扣账户的相关信息。
步骤205,网关设备在获取到燃料代扣账户的相关信息后,向KMS发送包含生成的区块链交易的代扣账户签名请求。
在本实施例中,交易发起方和燃料代扣方账户所属方的签名操作均被托管至KMS,相当于交易发起方和燃料代扣账户所属方均默认KMS是可信的。在该前提下,对发起方账户和燃料代扣方账户的签名顺序,可以根据实际需求确定。例如,在区块链系统的验签逻辑是优先验签发起方账户的签名的情况下,则在签名时,需要在完成燃料代扣方账户签名的情况下,再进行发起方账户的签名。
在本实施例中,可以直接将生成的区块链交易作为上述第一交易数据。在实际操作中,可以在将该区块链交易添加至代扣账户签名请求后,将代扣账户签名请求发送至KMS,以由KMS基于维护的燃料代扣账户的身份私钥对该区块链交易进行签名后返回。
步骤206,KMS通过燃料代扣账户的身份私钥,对代扣账户签名请求中包含的区块链交易进行签名后,将其返回至网关设备。
步骤207,网关设备向KMS发送发起方账户签名请求,该请求中包含经由燃料代扣方的身份私钥签名的区块链交易。
在本实施例中,在KMS通过燃料代扣账户的身份私钥对区块链交易进行签名并返回后(可以将其视为完成初步签名),可将完成初步签名的区块链交易添加至发起方账户签名请求中,以由KMS通过发起方账户的身份私钥,进一步对完成初步签名的区块链交易进行二次签名。
在本实施例中,相当于将完成初步签名的区块链交易作为上述第二交易数据以由KMS进一步通过发起方账户的身份私钥进行签名。
需要声明的是,上述签名操作仅是示意性的。在实际操作中,由于区块链交易本身数据量较大,通常不会将区块链交易直接作为待签名数据(上文所述的第一交易数据),而是将其他能够代表区块链交易且具有唯一性的数据作为待签名数据。例如,可以将区块链交易的哈希值作为待签名数据依次进行两次签名;相应的,网关设备在接收到依次完成两次签名的哈希值之后,即可将区块链交易和完成两次签名的哈希值发送至区块链系统;而区块链系统,则只需在对完成两次的哈希值进行验签成功之后,进一步验证哈希值与区块链交易的唯一对应即可。
步骤208,KMS在通过发起方账户的身份私钥,对发起方账户签名请求中包含的经由燃料代扣方账户的身份私钥签名的区块链交易进行签名后,将其返回至网关设备。
步骤209,网关设备将完成签名的区块链交易发送至区块链系统。
在完成上述两次签名后,即可将完成签名的区块链交易发送至区块链系统,以由区块链系统对交易进行执行。
在实际操作中,应当是将上述完成两次签名的区块链交易发送至区块链系统中的一个区块链节点处,以由该节点通过发起方账户的身份公钥和燃料代扣账户的身份公钥依次对该区块链交易进行验签,当且仅当两次验签均成功的情况下,执行上述区块链交易,并从燃料代扣账户中扣除执行该区块链交易所需的区块链燃料。
需要声明的是,在两次验签均成功后,上述区块链节点需要优先与所属区块链网络中的其他节点对该区块链交易进行共识后,才能够执行该区块链交易,以及执行从燃料代扣账户中扣除燃料的操作。具体扣除操作可以采用上文所提及的任一种,在本实施例中不再赘述。
当然,上述举例仅是示意性的。在某些特殊情况下,也可以优先对接收到尚未验签的区块链进行交易共识,再在共识通过的情况下,由各个节点分别对交易进行验签。该方式由于需要各个节点分别进行验签,占用较多区块链处理资源,因此较少被采用,但由于其验签次数较多,同样增加了验签的可靠性。具体如何针对区块链交易进行验签、共识,以及燃料的扣除,可由本领域技术人员根据实际需求确定,本实施例对此不作限制。
步骤210,区块链系统通过发起方账户的身份公钥对接收到的区块链交易进行初步验签,且在验签成功的情况下,跳转至步骤211。
步骤211,区块链系统通过燃料代扣账户的身份公钥,对初步验签成功的区块链交易进行二次验签,且在验签成功的情况下,跳转至步骤212。
步骤212,区块链系统执行二次验签成功的区块链交易,并从燃料代扣账户中扣除执行该区块链交易所需的区块链燃料。
步骤213,区块链系统将区块链交易的执行结果返回至网关设备。
在本实施例中,当区块链系统完成对区块链交易的执行操作之后,即可将该交易执行结果返回至网关设备,以由网关设备将该执行结果返回至交易发起方的客户端处。
步骤214,网关设备将接收到的区块链交易执行结果转发至发起方客户端。
由上述技术方案可知,本说明书可以直接将交易发起方和燃料代扣账户所属方的签名操作均托管至KMS处,使得网关设备在接收到交易请求之后,只需和KMS进行交互,即可获得燃料代扣方账户和发起方账户两者的签名,相较于需要从燃料代扣账户所所属方使用的客户端处、交易发起方所使用客户端处分别获取签名的方式,具有更高的签名效率。
除此之外,区块链系统在接收到网关设备发送的完成两次签名的区块链交易之后,可以通过发起方账户的身份公钥和燃料代扣方账户的身份公钥,对该区块链交易进行验签,并在验签成功的情况下,从燃料代扣账户扣除执行该区块链交易所需的区块链燃料,避免了相关技术中需要从发起方自身账户处扣除区块链燃料,而导致的区块链燃料难以统筹管理的问题。
图3为本说明书一示例性实施例示出的另一种燃料代扣方法的交互图。如图3所示,该方法可以包括以下步骤:
步骤301,发起方客户端将业务数据打包成区块链交易。
在本实施例中,可以由发起方客户端自行将业务数据打包成区块链交易,并将其添加至交易请求。
步骤302,发起方客户端计算区块链交易的哈希值。
在本实施例中,不再如上一实施例,将区块链交易本身作为待签名数据(即上文所述的第一交易数据),而是在计算区块链交易的哈希值的基础上,将该哈希值作为待签名数据。
步骤303,发起方客户端通过交易发起方的身份私钥对计算得到的哈希值进行签名。
在本实施例中,交易发起方在将交易请求发送至网关设备之前,可以优先通过自身的身份私钥对计算得到的哈希值进行签名,以便向其他设备证明自身身份。
步骤304,发起方客户端将区块链交易和签名后的哈希值添加至交易请求,并发送至网关设备。
在本实施例中,由于在客户端侧已经经由发起方的身份私钥进行签名,相当于在客户端侧已经得到了上文所述的第二签名的基础上,再将该第二签名和区块链交易一并发送至网关设备。
步骤305,网关设备查询本地维护的各个燃料代扣账户和各自的下辖账户之间的对应关系,确定发起方账户所对应的燃料代扣账户。
在本实施例中,可以在网关设备本地维护各个燃料代扣账户和各自下辖账户之间的对应关系。预设的对应关系可参照上一实施例的介绍,在此不再赘述。
步骤306,网关设备向代扣方客户端发送包含经由签名后的哈希值的代扣方签名请求。
在本实施例中,燃料代扣方和交易发起方均未将签名操作托管至KMS,由不同的设备分别执行两次签名操作。在该前提下,燃料代扣方无法确定发起方账户是否可信,因此,需要对发起方账户的身份进行验证。
步骤307,代扣方客户端通过发起方账户的身份公钥,对代扣方账户签名请求中的经由发起方账户签名的哈希值进行验签,在验签成功的情况下,跳转至步骤308。
在实际操作中,代扣方客户端可以从代扣方签名请求中读取发起方的身份标识,并根据该身份标识确定发起方账户是否为自身的下辖账户,若是,则获取该下辖账户的身份公钥对接收到的哈希值进行验签,若验签成功,则证明该发起方账户确实为自身的下辖账户。
步骤308,代扣方客户端通过自身维护的燃料代扣方账户的身份私钥,对经由发起方账户签名的哈希值进行二次签名,并将完成二次签名的哈希值返回至网关设备。
在确定发起方账户确实为自身的下辖账户之后,代扣方客户端即可通过自身维护的燃料代扣账户的身份私钥,对经由发起方账户签名的哈希值进行二次签名,以表征燃料代扣账户所属方同意从自身账户中扣除区块链燃料,以用于执行该哈希值对应的区块链交易。
步骤309,网关设备将完成二次签名的哈希值和区块链交易发送至区块链系统。
在本实施例中,由于并非如上一实施例是对区块链交易本身进行签名,因此,除了需要向区块链系统发送区块链交易以外,还需发送完成二次签名的哈希值。
步骤310,区块链系统通过燃料代扣账户的身份公钥,对完成二次签名的哈希值进行初步验签,在验签成功的情况下,跳转至步骤311。
步骤311,区块链系统通过发起方账户的身份公钥,对完成初步验签的哈希值进行二次验签,并在验签成功的情况下,跳转至步骤312。
与上一实施例相类似的,区块链系统在接收到区块链交易后,即可进行两次验签操作。与上一实施例不同的是,本实施例是优先通过燃料代扣方的身份公钥进行验签,再通过交易发起方的身份公钥进行验签,且验签对象为哈希值,并非区块链交易。
步骤312,区块链系统验证完成二次验签的哈希值与区块链交易,是否唯一对应,若是,跳转至步骤313。
由于本实施例签名的对象为哈希值,并非区块链交易,因此,在对哈希值验签成功的情况下,还需进一步验证该哈希值是否与接收到的区块链交易唯一对应,即验证接收到的哈希值是否为接收到的区块链交易的哈希值。
步骤313,区块链系统执行区块链交易,并从燃料代扣账户中扣除执行该区块链交易所需的区块链燃料。
在针对哈希值的两次验签均成功,且哈希值与区块链交易唯一对应的情况下,即可执行区块链交易,并从燃料代扣账户中扣除执行该区块链交易所需的区块链燃料。
步骤314,区块链系统将区块链交易的执行结果返回至网关设备。
步骤315,网关设备将接收到的区块链交易执行结果转发至发起方客户端。
相较于上一实施例,本实施例不再对区块链交易本身进行签名,而是对区块链交易的哈希值进行签名。应当理解的是,哈希值的数据量远小于区块链交易的数据量,能够大幅减少签名过程中的数据传输量,进而进一步提高签名效率。
除此之外,本实施例中的燃料代扣方签名和发起方签名由不同的设备执行。因此,在燃料代扣方客户端对区块链交易的哈希值进行签名之前,需要优先进行针对交易发起方的身份验证,当且仅当验证成功的情况下,通过自身维护的燃料代扣账户的身份私钥对哈希值进行签名,避免了给身份不可靠的交易发起方授予燃料代扣权限的情况。
图4为本说明书一示例性实施例示出的又一种燃料代扣方法的交互图。如图4所示,该方法可以包括以下步骤:
步骤401,发起方客户端将包含区块链交易的交易请求发送至网关设备。
在本实施例中,可以由发起方客户端自行将业务数据打包成区块链交易,并在将其添加至交易请求后,发送至网关设备。
步骤402,网关设备获取对应于发起方账户的燃料代扣账户。
在本实施例中,可以采用上文所述的任一种方式确定燃料代扣账户,具体执行方式已在图2和图3所示的实施例中进行详细解释,在此不再赘述。
步骤403,网关设备向代扣方客户端发送令牌获取请求。
步骤404,代扣方客户端验证交易发起方账户的身份,在确定发起方账户为自身下辖账户的情况下,跳转至步骤405。
在本实施例中,代扣方客户端中可以记录有燃料代扣方账户下辖的多个下辖账户。在接收到令牌获取请求后,即可验证该发起方账户是否为自身的下辖账户,若是,则向该发起方发放燃料代扣令牌。
步骤405,代扣方客户端将燃料代扣令牌返回至网关设备。
步骤406,网关设备将区块链交易和燃料代扣令牌发送至区块链系统。
步骤407,区块链系统对燃料代扣令牌进行验证,且在验证成功的情况下,跳转至步骤408。
在区块链系统中,可以维护有各个燃料代扣账户与相应令牌的对应关系。在接收到区块链交易和燃料代扣令牌后,即可根据维护的对应关系确定是否存在与该燃料代扣令牌对应的燃料代扣账户,且在存在的情况下,进一步确定该燃料代扣令牌所对应的燃料代扣账户。
区块链系统中还可以进一步维护有多个燃料代扣账户与各自的下辖账户之间的对应关系,在此基础上,即可进一步验证区块链交易的发起方账户是否为确定的燃料代扣账户的下辖账户,若是,则执行该区块链交易,并从确定的燃料代扣账户中扣除执行该区块链交易所需的区块链燃料。
步骤408,区块链系统执行接收到的区块链交易,并从燃料代扣方账户中扣除执行本次区块链交易所需的区块链燃料。
步骤409,区块链系统向网关设备返回区块链交易的执行结果。
步骤410,网关设备向发起方客户端转发区块链交易的执行结果。
在本实施例中,将燃料代扣令牌作为燃料代扣账户所属方授予发起方账户的燃料代扣许可。相较于将签名作为燃料代扣许可的实施例,本实施例无需通过秘钥信息发放燃料代扣的权限,进而减少了获取燃料代扣许可的交互次数,提高了燃料代扣许可的获取效率。
图5为本说明书的一示例性实施例示出一种基于服务端的电子设备的示意结构图。请参考图5,在硬件层面,该电子设备包括处理器502、内部总线504、网络接口506、内存508以及非易失性存储器510,当然还可能包括其他业务所需要的硬件。处理器502从非易失性存储器510中读取对应的计算机程序到内存508中然后运行,在逻辑层面上形成燃料代扣装置。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图6,在软件实施方式中,该燃料代扣装置可以包括:
确定单元601,响应于接收到的交易请求,确定请求发起方对应的发起方账户;
获取单元602,获取燃料代扣许可,所述燃料代扣许可用于证明燃料代扣账户允许所述区块链系统通过扣除所述燃料代扣账户中的区块链燃料,以用于执行对应于所述交易请求的区块链交易;
发送单元603,将包含所述燃料代扣许可且对应于所述交易请求的区块链交易发送至所述区块链系统,以由所述区块链系统在对所述燃料代扣许可验证成功的情况下,从所述燃料代扣账户中扣除执行所述区块链交易所需的区块链燃料。
可选的,获取单元602进一步被用于:
向维护有所述燃料代扣账户的身份私钥的第一签名设备发送对应于所述交易请求的第一交易数据,以由所述第一签名设备通过所述燃料代扣账户的身份私钥对所述第一交易数据进行签名后返回;
接收第一签名设备返回的第一签名,以作为所述燃料代扣许可。
可选的,还包括:
第一签名单元604,向维护有所述发起方账户的身份私钥的第二签名设备发送对应于所述交易请求的第二交易数据,以由所述第二签名设备通过所述发起方账户的身份私钥对所述第二交易数据进行签名后返回;将第二签名设备返回的第二签名作为对应于所述交易请求的第一交易数据。
可选的,第一签名单元604,进一步被用于:
向维护有所述燃料代扣账户的身份私钥的第一签名设备发送经由第二签名设备签名后的第二签名,以由所述第一签名设备在通过所述发起方账户的身份公钥对所述第二签名验签成功的情况下,通过所述燃料代扣账户的身份私钥对所述第二签名进行签名后返回。
可选的,还包括:
第二签名单元605,将所述燃料代扣许可作为对应于所述交易请求的第二交易数据,并向维护有所述发起方账户的身份私钥的第二签名设备发送所述第二交易数据,以由所述第二签名设备通过所述发起方账户的身份私钥对所述第二交易数据进行签名后返回;
发送单元603进一步被用于:将包含接收到的第二签名设备返回的第二签名且对应于所述交易请求的区块链交易发送至所述区块链系统。
可选的,所述第一签名设备与所述第二签名设备为同一设备或者不同设备。
可选的,所述第一交易数据为下述任一:
基于所述交易请求生成的区块链交易;
所述交易请求中包含的业务数据;
基于所述交易请求生成的区块链交易的哈希值;
所述交易请求中包含的业务数据的哈希值。
可选的,所述第一签名设备为获得所述燃料代扣账户签名权限的秘钥管理服务中心;或者,所述第一签名设备为所述燃料代扣账户所属方使用的客户端。
可选的,所述燃料代扣许可为所述燃料代扣账户发放给所述发起方账户的燃料代扣令牌;获取单元602进一步被用于:
从所述交易请求中读取所述燃料代扣账户预先发放给所述发起方账户的燃料代扣令牌;或者,
向拥有发放燃料代扣令牌权限的令牌发放设备发送令牌获取请求,以由所述令牌发放设备在验证所述发起方账户的身份的情况下,返回针对所述交易请求发放的燃料代扣令牌。
可选的,从所述燃料代扣账户中扣除区块链燃料的操作,在所述区块链系统中的区块链节点完成针对所述区块链交易的共识操作的情况下执行。
可选的,确定单元601还被用于:
根据本地记录的若干燃料代扣账户与其下辖账户的对应关系,确定所述发起方账户所对应的燃料代扣账户;或者,
向维护有若干燃料代扣账户与其下辖账户的对应关系的网关数据库发送代扣账户获取请求,以由所述网关数据库基于维护的对应关系确定所述发起方账户对应的燃料代扣账户。
可选的,所述发起方账户为企业员工账户,所述燃料代扣方账户为企业管理账户;确定单元601还被用于:
确定所述发起方账户所属的企业部门,并将所述企业部门对应的企业管理账户作为所述燃料代扣账户。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由燃料代扣装置的处理器执行以实现如上述实施例中任一所述的方法,比如该方法可以包括:响应于接收到的交易请求,确定请求发起方对应的发起方账户;获取燃料代扣许可,所述燃料代扣许可用于证明燃料代扣账户允许所述区块链系统通过扣除所述燃料代扣账户中的区块链燃料,以用于执行对应于所述交易请求的区块链交易;将包含所述燃料代扣许可且对应于所述交易请求的区块链交易发送至所述区块链系统,以由所述区块链系统在对所述燃料代扣许可验证成功的情况下,从所述燃料代扣账户中扣除执行所述区块链交易所需的区块链燃料。
其中,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等,本说明书并不对此进行限制。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
Claims (15)
1.一种燃料代扣方法,应用于区块链系统对应的网关设备,包括:
响应于接收到的交易请求,确定请求发起方对应的发起方账户;
获取燃料代扣许可,所述燃料代扣许可用于证明燃料代扣账户允许所述区块链系统通过扣除所述燃料代扣账户中的区块链燃料,以用于执行对应于所述交易请求的区块链交易;
将包含所述燃料代扣许可且对应于所述交易请求的区块链交易发送至所述区块链系统,以由所述区块链系统在对所述燃料代扣许可验证成功的情况下,从所述燃料代扣账户中扣除执行所述区块链交易所需的区块链燃料。
2.根据权利要求1所述的方法,所述获取燃料代扣许可,包括:
向维护有所述燃料代扣账户的身份私钥的第一签名设备发送对应于所述交易请求的第一交易数据,以由所述第一签名设备通过所述燃料代扣账户的身份私钥对所述第一交易数据进行签名后返回;
接收第一签名设备返回的第一签名,以作为所述燃料代扣许可。
3.根据权利要求2所述的方法,还包括:
向维护有所述发起方账户的身份私钥的第二签名设备发送对应于所述交易请求的第二交易数据,以由所述第二签名设备通过所述发起方账户的身份私钥对所述第二交易数据进行签名后返回;
将第二签名设备返回的第二签名作为对应于所述交易请求的第一交易数据。
4.根据权利要求3所述的方法,所述向维护有所述燃料代扣账户的身份私钥的第一签名设备发送对应于所述交易请求的第一交易数据,以由所述第一签名设备通过所述燃料代扣账户的身份私钥对所述第一交易数据进行签名后返回,包括:
向维护有所述燃料代扣账户的身份私钥的第一签名设备发送经由第二签名设备签名后的第二签名,以由所述第一签名设备在通过所述发起方账户的身份公钥对所述第二签名验签成功的情况下,通过所述燃料代扣账户的身份私钥对所述第二签名进行签名,得到第一签名后返回。
5.根据权利要求2所述的方法,
还包括:将所述燃料代扣许可作为对应于所述交易请求的第二交易数据,并向维护有所述发起方账户的身份私钥的第二签名设备发送所述第二交易数据,以由所述第二签名设备通过所述发起方账户的身份私钥对所述第二交易数据进行签名后返回;
所述将包含所述燃料代扣许可且对应于所述交易请求的区块链交易发送至所述区块链系统,包括:将包含第二签名设备返回的第二签名且对应于所述交易请求的区块链交易发送至所述区块链系统。
6.根据权利要求3-5中任一所述的方法,所述第一签名设备与所述第二签名设备为同一设备或者不同设备。
7.根据权利要求2所述的方法,所述第一交易数据为下述任一:
基于所述交易请求生成的区块链交易;
所述交易请求中包含的业务数据;
基于所述交易请求生成的区块链交易的哈希值;
所述交易请求中包含的业务数据的哈希值。
8.根据权利要求2所述的方法,所述第一签名设备为获得所述燃料代扣账户签名权限的秘钥管理服务中心;或者,所述第一签名设备为所述燃料代扣账户所属方使用的客户端。
9.根据权利要求1所述的方法,所述燃料代扣许可为所述燃料代扣账户发放给所述发起方账户的燃料代扣令牌;所述获取燃料代扣许可,包括:
从所述交易请求中读取所述燃料代扣账户预先发放给所述发起方账户的燃料代扣令牌;或者,
向拥有发放燃料代扣令牌权限的令牌发放设备发送令牌获取请求,以由所述令牌发放设备在验证所述发起方账户的身份的情况下,返回针对所述交易请求发放的燃料代扣令牌。
10.根据权利要求1所述的方法,从所述燃料代扣账户中扣除区块链燃料的操作,在所述区块链系统中的区块链节点完成针对所述区块链交易的共识操作的情况下执行。
11.根据权利要求1所述的方法,还包括:
根据本地记录的若干燃料代扣账户与其下辖账户的对应关系,确定所述发起方账户所对应的燃料代扣账户;或者,
向维护有若干燃料代扣账户与其下辖账户的对应关系的网关数据库发送代扣账户获取请求,以由所述网关数据库基于维护的对应关系确定所述发起方账户对应的燃料代扣账户。
12.根据权利要求1所述的方法,所述发起方账户为企业员工账户,所述燃料代扣账户为企业管理账户;还包括:
确定所述发起方账户所属的企业部门,并将所述企业部门对应的企业管理账户作为所述燃料代扣账户。
13.一种燃料代扣装置,应用于区块链系统对应的网关设备,包括:
确定单元,响应于接收到的交易请求,确定请求发起方对应的发起方账户;
获取单元,获取燃料代扣许可,所述燃料代扣许可用于证明燃料代扣账户允许所述区块链系统通过扣除所述燃料代扣账户中的区块链燃料,以用于执行对应于所述交易请求的区块链交易;
发送单元,将包含所述燃料代扣许可且对应于所述交易请求的区块链交易发送至所述区块链系统,以由所述区块链系统在对所述燃料代扣许可验证成功的情况下,从所述燃料代扣账户中扣除执行所述区块链交易所需的区块链燃料。
14.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行任务的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1-12中任一项所述的方法。
15.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-12中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110197412.9A CN112581110A (zh) | 2021-02-22 | 2021-02-22 | 燃料代扣方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110197412.9A CN112581110A (zh) | 2021-02-22 | 2021-02-22 | 燃料代扣方法及装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112581110A true CN112581110A (zh) | 2021-03-30 |
Family
ID=75113956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110197412.9A Pending CN112581110A (zh) | 2021-02-22 | 2021-02-22 | 燃料代扣方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112581110A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113222572A (zh) * | 2021-05-10 | 2021-08-06 | 支付宝(杭州)信息技术有限公司 | 一种交易执行方法及装置 |
CN116938477A (zh) * | 2023-09-19 | 2023-10-24 | 南方科技大学 | 一种基于tee的去中心化侧链平台交易方法及智能终端 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190147553A1 (en) * | 2017-11-14 | 2019-05-16 | TitleFlow LLC | Storing linked lists of mineral rights transactions in directed acyclic graphs of cryptographic hash pointers |
CN110335038A (zh) * | 2019-05-21 | 2019-10-15 | 北京哥伦布时代科技发展有限公司 | 一种gas代付方法 |
CN110545190A (zh) * | 2019-09-06 | 2019-12-06 | 腾讯科技(深圳)有限公司 | 一种签名处理的方法、相关装置以及设备 |
-
2021
- 2021-02-22 CN CN202110197412.9A patent/CN112581110A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190147553A1 (en) * | 2017-11-14 | 2019-05-16 | TitleFlow LLC | Storing linked lists of mineral rights transactions in directed acyclic graphs of cryptographic hash pointers |
CN110335038A (zh) * | 2019-05-21 | 2019-10-15 | 北京哥伦布时代科技发展有限公司 | 一种gas代付方法 |
CN110545190A (zh) * | 2019-09-06 | 2019-12-06 | 腾讯科技(深圳)有限公司 | 一种签名处理的方法、相关装置以及设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113222572A (zh) * | 2021-05-10 | 2021-08-06 | 支付宝(杭州)信息技术有限公司 | 一种交易执行方法及装置 |
CN116938477A (zh) * | 2023-09-19 | 2023-10-24 | 南方科技大学 | 一种基于tee的去中心化侧链平台交易方法及智能终端 |
CN116938477B (zh) * | 2023-09-19 | 2024-05-10 | 南方科技大学 | 一种基于tee的去中心化侧链平台交易方法及智能终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11645649B2 (en) | Resource transfer method and apparatus, storage medium, and computer device | |
JP7407895B2 (ja) | 一般的な計算のためのブロックチェーン | |
EP3613189B1 (en) | Secure blockchain-based consensus | |
EP3610436B1 (en) | Rapid distributed consensus on blockchain | |
US9979718B2 (en) | System for managing security and access to resource sub-components | |
US10938566B2 (en) | Blockchain based identity and access management | |
US11616649B2 (en) | Computer-implemented systems and methods relating to a binary blockchain comprising a pair of coupled blockchains | |
CN111899006A (zh) | 基于区块链的交易处理方法及装置、电子设备 | |
WO2020042774A1 (zh) | 基于区块链的汇款方法及装置 | |
CN112581110A (zh) | 燃料代扣方法及装置、电子设备、存储介质 | |
JP2023536163A (ja) | ブロックチェーントークン | |
CN112102079B (zh) | 业务数据的处理方法、装置、计算机设备及存储介质 | |
CN117916735A (zh) | 安全元件、注册令牌的方法和令牌参考注册器 | |
CN111901299A (zh) | 申请认证方法、装置、电子设备和存储介质 | |
CN110751483A (zh) | 基于区块链的财务记账冲销方法及装置和电子设备 | |
CN112862466A (zh) | 一种资源转移的方法及结账终端、服务器节点 | |
CN118282711A (zh) | 跨系统自动登录方法、设备及存储介质 | |
CN111861740A (zh) | 一种资源发放方法、装置及系统 | |
CN115766032A (zh) | 基于可信执行环境的投票方法和装置 | |
WO2021198532A1 (en) | Methods and devices for double-spend relay in a blockchain network | |
CN117061089A (zh) | 一种投票管理方法、装置、设备及存储介质 | |
CN116258450A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210330 |