CN112733130A - 账户注册方法、装置、电子设备及可读存储介质 - Google Patents
账户注册方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN112733130A CN112733130A CN202110065002.9A CN202110065002A CN112733130A CN 112733130 A CN112733130 A CN 112733130A CN 202110065002 A CN202110065002 A CN 202110065002A CN 112733130 A CN112733130 A CN 112733130A
- Authority
- CN
- China
- Prior art keywords
- key
- key pair
- merchant
- account
- ciphertext
- 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
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2117—User registration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例提供一种账户注册方法、装置、电子设备及可读存储介质,旨在提高账户注册效率。其中所述账户注册方法包括:在内存的配合下生成多个密钥对,并针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对;对内存中的多个密钥对密文进行持久化存储;响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。本发明预先生成了多个密钥对,并对多个密钥对进行加密,以及对加密后的密钥对密文进行持久化存储。当接收到账户注册请求时,可以从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文,而不需要执行生成密钥对的步骤,因此可以提升账户注册效率。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种账户注册方法、装置、电子设备及可读存储介质。
背景技术
相关技术中,当用户向某系统请求注册新账户时,系统响应于该请求,生成一个新的密钥对,并将该密钥对分配给新账户。以区块链技术领域为例,当用户向区块链系统请求注册新账户时,区块链系统响应于该请求,生成一个包含私钥、公钥以及地址的密钥对,并将该密钥对分配给新账户。其中,私钥、公钥以及地址分别作为新账户的账户私钥、账户公钥以及账户地址(也可称为区块链地址)。
然而,在利用相关技术注册新账户时,注册效率偏低。因此,如何提高账户注册效率是一个亟待解决的问题。
发明内容
本发明实施例的目的在于提供一种账户注册方法、装置、电子设备及可读存储介质,旨在提高账户注册效率。具体技术方案如下:
在本发明实施例的第一方面,提供一种账户注册方法,所述方法包括:
在内存的配合下生成多个密钥对,并针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对;
对内存中的多个密钥对密文进行持久化存储;
响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。
在本发明实施例的第二方面,提供一种账户注册装置,所述装置包括:
密钥对生成和加密模块,用于在内存的配合下生成多个密钥对,并针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对;
持久化存储模块,用于对内存中的多个密钥对密文进行持久化存储;
账户注册模块,用于响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。
在本发明实施例的第三方面,提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于在执行存储器上所存放的程序时,实现本发明任一实施例所提供的账户注册方法。
在本发明实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任一实施例所提供的账户注册方法。
本发明中,预先生成了多个密钥对,并对多个密钥对进行加密,以及对加密后的密钥对密文进行持久化存储。当接收到账户注册请求时,响应于该账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。可见本发明中,当接收到账户注册请求时,不需要执行生成密钥对的步骤,而可以直接从预先生成并持久化存储的多个密钥对密文中为新账户分配一个密钥对密文,从而缩减账户注册耗时,因此本发明可以有效提升账户注册效率。
此外本发明中,在内存的配合下生成多个密钥对。并且针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对。本发明对密钥对密文进行持久化存储,而不会直接对密钥对进行持久化存储,因此不会长期暴露密钥对,进而提升密钥对安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,以下描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1是本发明一实施例提出的账户注册方法的流程图;
图2是本发明另一实施例提出的账户注册方法的流程图;
图3是本发明一实施例提出的账户注册装置的示意图;
图4是本发明一实施例提出的电子设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,当用户向某系统请求注册新账户时,系统响应于该请求,生成一个新的密钥对,并将该密钥对分配给新账户。以区块链技术领域为例,当用户向区块链系统请求注册新账户时,区块链系统相应于该请求,生成一个包含私钥、公钥以及地址的密钥对,并将该密钥对分配给新账户。其中,私钥、公钥以及地址分别作为新账户的账户私钥、账户公钥以及账户地址(也可称为区块链地址)。然而,在利用相关技术注册新账户时,注册效率偏低。因此,如何提高账户注册效率是一个亟待解决的问题。
有鉴于此,本发明通过以下实施例提出账户注册方法、装置、电子设备及可读存储介质,旨在提高账户注册效率。
参考图1,图1是本发明一实施例提出的账户注册方法的流程图,该账户注册方法可以在用于管理账户的设备上执行,也可以在用于管理密钥的设备上执行。执行该账户注册方法的设备可以是一台或多台。执行该账户注册方法的设备可以是更庞大的业务系统中的一部分,也可以是独立于业务系统之外的独立系统。以下,将执行该账户注册方法的一台或多台设备简称为执行设备。
如图1所示,该账户注册方法包括以下步骤:
步骤S11:在内存的配合下生成多个密钥对,并针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对。
其中,所谓在内存的配合下,具体是指:执行设备的中央处理器CPU在处理数据期间,从内存中读取数据以执行相应处理,并向内存写入处理数据。
可选地,在一些具体实施方式中,为了生成多个密钥对,执行设备可以调用预设的密钥对生成算法以生成密钥对。
例如在一些应用场景中,执行设备用于为多种区块链注册账户,则执行设备中预设有多种区块链各自对应的密钥对生成算法。当执行设备为某一区块链生成多个密钥对时,执行设备调用该区块链对应的密钥生成算法,从而为该区块链生成多个符合该区块链要求的密钥对。
可选地,在一些具体实施方式中,为了利用预先生成的主密钥加密每个密钥对,执行设备可以将预先生成的主密钥加载至内存。然后在内存的配合下,针对每个密钥对,利用主密钥加密该密钥对,从而得到密钥对密文。
或者可选地,在另一些具体实施方式中,主密钥预先被预设密钥加密过,或者主密钥预先通过预设的加密算法加密过。为了利用预先生成的主密钥加密每个密钥对,执行设备可以将主密钥密文加载至内存。然后在内存的配合下,对主密钥密文进行解密以得到主密钥,接着针对每个密钥对,利用解密得到的主密钥加密该密钥对,从而得到密钥对密文。
本发明中,可以在每加密一个密钥对后,便立即删除该密钥对,从而缩短密钥对暴露时间。也可以在加密完全部密钥对之后,对全部密钥对进行批量删除,从而提高删除效率。
步骤S12:对内存中的多个密钥对密文进行持久化存储。
本发明中,可以在加密完多个密钥对后,将多个密钥对密文批量地从内存中读出,并持久化存储至数据库或密钥池中。
需要说明的是,本发明中,在内存的配合下生成多个密钥对。并且针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对。本发明对密钥对密文进行持久化存储,而不会直接对密钥对进行持久化存储,因此不会长期暴露密钥对,进而提升密钥对安全性。
步骤S13:响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。
本发明中,分配给新账户的密钥对密文可以作为该新账户后续开展业务的凭证。例如,该密钥对密文中的账户地址可以作为区块链地址和/或钱包地址,该密钥对密文中的私钥密文可用于对新账户的相关请求或相关数据进行签名。
本发明中,预先生成了多个密钥对,并对多个密钥对进行加密,以及对加密后的密钥对密文进行持久化存储。当接收到账户注册请求时,响应于该账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。可见本发明中,当接收到账户注册请求时,不需要执行生成密钥对的步骤,而可以直接从预先生成并持久化存储的多个密钥对密文中为新账户分配一个密钥对密文,从而缩减账户注册耗时,因此本发明可以有效提升账户注册效率。
可选地,在一些具体实施方式中,执行设备生成的每个密钥对中包含私钥、公钥以及地址。
执行设备在利用预先生成的主密钥加密该密钥对时,具体地,执行设备针对密钥对中的私钥,利用预先生成的主密钥加密该密钥对中的私钥,得到密钥对密文,该密钥对密文中包含私钥密文、公钥以及地址。执行设备在响应账户注册请求时,从持久化存储的多个密钥对密文中获取一个密钥对密文,并将该密钥对密文中的公钥和地址发送给注册请求方。
简言之,执行设备在其内存的配合下生成多个密钥对,每个密钥对中包含公钥、私钥以及地址。执行设备针对每个密钥对,利用预先生成的主密钥加密该密钥对中的私钥,得到私钥密文,并在内存中删除该私钥。执行设备对内存中的每组私钥密文、公钥以及地址进行持久化存储。当执行设备接收到账户注册请求时,执行设备响应于该账户注册请求,从持久化存储的多组私钥密文、公钥以及地址中,获取一组私钥密文、公钥以及地址,并将其中的公钥和地址发送给注册请求方。
其中,注册请求方可以是用户终端。此外,注册请求方也可以是用于代理用户业务的商户的商户终端。例如,银行作为商户,可以代理个人用户或企业用户的存款、贷款、转账、投资等业务,执行设备可以将公钥和地址发送给银行的银行终端。
在一些应用场景中,用户依托于商户开展业务。换言之,商户用于承接用户的业务请求,并通过业务系统处理用户的业务请求。为便于理解,示例地,假设业务系统为区块链系统,银行、证券公司、信托机构等商户可承接个人用户或企业用户的业务请求(例如债券发行请求、债券认购请求、转账请求等),并通过该区块链系统处理用户的业务请求。
为了使得上述应用场景中,依然能高效地实现账户注册,可以执行图2所示的账户注册方法。图2是本发明另一实施例提出的账户注册方法的流程图。如图2所示,该账户注册方法包括以下步骤:
步骤S21:响应于商户注册请求,为新商户生成主密钥。
例如,当某一银行准备加入区块链系统,以期通过该区块链系统处理用户的业务请求时,该银行可以向执行设备提交商户注册请求。执行设备响应于该银行的商户注册请求,为新商户生成主密钥。
可选地,在一些具体实施方式中,商户注册请求可以携带有密钥种子。执行设备接收到商户注册请求后,响应于该商户注册请求,从该商户注册请求中读取出密钥种子,并将该密钥种子加载至内存。然后在内存的配合下,执行设备根据该密钥种子为新商户生成主密钥。例如,执行设备可以将密钥种子输入密钥导出函数(password-based keyderivation function,PBKDF),从而获得密钥导出函数PBKDF生成的主密钥。
步骤S22:在为新商户生成主密钥后,在内存的配合下生成多个密钥对,并针对每个密钥对,利用该新商户的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对。
步骤S23:将内存中的多个密钥对密文作为一组密钥对密文,并进行持久化存储,以及将所述商户注册请求携带的商户ID配置给该组密钥对密文。
步骤S24:响应于账户注册请求,根据该账户注册请求携带的商户ID,从持久化存储的多组密钥对密文中查询配置有该商户ID的一组密钥对密文,并从该组密钥对密文中为新账户分配一个密钥对密文。
本发明中,当执行设备响应商户注册请求,为新商户生成主密钥之后,执行设备可以在内存的配合下,为该新商户生成多个密钥对,并利用该新商户的主密钥加密每个密钥对,得到多个密钥对密文。执行设备将多个密钥对密文作为新商户的一组密钥对密文,并对该组密钥对密文进行持久化存储。此外,执行设备还将新商户的商户ID配置给该组密钥对密文。
如此,当执行设备先后处理了多个商户注册请求后,执行设备会存储多组密钥对密文,每组密钥对密文分别对应一个商户。
当某个已注册的商户发展到新用户时,需要为该新用户注册新账户。为此,该商户可以向执行设备发送账户注册请求,该账户注册请求携带有该商户的商户ID。执行设备响应于该账户注册请求,从该账户注册请求中读取到商户ID,然后以读取到的商户ID为索引,从持久化存储的多组密钥对密文中,查询配置有该商户ID的一组密钥对密文,接着从该组密钥对密文中为新账户分配一个密钥对密文。换言之,执行设备从多个商户的多组密钥对密文中,查询该商户的一组密钥对密文,并从该组密钥对密文中为该商户的新用户分配一个密钥对密文。
图2所示的账户注册方法中,执行设备预先为商户生成多个密钥对,并利用商户的主密钥对多个密钥对进行加密,以及对加密后的密钥对密文进行持久化存储。当接收到账户注册请求时,根据账户注册请求携带的商户ID,从持久化存储的多组密钥对密文中确定该商户ID对应的一组密钥对密文,再从该组密钥对密文中为新账户分配一个密钥对密文。可见本发明中,当接收到账户注册请求时,不需要执行生成密钥对的步骤,而可以从预先生成并持久化存储的多组密钥对密文中,查找到相应商户的一组密钥对密文,然后直接从该组密钥对密文中为新账户分配一个密钥对密文,从而缩减账户注册耗时,因此本发明可以有效提升账户注册效率。
并且图2所示的账户注册方法中,为每个商户分别生成相应的主密钥,并且在为商户生成多个密钥对后,利用商户对应的主密钥加密这些密钥对。如此,使得每个商户有机会可以自主地对自身的主密钥进行更改、轮替等。
可选地,在一些具体实施方式中,考虑到主密钥用于加密密钥对,如果主密钥被破解,则可能导致全部密钥对被暴露。为了尽量缩小密钥对暴露范围,本发明中,执行设备可以为商户生成多个主密钥,并利用多个主密钥加密商户的多个密钥对。
具体实现时,执行设备响应于商户注册请求,为新商户生成一组主密钥,该组主密钥中包括多个互不相同的主密钥。在为新商户生成一组主密钥后,执行设备在内存的配合下生成多个密钥对,并针对每个密钥对,随机或轮询地从该新商户的一组主密钥中选择一个主密钥,并利用该主密钥加密该密钥对,得到密钥对密文,以及在内存中删除该密钥对。
为便于理解,示例地,执行设备接收到商户注册请求后,从该商户注册请求中读取出密钥种子。执行设备将该密钥种子和第一盐值salt拼接成第一字符串,然后将该字符串输入密钥导出函数PBKDF,从而获得密钥导出函数PBKDF生成的第一个主密钥。然后执行设备将该密钥种子和第二盐值salt拼接成第二字符串,然后将该字符串输入密钥导出函数PBKDF,从而获得密钥导出函数PBKDF生成的第二个主密钥。以此类推,执行设备为新商户生成一组主密钥。需要说明的是,第一盐值、第二盐值等多个盐值互不相同。
在为新商户生成多个密钥对后,针对每个密钥对,从预先为该商户生成的一组主密钥中随机或轮询地选择一个主密钥,并将该主密钥加载至内存,然后在内存的配合下,利用该主密钥加密该密钥对,从而得到密钥对密文。如此,为新商户生成的多个密钥对分别由该新商户的多个主密钥分别进行加密,当其中一个主密钥被破解后,仅会导致部分密钥对暴露,而不会导致全部密钥对暴露。
需要说明的是,主密钥的数量与密钥对的数量可以不相等。例如主密钥的数量为50个,密钥对的数量为5000个。
可选地,在一些具体实施方式中,执行设备还可以持续监控每组密钥对密文,在某一组密钥对密文的数量小于第一预设数量的情况下,执行设备在内存的配合下,生成第二预设数量个密钥对。执行设备利用该组密钥对密文对应的商户ID的主密钥,加密所述第二预设数量个密钥对,以获得所述第二预设数量个密钥对密文。执行设备将所述第二预设数量个密钥对密文追加至上述一组密钥对密文。
为便于理解,示例地,执行设备中持久化存储有多组密钥对密文。执行设备持续监测每组密钥对密文中剩余密钥对密文的数量。假设执行设备检测到商户A对应的一组密钥对密文中剩余的密钥对密文数量低于1000,则执行设备响应于此,在内存的配合下,生成5000个新的密钥对,并利用商户A的主密钥对这5000个密钥对进行加密,得到5000个密钥对密文。执行设备从内存中读出这5000个密钥对密文,并将其追加至商户A对应的一组密钥对密文中。
可选地,在一些具体实施方式中,执行设备还针对分配给新账户的密钥对密文,建立该密钥对密文与所述账户注册请求携带的商户ID之间的对应关系。所述密钥对密文中包含私钥密文、公钥以及地址,其中,公钥和地址分别作为账户公钥和账户地址,并被发送给注册请求方。
当执行设备接收到签名请求后,执行设备响应于该签名请求,根据该签名请求携带的账户地址和商户ID,以及根据预先建立的多个对应关系,判断该账户地址和商户ID之间是否具有对应关系;在该账户地址和商户ID之间不具有对应关系的情况下,不执行签名操作。
为便于理解,示例地,假设账户注册请求中携带了商户A的商户ID:ID_A。执行设备响应于该账户注册请求,从商户A对应的一组密钥对密文中为新账户分配了一个密钥对密文。然后,执行设备建立该密钥对密文与ID_A之间的对应关系。如此,该密钥对密文中的私钥密文、公钥以及地址与ID_A之间具有了对应关系。
当执行设备接收到签名请求后,从签名请求中读取到账户地址和商户ID,然后查询该账户地址和商户ID之间是否具有对应关系。若是,则说明该账户是该商户ID下的账户,该商户可以承接该账户的业务请求。若否,则说明该账户不是该商户ID下的账户,该商户不能承接该账户的业务请求,因此执行设备不执行签名操作。
可选地,在一些具体实施方式中,为了提高主密钥的安全性,执行设备还支持对主密钥的轮替。所谓轮替,包括但不限于以下几种情况:(1)按照主密钥更换要求,每隔预设时间长度(例如每3个月)需要更换一次主密钥;(2)用户根据自身意愿,随时发起的主密钥更改操作。
具体实现时,执行设备响应于主密钥轮替请求,对相应的一组主密钥进行轮替,并确定轮替后的新一组主密钥的轮替版本号。
为便于理解,示例地,主密钥轮替请求携带有用户在请求轮替主密钥时输入的原始密钥种子。执行设备接收到主密钥轮替请求后,从主密钥轮替请求中读取到原始密钥种子。执行设备按照先前生成主密钥的方式,根据主密钥轮替请求携带的原始密钥种子,再次生成主密钥。执行设备比较先前生成的主密钥和当前生成的主密钥,如果两者一致,则说明用户具有轮替主密钥的权限,如果两者不一致,则说明用户不具有轮替主密钥的权限。
在用户具有轮替主密钥的权限的情况下,执行设备从主密钥轮替请求中读取出用户在请求轮替主密钥时输入的新的密钥种子,并按照先前生成主密钥的方式,根据主密钥轮替请求携带的新的密钥种子,生成新的主密钥,从而实现主密钥的轮替。此外,如果旧的主密钥的轮替版本号为001,则新的主密钥的轮替版本号可以是002。
当执行设备针对每个密钥对,随机或轮询地从新商户的一组主密钥中选择一个主密钥,并利用该主密钥加密该密钥对,得到密钥对密文之后,执行设备可以针对该密钥对密文,将选择出的主密钥的hash值和轮替版本号赋予该密钥对密文。
为便于理解,示例地,执行设备针对新商户的第一个密钥对,利用该新商户的第一个主密钥加密,得到第一个密钥对的密钥对密文,则执行设备将第一个主密钥的hash值和轮替版本号赋予给第一个密钥对的密钥对密文。执行设备针对新商户的第二个密钥对,利用该新商户的第二个主密钥加密,得到第二个密钥对密文,则执行设备将第二个主密钥的hash值和轮替版本号赋予给第二个密钥对的密钥对密文。以此类推,执行设备利用新商户的多个主密钥加密多个密钥对。需要说明的是,主密钥的数量与密钥对的数量不一定相等,例如主密钥的数量为50个,密钥对的数量为5000个。
还需要说明的是,当需要利用密钥对密文中的私钥密文执行签名操作时,可以根据密钥对密文被赋予的hash值和轮替版本号,从相应版本的一组主密钥中准确查找到该hash值对应的主密钥,从而利用该主密钥解密私钥密文,进而利用解密后的私钥执行签名操作。
本发明中,以主密钥的hash值作为区分主密钥的身份信息,其好处在于:主密钥的hash值不是变量,不会发生不可预期的变化。然而又考虑到商户在轮替密钥时,输入的新的密钥种子可能与原始密钥种子相同,因此轮替后的主密钥与轮替前的主密钥相同,从而导致轮替后的主密钥的hash值与轮替前的主密钥的hash值相等。为了应对这种情况,本发明还为主密钥配置了轮替版本号的属性,从而使得hash值相同但版本不同的主密钥之间可被区分。
可选地,在一些具体实施方式中,在对内存中的多个密钥对密文进行持久化存储之前,还可以对内存中的多个密钥对密文进行批量化备份。通过备份密钥对密文,使得密钥对密文的数据库发生故障后,可以通过备份的密钥对密文,迅速恢复密钥对密文的数据库。
此外,本发明选择在持久化存储密钥对密文之前,对密钥对密文进行备份,其好处在于:在持久化存储密钥对密文之前,密钥对密文还不会被分配给任何新账户,此时能完整地对全部密钥对密文进行备份,不会出现以下情况:某些密钥对密文在未来得及备份的情况下就被分配给新账户。
基于同一发明构思,本发明实施例还提供一种账户注册装置。参考图3,图3是本发明一实施例提出的账户注册装置的示意图。如图3所示,该账户注册装置包括:
密钥对生成和加密模块31,用于在内存的配合下生成多个密钥对,并针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对;
持久化存储模块32,用于对内存中的多个密钥对密文进行持久化存储;
账户注册模块33,用于响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。
可选地,在一些具体实施方式中,每个密钥对中包含私钥、公钥以及地址;
所述密钥对生成和加密模块具体用于:针对密钥对中的私钥,利用预先生成的主密钥加密该密钥对中的私钥,得到密钥对密文,该密钥对密文中包含私钥密文、公钥以及地址;
所述账户注册模块具体用于:响应于账户注册请求,从持久化存储的多个密钥对密文中获取一个密钥对密文,并将该密钥对密文中的公钥和地址发送给注册请求方。
可选地,在一些具体实施方式中,所述装置还包括:
主密钥生成模块,用于响应于商户注册请求,为新商户生成主密钥;
所述密钥对生成和加密模块具体用于:在为新商户生成主密钥后,在内存的配合下生成多个密钥对,并针对每个密钥对,利用该新商户的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对;
所述持久化存储模块具体用于:将内存中的多个密钥对密文作为一组密钥对密文,并进行持久化存储,以及将所述商户注册请求携带的商户ID配置给该组密钥对密文;
所述账户注册模块具体用于:响应于账户注册请求,根据该账户注册请求携带的商户ID,从持久化存储的多组密钥对密文中查询配置有该商户ID的一组密钥对密文,并从该组密钥对密文中为新账户分配一个密钥对密文。
可选地,在一些具体实施方式中,所述主密钥生成模块具体用于:响应于商户注册请求,为新商户生成一组主密钥,该组主密钥中包括多个互不相同的主密钥;
所述密钥对生成和加密模块具体用于:在为新商户生成一组主密钥后,在内存的配合下生成多个密钥对,并针对每个密钥对,随机或轮询地从该新商户的一组主密钥中选择一个主密钥,并利用该主密钥加密该密钥对,得到密钥对密文,以及在内存中删除该密钥对。
可选地,在一些具体实施方式中,所述装置还包括:
对应关系建立模块,用于针对分配给新账户的密钥对密文,建立该密钥对密文与所述账户注册请求携带的商户ID之间的对应关系;所述密钥对密文中包含私钥密文、公钥以及地址,其中,公钥和地址分别作为账户公钥和账户地址,并被发送给注册请求方;
所述装置还包括:
对应关系判断模块,用于响应于签名请求,根据该签名请求携带的账户地址和商户ID,以及根据预先建立的多个对应关系,判断该账户地址和商户ID之间是否具有对应关系;
签名操作模块,用于在该账户地址和商户ID之间不具有对应关系的情况下,不执行签名操作。
可选地,在一些具体实施方式中,所述装置还包括:
主密钥轮替模块,用于响应于主密钥轮替请求,对相应的一组主密钥进行轮替,并确定轮替后的新一组主密钥的轮替版本号;
所述装置还包括:
属性赋予模块,用于在所述密钥对生成和加密模块针对每个密钥对,随机或轮询地从该新商户的一组主密钥中选择一个主密钥,并利用该主密钥加密该密钥对,得到密钥对密文之后,针对该密钥对密文,将选择出的主密钥的hash值和轮替版本号赋予该密钥对密文。
可选地,在一些具体实施方式中,所述装置还包括:
密钥对密文备份模块,用于在所述持久化存储模块对内存中的多个密钥对密文进行持久化存储之前,对内存中的多个密钥对密文进行批量化备份。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
基于同一发明构思,本发明实施例还提供了一种电子设备,如图4所示,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信。
所述存储器403,用于存放计算机程序;
所述处理器401,用于在执行存储器403上所存放的程序时,实现如下步骤:
在内存的配合下生成多个密钥对,并针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对;
对内存中的多个密钥对密文进行持久化存储;
响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。
或者,处理器401用于在执行存储器403上所存放的程序时,实现本发明以上其他方法实施例所提供的账户注册方法步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(ApplicationSpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的账户注册方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种账户注册方法,其特征在于,所述方法包括:
在内存的配合下生成多个密钥对,并针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对;
对内存中的多个密钥对密文进行持久化存储;
响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。
2.根据权利要求1所述的方法,其特征在于,每个密钥对中包含私钥、公钥以及地址;
所述利用预先生成的主密钥加密该密钥对,得到密钥对密文,包括:
针对密钥对中的私钥,利用预先生成的主密钥加密该密钥对中的私钥,得到密钥对密文,该密钥对密文中包含私钥密文、公钥以及地址;
所述响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文,包括:
响应于账户注册请求,从持久化存储的多个密钥对密文中获取一个密钥对密文,并将该密钥对密文中的公钥和地址发送给注册请求方。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于商户注册请求,为新商户生成主密钥;
所述在内存的配合下生成多个密钥对,并针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对,包括:
在为新商户生成主密钥后,在内存的配合下生成多个密钥对,并针对每个密钥对,利用该新商户的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对;
所述对内存中的多个密钥对密文进行持久化存储,包括:
将内存中的多个密钥对密文作为一组密钥对密文,并进行持久化存储,以及将所述商户注册请求携带的商户ID配置给该组密钥对密文;
所述响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文,包括:
响应于账户注册请求,根据该账户注册请求携带的商户ID,从持久化存储的多组密钥对密文中查询配置有该商户ID的一组密钥对密文,并从该组密钥对密文中为新账户分配一个密钥对密文。
4.根据权利要求3所述的方法,其特征在于,所述响应于商户注册请求,为新商户生成主密钥,包括:
响应于商户注册请求,为新商户生成一组主密钥,该组主密钥中包括多个互不相同的主密钥;
所述在为新商户生成主密钥后,在内存的配合下生成多个密钥对,并针对每个密钥对,利用该新商户的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对,包括:
在为新商户生成一组主密钥后,在内存的配合下生成多个密钥对,并针对每个密钥对,随机或轮询地从该新商户的一组主密钥中选择一个主密钥,并利用该主密钥加密该密钥对,得到密钥对密文,以及在内存中删除该密钥对。
5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
针对分配给新账户的密钥对密文,建立该密钥对密文与所述账户注册请求携带的商户ID之间的对应关系;所述密钥对密文中包含私钥密文、公钥以及地址,其中,公钥和地址分别作为账户公钥和账户地址,并被发送给注册请求方;
所述方法还包括:
响应于签名请求,根据该签名请求携带的账户地址和商户ID,以及根据预先建立的多个对应关系,判断该账户地址和商户ID之间是否具有对应关系;
在该账户地址和商户ID之间不具有对应关系的情况下,不执行签名操作。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
响应于主密钥轮替请求,对相应的一组主密钥进行轮替,并确定轮替后的新一组主密钥的轮替版本号;
在针对每个密钥对,随机或轮询地从该新商户的一组主密钥中选择一个主密钥,并利用该主密钥加密该密钥对,得到密钥对密文之后,所述方法还包括:
针对该密钥对密文,将选择出的主密钥的hash值和轮替版本号赋予该密钥对密文。
7.根据权利要求1至5任一所述的方法,其特征在于,在对内存中的多个密钥对密文进行持久化存储之前,所述方法还包括:
对内存中的多个密钥对密文进行批量化备份。
8.一种账户注册装置,其特征在于,所述装置包括:
密钥对生成和加密模块,用于在内存的配合下生成多个密钥对,并针对每个密钥对,利用预先生成的主密钥加密该密钥对,得到密钥对密文,并在内存中删除该密钥对;
持久化存储模块,用于对内存中的多个密钥对密文进行持久化存储;
账户注册模块,用于响应于账户注册请求,从持久化存储的多个密钥对密文中为新账户分配一个密钥对密文。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于在执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时,实现权利要求1-7任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110065002.9A CN112733130B (zh) | 2021-01-18 | 2021-01-18 | 账户注册方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110065002.9A CN112733130B (zh) | 2021-01-18 | 2021-01-18 | 账户注册方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112733130A true CN112733130A (zh) | 2021-04-30 |
CN112733130B CN112733130B (zh) | 2022-11-29 |
Family
ID=75592207
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110065002.9A Active CN112733130B (zh) | 2021-01-18 | 2021-01-18 | 账户注册方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112733130B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268722A (zh) * | 2021-05-17 | 2021-08-17 | 时昕昱 | 一种个人数字身份管理系统与方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100142711A1 (en) * | 2008-12-09 | 2010-06-10 | Brian Weis | Group key management re-registration method |
US20120310840A1 (en) * | 2009-09-25 | 2012-12-06 | Danilo Colombo | Authentication method, payment authorisation method and corresponding electronic equipments |
CN102915263A (zh) * | 2012-10-19 | 2013-02-06 | 北京小米科技有限责任公司 | 一种数据备份方法、系统和设备 |
CN103220295A (zh) * | 2013-04-26 | 2013-07-24 | 福建伊时代信息科技股份有限公司 | 一种文档加密及解密的方法、装置和系统 |
WO2016207527A1 (fr) * | 2015-06-22 | 2016-12-29 | Orange | Procédé de conversion d'un premier chiffré en un deuxième chiffré |
CN106302411A (zh) * | 2016-08-03 | 2017-01-04 | 西安邮电大学 | 基于Windows平台的支持文件加密的安全云存储方法及系统 |
CN107113167A (zh) * | 2014-12-12 | 2017-08-29 | Kddi株式会社 | 管理装置、密钥生成装置、车辆、维护工具、管理系统、管理方法以及计算机程序 |
US20190028273A1 (en) * | 2016-01-18 | 2019-01-24 | Roland Harras | Method for saving data with multi-layer protection, in particular log-on data and passwords |
US20190215157A1 (en) * | 2017-03-03 | 2019-07-11 | Tencent Technology (Shenzhen) Company Limited | Information storage method, device, and computer-readable storage medium |
CN111931195A (zh) * | 2020-06-01 | 2020-11-13 | 山东浪潮质量链科技有限公司 | 一种基于区块链的用户私钥管理方法、设备及介质 |
-
2021
- 2021-01-18 CN CN202110065002.9A patent/CN112733130B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100142711A1 (en) * | 2008-12-09 | 2010-06-10 | Brian Weis | Group key management re-registration method |
US20120310840A1 (en) * | 2009-09-25 | 2012-12-06 | Danilo Colombo | Authentication method, payment authorisation method and corresponding electronic equipments |
CN102915263A (zh) * | 2012-10-19 | 2013-02-06 | 北京小米科技有限责任公司 | 一种数据备份方法、系统和设备 |
CN103220295A (zh) * | 2013-04-26 | 2013-07-24 | 福建伊时代信息科技股份有限公司 | 一种文档加密及解密的方法、装置和系统 |
CN107113167A (zh) * | 2014-12-12 | 2017-08-29 | Kddi株式会社 | 管理装置、密钥生成装置、车辆、维护工具、管理系统、管理方法以及计算机程序 |
WO2016207527A1 (fr) * | 2015-06-22 | 2016-12-29 | Orange | Procédé de conversion d'un premier chiffré en un deuxième chiffré |
US20190028273A1 (en) * | 2016-01-18 | 2019-01-24 | Roland Harras | Method for saving data with multi-layer protection, in particular log-on data and passwords |
CN106302411A (zh) * | 2016-08-03 | 2017-01-04 | 西安邮电大学 | 基于Windows平台的支持文件加密的安全云存储方法及系统 |
US20190215157A1 (en) * | 2017-03-03 | 2019-07-11 | Tencent Technology (Shenzhen) Company Limited | Information storage method, device, and computer-readable storage medium |
CN111931195A (zh) * | 2020-06-01 | 2020-11-13 | 山东浪潮质量链科技有限公司 | 一种基于区块链的用户私钥管理方法、设备及介质 |
Non-Patent Citations (3)
Title |
---|
WANTONG ZHENG等: "CombinedPWD: A New Password Authentication Mechanism using Separators between Keystrokes", 《网页在线公开:HTTPS://IEEEXPLORE.IEEE.ORG/STAMP/STAMP.JSP?TP=&ARNUMBER=8288551》 * |
姜文超等: "加密强度可定制的新型文本加解密算法", 《计算机科学与探索》 * |
王云峰: "利用一次函数加密", 《数学阅读》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268722A (zh) * | 2021-05-17 | 2021-08-17 | 时昕昱 | 一种个人数字身份管理系统与方法 |
CN113268722B (zh) * | 2021-05-17 | 2022-04-26 | 时昕昱 | 一种个人数字身份管理系统与方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112733130B (zh) | 2022-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10020942B2 (en) | Token-based secure data management | |
JP6547079B1 (ja) | 登録・認可方法、装置及びシステム | |
CN111783075A (zh) | 基于密钥的权限管理方法、装置、介质及电子设备 | |
US10887085B2 (en) | System and method for controlling usage of cryptographic keys | |
CN109347839B (zh) | 集中式密码管理方法、装置、电子设备及计算机存储介质 | |
TW202042526A (zh) | 可靠的使用者服務系統和方法 | |
JP6614280B1 (ja) | 通信装置および通信方法 | |
CN112215609B (zh) | 基于超级账本的房产用户身份认证方法、装置和电子设备 | |
JP7053031B2 (ja) | 情報処理システム、情報処理装置、情報処理方法及び情報処理プログラム | |
US11611558B2 (en) | Integration of third-party encryption key managers with cloud services | |
JP2022545809A (ja) | 暗号鍵生成のためのセキュアな環境 | |
CN112887087B (zh) | 数据管理方法、装置、电子设备及可读存储介质 | |
KR20210099814A (ko) | 블록체인을 기반으로 한 디지털 자산 관리 시스템 및 방법 | |
CN112733130B (zh) | 账户注册方法、装置、电子设备及可读存储介质 | |
CN113642239B (zh) | 一种联邦学习建模方法及系统 | |
CN107547570B (zh) | 一种数据安全服务平台和数据安全传输方法 | |
WO2021160981A1 (en) | Methods and apparatus for controlling access to personal data | |
CN117371010A (zh) | 数据匿踪查询方法、电子设备和可读存储介质 | |
CN106685906B (zh) | 鉴权处理方法、节点及系统 | |
CN114514550A (zh) | 将请求分区成区块链的交易 | |
CN116346486A (zh) | 联合登录方法、装置、设备及存储介质 | |
CN110995454A (zh) | 一种业务验证方法及系统 | |
CN114095165B (zh) | 密钥更新方法、服务端设备、客户端设备及存储介质 | |
CN112769846B (zh) | 密钥管理方法、装置、电子设备及可读存储介质 | |
CN113609077A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |