CN113256291A - 在区块链系统中创建账户及分配交易的方法及装置 - Google Patents
在区块链系统中创建账户及分配交易的方法及装置 Download PDFInfo
- Publication number
- CN113256291A CN113256291A CN202110671377.XA CN202110671377A CN113256291A CN 113256291 A CN113256291 A CN 113256291A CN 202110671377 A CN202110671377 A CN 202110671377A CN 113256291 A CN113256291 A CN 113256291A
- Authority
- CN
- China
- Prior art keywords
- target
- account
- transaction
- target account
- blockchain system
- 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
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/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
- 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
- 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/3825—Use of electronic 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/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- 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)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (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
本说明书提供一种在区块链系统中创建账户及分配交易的方法及装置,根据该方法,接收在区块链系统中创建目标账户的请求;区块链系统包括多个分片;响应于该请求,确定多个分片中目标账户所属的第一分片;生成目标账户的目标地址;目标地址包括区块链系统的标识和用于指示第一分片的信息;向第一分片发起用于创建目标账户的第一交易,第一交易包括目标地址。如此使得账户地址和账户密钥解绑,即使账户私钥丢失,也不会导致该账户无法使用,从而提高了区块链系统的安全性和可用性。另外,由于账户地址和区块链系统以及账户所属分片相关,因此,便于对账户发起的交易进行分配和管理,从而提高了区块链系统的运行效率。
Description
技术领域
本说明书一个或多个实施例涉及区块链技术领域,特别涉及一种在区块链系统中创建账户及分配交易的方法及装置。
背景技术
区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。由于区块链具有去中心化、信息不可篡改、自治性等特性,区块链也受到人们越来越多的重视和应用。
目前来说,账户的地址(即账户ID)是通过对账户的公钥进行处理得到的,因此,账户的地址是和账户的公钥绑定的。然而,如果账户的私钥丢失,账户的公钥也会随之失效,从而导致该账户无法使用。
发明内容
为了解决上述技术问题之一,本说明书一个或多个实施例提供一种在区块链系统中创建账户及分配交易的方法及装置。
根据第一方面,提供一种在区块链系统中创建账户的方法,包括:
接收在区块链系统中创建目标账户的请求;所述区块链系统包括多个分片;
响应于所述请求,确定所述多个分片中所述目标账户所属的第一分片;
生成所述目标账户的目标地址;所述目标地址包括所述区块链系统的标识和用于指示所述第一分片的信息;
向所述第一分片发起用于创建所述目标账户的第一交易,所述第一交易包括所述目标地址。
根据第二方面,提供一种在区块链系统中创建账户的方法,所述方法由区块链系统中的第一分片的分片节点执行,包括:
接收用于创建目标账户且包括所述目标账户的目标地址的第一交易,所述目标地址包括所述区块链系统的标识和用于指示所述目标账户所属的第一分片的信息;
通过执行所述第一交易,在所述第一分片中创建所述目标账户。
根据第三方面,提供一种在区块链系统中分配交易的方法,包括:
接收目标账户发起的目标交易;所述目标账户为利用第一方面或第二方面中任一项所述的方法创建的账户,所述目标交易中包括所述目标账户的目标地址;
基于所述目标地址确定所述目标账户所属的区块链系统及所述区块链系统中包括的第一分片;
向所述第一分片发送所述目标交易。
根据第四方面,提供一种在区块链系统中创建账户的装置,包括:
接收模块,用于接收在区块链系统中创建目标账户的请求;所述区块链系统包括多个分片;
确定模块,用于响应于所述请求,确定所述多个分片中所述目标账户所属的第一分片;
生成模块,用于生成所述目标账户的目标地址;所述目标地址包括所述区块链系统的标识和用于指示所述第一分片的信息;
发起模块,用于向所述第一分片发起用于创建所述目标账户的第一交易,所述第一交易包括所述目标地址。
根据第五方面,提供一种在区块链系统中创建账户的装置,所述装置部署于区块链系统的第一分片的分片节点中,包括:
第一接收模块,用于接收第一交易,所述第一交易用于创建目标账户且包括所述目标账户的目标地址;所述目标地址包括所述区块链系统的标识和用于指示所述目标账户所属的第一分片的信息;
创建模块,用于通过执行所述第一交易,在所述第一分片中创建所述目标账户。
根据第六方面,提供一种在区块链系统中分配交易的装置,包括:
接收模块,用于接收目标账户发起的目标交易;所述目标账户为利用第四方面或第五方面中任一项所述的装置创建的账户,所述目标交易中包括所述目标账户的目标地址;
确定模块,用于基于所述目标地址确定所述目标账户所属的区块链系统及所述区块链系统中包括的第一分片;
发送模块,用于向所述第一分片发送所述目标交易。
根据第七方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面、第二方面或第三方面中任一项所述的方法。
根据第八方面,提供一种及计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面、第二方面或第三方面中任一项所述的方法。
本说明书的实施例提供的技术方案可以包括以下有益效果:
本说明书的实施例提供的在区块链系统中创建账户的方法和装置,通过基于目标账户对应的区块链系统的标识和用于指示目标账户所属第一分片的信息,生成目标账户对应的目标地址,从而可以基于目标地址在区块链系统中创建目标账户。使得账户地址和账户密钥解绑,即使账户私钥丢失,也不会导致该账户无法使用,从而提高了区块链系统的安全性和可用性。另外,由于账户地址和区块链系统以及账户所属分片相关,因此,便于对账户发起的交易进行分配和管理,从而提高了区块链系统的运行效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本说明书根据一示例性实施例示出的一种在区块链系统中创建账户及分配交易的场景示意图;
图2是本说明书根据一示例性实施例示出的一种在区块链系统中创建账户的方法的流程图;
图3是本说明书根据一示例性实施例示出的另一种在区块链系统中创建账户的方法的流程图;
图4是本说明书根据一示例性实施例示出的一种在区块链系统中分配交易的方法的流程图;
图5是本说明书根据一示例性实施例示出的一种在区块链系统中创建账户的装置的框图;
图6是本说明书根据一示例性实施例示出的另一种在区块链系统中创建账户的装置的框图;
图7是本说明书根据一示例性实施例示出的一种在区块链系统中分配交易装置的框图;
图8是本说明根据一示例性实施例示出的一种计算设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
如图1所示,是根据一示例性实施例示出的一种在区块链系统中创建账户及分配交易的场景示意图。
在图1示出的场景中,该区块链系统可以包括分片1、分片2……及分片n等多个分片,不同分片可以用于管理不同的账户,例如,不同分片对应的区块链节点可以存储不同的账户集合的状态。外部设备可以是直接与区块链节点对接的用户设备,也可以是分别与用户设备和区块链节点连接的管理平台,用户设备可以通过该管理平台与区块链系统进行信息交互。
在区块链系统中创建目标账户时,首先,用户可以通过对客户端的操作,向外部设备发送在区块链系统中创建目标账户的请求,该请求中可以携带预先针对目标账户设置的账户标识。外部设备响应于接收到该请求,根据目标账户对应的注册地,确定多个分片中目标账户所属的分片1作为第一分片。获取区块链系统的标识和用于指示第一分片的信息,并基于区块链系统的标识和用于指示第一分片的信息,生成目标账户的目标地址。接着,外部设备可以向区块链系统中的第一分片发起用于创建目标账户且包括目标地址的第一交易,该第一交易中还可以进一步包括目标账户的第一公钥和第二公钥。其中,第一公钥用于对普通交易的签名进行验签,第二公钥用于对更新第一公钥的交易的签名进行验签。
第一分片的分片节点接收该第一交易,通过执行该第一交易,基于目标地址在第一分片中创建目标账户。同时,获取目标账户的第一公钥,并在目标账户的世界状态中记录目标地址和第一公钥之间的映射关系。获取第二公钥,并在目标账户的世界状态中记录第二公钥。
由于目标账户的目标地址包括区块链系统的标识和用于指示第一分片的信息,因此,在区块链系统中创建目标账户之后,当外部设备接收到目标账户发起的包括目标地址的目标交易时,外部设备可以基于目标地址确定目标账户所属的区块链系统及区块链系统中包括的第一分片,然后,向第一分片发送该目标交易。
另外,如果目标账户的私钥(即第一公钥对应的私钥)丢失,可以重新更换目标账户的私钥,并同时更换目标账户的第一公钥。具体来说,可以由外部设备向第一分片发起用于更新目标账户第一公钥的第二交易,该第二交易中包括用于替换第一公钥的目标公钥。并且,外部设备利用上述第二公钥对应的私钥对第二交易进行签名。第一分片的分片节点接收到第二交易,并通过交易类型确定第二交易用于更新目标账户的第一公钥。从目标账户的世界状态中获取第二公钥,利用第二公钥对第二交易进行验签,在对第二交易验签通过的情况下,从第二交易中获取目标公钥,利用目标公钥替换记录在目标账户的世界状态中的第一公钥,从而完成目标账户的第一公钥的更新。
下面将结合具体的实施例对本说明书提供的方案进行详细描述。
如图2所示,图2是根据一示例性实施例示出的一种在区块链系统中创建账户的方法的流程图,该方法可以应用于目标设备中。该目标设备可以是直接与区块链节点对接的用户设备,也可以是分别与用户设备和区块链节点连接的管理平台。该方法包括以下步骤:
在步骤202中,接收在区块链系统中创建目标账户的请求。
在本实施例中,用户可以通过对客户端的操作,向目标设备发送在区块链系统中创建目标账户的请求,由该目标设备接收该请求。其中,本实施例涉及的区块链系统可以包括多个分片,区块链系统分片的基本思路是将区块链网络中的节点分成若干个相对独立的子网络,每个子网络中包含一部分节点,一个子网络也就是一个分片。单个分片处理规模较小的事务,甚至只存储部分网络状态,多个分片并行处理事务。
在步骤204中,响应于该请求,确定多个分片中目标账户所属的第一分片。
在本实施例中,该目标设备响应于该请求,可以确定多个分片中目标账户所属的分片作为第一分片。具体来说,在一种实现方式中,可以按照账户的属性,将属性不同的账户分配给区块链系统中不同的分片,使得属性相同的账户所属分片相同。例如,该属性可以是账户对应的注册地,因此,可以按照账户对应的注册地,将注册地不同的账户分配给区块链系统中不同的分片,而注册地相同的账户分配给区块链系统中相同的分片。所以,可以根据目标账户对应的注册地确定多个分片中的第一分片。通过根据注册地来确定目标账户所属分片的策略,可以将一些具有地域性的业务集中在同一个分片内处理,尽量将交易涉及新增、删除和修改的状态控制在单个分片内,可以有效减少跨分片的分布式事务,减少跨分片的消息交互和事务处理,进而可以提高系统吞吐量和性能。可以理解,该属性还可以是其它任意能够区分账户指定特征的属性,本实施例对此方面不限定。
在另一种实现方式中,还可以预先构建多个账户集合(例如,按照业务关系构建账户集合),每个账户集合对应于一个分片,并将各个账户集合与分片的对应关系记录下来。因此,可以首先确定目标账户所属的账户集合(例如,按照业务关系确定目标账户所属的账户集合),然后,根据目标账户所属的账户集合与分片的对应关系确定多个分片中的第一分片。
在又一种实现方式中,还可以预先设定多个数值空间,将不同分片映射到不同的数值空间,映射规则可以是分片的标识之类,例如,可以通过某种哈希算法来进行映射。可以将账户也映射到该数值空间,映射规则可以是账户的唯一标识之类,例如,通过同样的哈希算法来进行映射。因此,可以对目标账户的唯一标识采用一致性哈希算法,确定多个分片中的第一分片。
在步骤206中,生成目标账户的目标地址。
在本实施例中,在确定多个分片中目标账户所属的第一分片之后,该目标设备可以进一步确定区块链系统的标识和用于指示第一分片的信息,并基于区块链系统的标识和用于指示第一分片的信息,生成目标账户的目标地址。其中,目标地址中包括区块链系统的标识和用于指示第一分片的信息。除了包括区块链系统的标识和用于指示第一分片的信息之外,目标地址中还可以包括其它内容。例如,上述创建目标账户的请求中可以包括预先针对目标账户设置的账户标识,可以通过对账户标识进行预设的哈希运算得到多个字节(如取哈希值的预设位上的多个字节),将该多个字节作为目标地址中的部分字段的内容。
在一种实现方式中,用于指示第一分片的信息可以包括第一分片的标识。在另一种实现方式中,用于指示第一分片的信息也可以包括目标账户对应的第一节点的标识,该第一节点为属于第一分片的节点。
在步骤208中,向第一分片发起用于创建目标账户的第一交易,该第一交易包括目标地址。
在本实施例中,该目标设备生成目标地址之后,可以向第一分片发起用于创建目标账户且包括目标地址的第一交易,使得第一分片的节点能够通过执行第一交易创建目标账户。需要说明的是,该第一交易的发起账户可以是管理平台的管理员账户,也可以是目标账户本身,本实施例对第一交易的发起账户不限定。
本说明书的上述实施例提供的在区块链系统中创建账户的方法,通过基于目标账户对应的区块链系统的标识和用于指示目标账户所属第一分片的信息,生成目标账户对应的目标地址,从而可以基于目标地址在区块链系统中创建目标账户。使得账户地址和账户密钥解绑,即使账户私钥丢失,也不会导致该账户无法使用,从而提高了区块链系统的安全性和可用性。另外,由于账户地址和区块链系统以及账户所属分片相关,因此,便于对账户发起的交易进行分配和管理,从而提高了区块链系统的运行效率。
如图3所示,图3根据一示例性实施例示出的另一种在区块链系统中创建账户的方法的流程图,该方法可以由区块链系统中的第一分片的分片节点执行。该方法包括以下步骤:
在步骤302中,接收用于创建目标账户且包括目标账户的目标地址的第一交易。
在本实施例中,区块链系统中第一分片的分片节点接收目标设备发起的第一交易,该第一交易用于创建目标账户且包括目标账户的目标地址。该目标地址可以包括区块链系统的标识和用于指示目标账户所属的第一分片的信息。其中,由于该第一交易为用于创建账户的交易,因此,可以通过预设的交易类型来标识该第一交易,使第一分片的分片节点能通过该第一交易的交易类型,确定该第一交易为用于创建账户的交易。
在步骤304中,通过执行第一交易,在第一分片中创建目标账户。
在本实施例中,第一分片的分片节点可以通过执行第一交易,从而根据目标地址在第一分片中创建目标账户。
在步骤306中,通过执行第一交易,获取目标账户的第一公钥,并在目标账户的世界状态中记录目标地址和第一公钥之间的映射关系。
在本实施例中,第一交易中还可以进一步包括目标账户的第一公钥,该第一公钥可以用于对普通交易(非更新第一公钥的交易)的签名进行验签。具体来说,该第一公钥可以在第一交易的第一预设字段中,第一分片的分片节点可以通过执行第一交易,从第一交易的第一预设字段中获取该第一公钥,并在目标账户的世界状态中记录该目标地址和该第一公钥之间的映射关系。当第一分片的分片节点再接收到目标账户发起的普通交易(非更新第一公钥的交易)时,可以从目标账户的世界状态中取出该第一公钥,并利用该第一公钥对接收到的该交易进行验签。
在步骤308中,通过执行第一交易,获取第二公钥,并在目标账户的世界状态中记录第二公钥。
在本实施例中,第一交易中还可以再进一步包括第二公钥,该第二公钥可以用于更新目标账户的第一公钥。具体来说,该第二公钥可以在第一交易的第二预设字段中,第一分片的分片节点可以通过执行第一交易,从第一交易的第二预设字段中获取该第二公钥,并在目标账户的世界状态中记录该第二公钥。
当第一分片的分片节点接收到目标账户发起的第二交易时,该分片节点可以根据交易类型确定第二交易为更新第一公钥的交易,并从目标账户的世界状态中取出该第二公钥。利用该第二公钥对接收到的该第二交易进行验签,在验签通过的情况下,从第二交易中获取用于替换第一公钥的目标公钥,并利用目标公钥替换记录在目标账户的世界状态中的第一公钥。由于在创建目标账户的交易中,还包括用于更新第一公钥的第二公钥,因此,在目标账户的私钥(即第一公钥对应的私钥)丢失之后,可以对目标账户的私钥进行更新重置。同时,利用第二公钥对第一公钥进行更新重置,避免了目标账户无法使用,从而提高了区块链系统的安全性和可用性。
本说明书的上述实施例提供的在区块链系统中创建账户的方法,通过利用基于目标账户对应的区块链系统的标识和用于指示目标账户所属第一分片的信息而生成的目标地址,在区块链系统中创建目标账户。使得账户地址和账户密钥解绑,即使账户私钥丢失,也不会导致该账户无法使用,从而提高了区块链系统的安全性和可用性。另外,由于账户地址和区块链系统以及账户所属分片相关,因此,便于对账户发起的交易进行分配和管理,从而提高了区块链系统的运行效率。
如图4所示,图4根据一示例性实施例示出的一种在区块链系统中分配交易的方法的流程图,该方法可以应用于目标设备中。该目标设备可以是直接与区块链节点对接的用户设备,也可以是分别与用户设备和区块链节点连接的管理平台。该方法包括以下步骤:
在步骤402中,接收目标账户发起的目标交易。
在步骤404中,基于目标地址确定目标账户所属的区块链系统及区块链系统中包括的第一分片。
在步骤406中,向第一分片发送目标交易。
在本实施例中,目标账户为利用图2和图3的方法创建的账户,该目标交易中包括目标账户的目标地址。目标设备接收到目标账户发起的目标交易,可以基于该目标地址确定目标账户所属的区块链系统及区块链系统中包括的第一分片。并将该目标交易发送给区块链系统中的第一分片。
本说明书的上述实施例提供的在区块链系统中分配交易的方法,由于账户地址和区块链系统以及账户所属分片相关,因此,便于对账户发起的交易进行分配和管理,从而提高了区块链系统的运行效率。
应当注意,尽管在上述的实施例中,以特定顺序描述了本说明书实施例的方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
与前述在区块链系统中创建账户及分配交易的方法实施例相对应,本说明书还提供了创建账户及分配交易的装置的实施例。
如图5所示,图5是本说明书根据一示例性实施例示出的一种在区块链系统中创建账户的装置框图,该装置可以包括:接收模块501,确定模块502,生成模块503和发起模块504。
其中,接收模块501,用于接收在区块链系统中创建目标账户的请求,该区块链系统包括多个分片。
确定模块502,用于响应于该请求,确定多个分片中目标账户所属的第一分片。
生成模块503,用于生成目标账户的目标地址,该目标地址包括该区块链系统的标识和用于指示第一分片的信息。
发起模块504,用于向第一分片发起用于创建目标账户的第一交易,该第一交易包括该目标地址。
在一些实施方式中,用于指示第一分片的信息包括第一分片的标识。
在另一些实施方式中,用于指示第一分片的信息包括目标账户对应的第一节点的标识,第一节点为属于第一分片的节点。
在另一些实施方式中,上述请求中可以包括预先针对目标账户设置的账户标识,生成模块503被配置用于:通过对账户标识进行预设的哈希运算得到目标地址中的多个字节。
在另一些实施方式中,确定模块502可以通过以下任一种方式确定第一分片:根据目标账户所属的账户集合与分片的对应关系确定第一分片;对目标账户的唯一标识采用一致性哈希算法确定第一分片;或者,根据目标账户对应的注册地确定第一分片。
应当理解,上述装置可以预先设置在目标设备中,也可以通过下载等方式而加载到目标设备中。上述装置中的相应模块可以与目标设备中的模块相互配合以实现在区块链系统中创建账户的方案。
如图6所示,图6是本说明书根据一示例性实施例示出的一种在区块链系统中创建账户的装置框图,该装置部署于区块链系统的第一分片的分片节点中,该装置可以包括:第一接收模块601和创建模块602。
其中,第一接收模块601,用于接收第一交易,第一交易用于创建目标账户且包括目标账户的目标地址,目标地址包括区块链系统的标识和用于指示目标账户所属的第一分片的信息。
创建模块602,用于通过执行第一交易,在第一分片中创建目标账户。
在一些实施方式中,该装置还可以包括:第一记录模块(图中未示出)。
其中,第一记录模块,用于通过执行第一交易,获取目标账户的第一公钥,并在目标账户的世界状态中记录目标地址和第一公钥之间的映射关系。
在另一些实施方式中,该装置还可以包括:第二记录模块(图中未示出)。
其中,第二记录模块,用于通过执行第一交易,获取第二公钥,该第二公钥用于更新目标账户的第一公钥,并在目标账户的世界状态中记录第二公钥。
在另一些实施方式中,该装置还可以包括:第二接收模块,第一获取模块,第二获取模块和更新模块(图中未示出)。
其中,第二接收模块,用于接收第二交易,并确定第二交易用于更新目标账户的第一公钥。
第一获取模块,用于从目标账户的世界状态中获取第二公钥。
第二获取模块,用于在使用第二公钥对第二交易验签通过的情况中,从第二交易中获取目标公钥。
更新模块,用于利用目标公钥更新记录在目标账户的世界状态中的第一公钥。
应当理解,上述装置可以预先设置在分片节点中,也可以通过下载等方式而加载到分片节点中。上述装置中的相应模块可以与分片节点中的模块相互配合以实现在区块链系统中创建账户的方案。
如图7所示,图7是本说明书根据一示例性实施例示出的一种在区块链系统中分配交易的装置框图,该装置可以包括:接收模块701,确定模块702和发送模块703。
其中,接收模块701,用于接收目标账户发起的目标交易,目标账户为利用图5和图6的装置创建的账户,目标交易中包括目标账户的目标地址。
确定模块702,用于基于目标地址确定目标账户所属的区块链系统及区块链系统中包括的第一分片。
发送模块703,用于向第一分片发送目标交易。
应当理解,上述装置可以预先设置在目标设备中,也可以通过下载等方式而加载到目标设备中。上述装置中的相应模块可以与目标设备中的模块相互配合以实现在区块链系统中分配交易的方案。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书一个或多个实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本说明书一个或多个实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图2至图4任一实施例提供的在区块链系统中创建账户或分配交易的方法。
对应于上述的在区块链系统中创建账户的方法,本说明书一个或多个实施例还提出了图8所示的根据本说明书的一示例性实施例的计算设备的示意结构图。请参考图8,在硬件层面,该计算设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成在区块链系统中创建账户的装置。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。其中,软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (22)
1.一种在区块链系统中创建账户的方法,所述方法包括:
接收在区块链系统中创建目标账户的请求;所述区块链系统包括多个分片;
响应于所述请求,确定所述目标账户所属的第一分片;
生成所述目标账户的目标地址;所述目标地址包括所述区块链系统的标识和用于指示所述第一分片的信息;
向所述第一分片发起用于创建所述目标账户的第一交易,所述第一交易包括所述目标地址。
2.根据权利要求1所述的方法,其中,所述用于指示所述第一分片的信息包括所述第一分片的标识。
3.根据权利要求1所述的方法,其中,所述用于指示所述第一分片的信息包括所述目标账户对应的第一节点的标识;所述第一节点为属于所述第一分片的节点。
4.根据权利要求2或3所述的方法,其中,所述请求中包括预先针对所述目标账户设置的账户标识;所述生成所述目标账户的目标地址,包括:通过对所述账户标识进行预设的哈希运算得到所述目标地址中的多个字节。
5.根据权利要求1所述的方法,其中,通过以下任一种方式确定所述目标账户所属的第一分片:
根据所述目标账户所属的账户集合与分片的对应关系确定所述第一分片;
对目标账户的唯一标识采用一致性哈希算法确定所述第一分片;或者
根据所述目标账户对应的注册地确定所述第一分片。
6.一种在区块链系统中创建账户的方法,所述方法由区块链系统中的第一分片的分片节点执行,包括:
接收用于创建目标账户且包括所述目标账户的目标地址的第一交易,所述目标地址包括所述区块链系统的标识和用于指示所述目标账户所属的第一分片的信息;
通过执行所述第一交易,在所述第一分片中创建所述目标账户。
7.根据权利要求6所述的方法,其中,还包括:
通过执行所述第一交易,获取所述目标账户的第一公钥,并在所述目标账户的世界状态中记录所述目标地址和所述第一公钥之间的映射关系。
8.根据权利要求7所述的方法,其中,还包括:
通过执行所述第一交易,获取第二公钥;所述第二公钥用于更新所述目标账户的第一公钥;
在所述目标账户的世界状态中记录所述第二公钥。
9.根据权利要求8所述的方法,其中,所述方法还包括:
接收第二交易,并确定所述第二交易用于更新所述目标账户的第一公钥;
从所述目标账户的世界状态中获取所述第二公钥;
在使用所述第二公钥对所述第二交易验签通过的情况中,从所述第二交易中获取目标公钥;
利用所述目标公钥更新记录在所述目标账户的世界状态中的第一公钥。
10.一种在区块链系统中分配交易的方法,所述方法包括:
接收目标账户发起的目标交易;所述目标账户为利用权利要求1-9中任一项所述的方法创建的账户,所述目标交易中包括所述目标账户的目标地址;
基于所述目标地址确定所述目标账户所属的区块链系统及所述区块链系统中包括的第一分片;
向所述第一分片发送所述目标交易。
11.一种在区块链系统中创建账户的装置,所述装置包括:
接收模块,用于接收在区块链系统中创建目标账户的请求;所述区块链系统包括多个分片;
确定模块,用于响应于所述请求,确定所述目标账户所属的第一分片;
生成模块,用于生成所述目标账户的目标地址;所述目标地址包括所述区块链系统的标识和用于指示所述第一分片的信息;
发起模块,用于向所述第一分片发起用于创建所述目标账户的第一交易,所述第一交易包括所述目标地址。
12.根据权利要求11所述的装置,其中,所述用于指示所述第一分片的信息包括所述第一分片的标识。
13.根据权利要求11所述的装置,其中,所述用于指示所述第一分片的信息包括所述目标账户对应的第一节点的标识;所述第一节点为属于所述第一分片的节点。
14.根据权利要求12或13所述的装置,其中,所述请求中包括预先针对所述目标账户设置的账户标识;所述生成模块被配置用于:通过对所述账户标识进行预设的哈希运算得到所述目标地址中的多个字节。
15.根据权利要求11所述的装置,其中,所述确定模块通过以下任一种方式确定所述目标账户所属的第一分片:
根据所述目标账户所属的账户集合与分片的对应关系确定所述第一分片;
对目标账户的唯一标识采用一致性哈希算法确定所述第一分片;或者
根据所述目标账户对应的注册地确定所述第一分片。
16.一种在区块链系统中创建账户的装置,所述装置部署于区块链系统的第一分片的分片节点中,包括:
第一接收模块,用于接收第一交易,所述第一交易用于创建目标账户且包括所述目标账户的目标地址;所述目标地址包括所述区块链系统的标识和用于指示所述目标账户所属的第一分片的信息;
创建模块,用于通过执行所述第一交易,在所述第一分片中创建所述目标账户。
17.根据权利要求16所述的装置,其中,还包括:
第一记录模块,用于通过执行所述第一交易,获取所述目标账户的第一公钥,并在所述目标账户的世界状态中记录所述目标地址和所述第一公钥之间的映射关系。
18.根据权利要求17所述的装置,其中,还包括:
第二记录模块,用于通过执行所述第一交易,获取第二公钥;所述第二公钥用于更新所述目标账户的第一公钥,并在所述目标账户的世界状态中记录所述第二公钥。
19.根据权利要求18所述的装置,其中,还包括:
第二接收模块,用于接收第二交易,并确定所述第二交易用于更新所述目标账户的第一公钥;
第一获取模块,用于从所述目标账户的世界状态中获取所述第二公钥;
第二获取模块,用于在使用所述第二公钥对所述第二交易验签通过的情况中,从所述第二交易中获取目标公钥;
更新模块,用于利用所述目标公钥更新记录在所述目标账户的世界状态中的第一公钥。
20.一种在区块链系统中分配交易的装置,所述装置包括:
接收模块,用于接收目标账户发起的目标交易;所述目标账户为利用权利要求11-19中任一项所述的装置创建的账户,所述目标交易中包括所述目标账户的目标地址;
确定模块,用于基于所述目标地址确定所述目标账户所属的区块链系统及所述区块链系统中包括的第一分片;
发送模块,用于向所述第一分片发送所述目标交易。
21.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令所述计算机执行权利要求1-10中任一项所述的方法。
22.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110671377.XA CN113256291A (zh) | 2021-06-17 | 2021-06-17 | 在区块链系统中创建账户及分配交易的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110671377.XA CN113256291A (zh) | 2021-06-17 | 2021-06-17 | 在区块链系统中创建账户及分配交易的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113256291A true CN113256291A (zh) | 2021-08-13 |
Family
ID=77188413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110671377.XA Pending CN113256291A (zh) | 2021-06-17 | 2021-06-17 | 在区块链系统中创建账户及分配交易的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113256291A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114969808A (zh) * | 2022-05-07 | 2022-08-30 | 中移互联网有限公司 | 一种账号的管理方法、装置、电子设备及存储介质 |
CN116012164A (zh) * | 2023-03-17 | 2023-04-25 | 安徽中科晶格技术有限公司 | 基于虚拟账户的区块链跨分片交易方法 |
CN117808467A (zh) * | 2024-02-28 | 2024-04-02 | 中国信息通信研究院 | 基于区块链网络的跨分片交易方法和装置、设备和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108830577A (zh) * | 2018-06-07 | 2018-11-16 | 北京连琪科技有限公司 | 区块链的账户建立及恢复方法 |
CN110022316A (zh) * | 2019-03-29 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 创建区块链账户及重置账户密钥的方法和装置 |
US20200235921A1 (en) * | 2019-01-18 | 2020-07-23 | Telefonica Digital España, S.L.U. | Method and system for recovering cryptographic keys of a blockchain network |
CN111711521A (zh) * | 2020-06-19 | 2020-09-25 | 广州孢子科技有限公司 | 一种区块链账号私钥重置方法及系统 |
CN112257118A (zh) * | 2020-12-21 | 2021-01-22 | 支付宝(杭州)信息技术有限公司 | 一种锁定包含分片的区块链系统中跨片事务的方法及系统 |
CN112446039A (zh) * | 2020-11-19 | 2021-03-05 | 杭州趣链科技有限公司 | 区块链交易处理方法、装置、设备和存储介质 |
-
2021
- 2021-06-17 CN CN202110671377.XA patent/CN113256291A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108830577A (zh) * | 2018-06-07 | 2018-11-16 | 北京连琪科技有限公司 | 区块链的账户建立及恢复方法 |
US20200235921A1 (en) * | 2019-01-18 | 2020-07-23 | Telefonica Digital España, S.L.U. | Method and system for recovering cryptographic keys of a blockchain network |
CN110022316A (zh) * | 2019-03-29 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 创建区块链账户及重置账户密钥的方法和装置 |
CN111711521A (zh) * | 2020-06-19 | 2020-09-25 | 广州孢子科技有限公司 | 一种区块链账号私钥重置方法及系统 |
CN112446039A (zh) * | 2020-11-19 | 2021-03-05 | 杭州趣链科技有限公司 | 区块链交易处理方法、装置、设备和存储介质 |
CN112257118A (zh) * | 2020-12-21 | 2021-01-22 | 支付宝(杭州)信息技术有限公司 | 一种锁定包含分片的区块链系统中跨片事务的方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114969808A (zh) * | 2022-05-07 | 2022-08-30 | 中移互联网有限公司 | 一种账号的管理方法、装置、电子设备及存储介质 |
CN114969808B (zh) * | 2022-05-07 | 2023-09-19 | 中移互联网有限公司 | 一种账号的管理方法、装置、电子设备及存储介质 |
CN116012164A (zh) * | 2023-03-17 | 2023-04-25 | 安徽中科晶格技术有限公司 | 基于虚拟账户的区块链跨分片交易方法 |
CN117808467A (zh) * | 2024-02-28 | 2024-04-02 | 中国信息通信研究院 | 基于区块链网络的跨分片交易方法和装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113256291A (zh) | 在区块链系统中创建账户及分配交易的方法及装置 | |
CN109493050B (zh) | 基于区块链主链加并行多子链的转账方法 | |
US11934888B2 (en) | Systems and method for managing memory resources used by smart contracts of a blockchain | |
CN111680050B (zh) | 一种联盟链数据的分片处理方法、设备和存储介质 | |
CN107294729B (zh) | 区块链中不同节点之间的通信方法及装置 | |
US20190179801A1 (en) | File management/search system and file management/search method based on block chain | |
JP5522307B2 (ja) | 仮想機械によるソフトウェアテストを用いた電子ネットワークにおけるクライアントシステムの遠隔保守のためのシステム及び方法 | |
CN110753026B (zh) | 一种基于区块链的分片方法及装置 | |
WO2020000011A1 (en) | Blockchain system and method | |
CN112913185A (zh) | 在区块链网络上构建基于组密钥的双重签名交易结构的节点组管理装置以及计算装置 | |
CN109493052B (zh) | 一种基于主链加并行多子链的跨链合约系统 | |
CN110008665B (zh) | 一种区块链的权限控制方法及装置 | |
CN110597824A (zh) | 一种基于区块链网络的数据存储方法以及装置 | |
CN114127724A (zh) | 针对多副本存储的完整性审计 | |
CN106610859A (zh) | 一种程序更新方法、装置、系统和成像盒 | |
CN108347472A (zh) | Ip地址的配置方法、云服务器、云平台及可读存储介质 | |
CN110334531A (zh) | 虚拟机密钥的管理方法、主节点、系统、存储介质及装置 | |
CN110933022A (zh) | 区块处理方法、装置、计算机设备及存储介质 | |
CN110351364A (zh) | 数据存储方法、设备及计算机可读存储介质 | |
CN115409507A (zh) | 区块处理方法、区块处理装置、计算机设备及存储介质 | |
CN109067849A (zh) | 基于区块的数据同步方法 | |
CN108876378A (zh) | 公有链数据加密备份方法 | |
KR102193890B1 (ko) | 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템 상에서의 워킹 그룹별 동일한 키를 사용하는 보안 통신 제공 방법 | |
CN115426106B (zh) | 一种身份认证方法、装置、系统、电子设备及存储介质 | |
CN113497762A (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 |
Application publication date: 20210813 |
|
RJ01 | Rejection of invention patent application after publication |