CN111192050B - 一种数字资产私钥存储提取方法及装置 - Google Patents

一种数字资产私钥存储提取方法及装置 Download PDF

Info

Publication number
CN111192050B
CN111192050B CN201911402481.8A CN201911402481A CN111192050B CN 111192050 B CN111192050 B CN 111192050B CN 201911402481 A CN201911402481 A CN 201911402481A CN 111192050 B CN111192050 B CN 111192050B
Authority
CN
China
Prior art keywords
private key
ciphertext
address
plaintext
data packet
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.)
Active
Application number
CN201911402481.8A
Other languages
English (en)
Other versions
CN111192050A (zh
Inventor
牛凌云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Cooper Technology Group Co ltd
Original Assignee
Chengdu Cooper Innovation Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Cooper Innovation Technology Co ltd filed Critical Chengdu Cooper Innovation Technology Co ltd
Priority to CN201911402481.8A priority Critical patent/CN111192050B/zh
Publication of CN111192050A publication Critical patent/CN111192050A/zh
Application granted granted Critical
Publication of CN111192050B publication Critical patent/CN111192050B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本申请公开了一种数字资产私钥存储提取方法及装置,通过在生成器端生成私钥明文;根据私钥明文计算对应的公钥和地址;将私钥明文加密,得到第一私钥密文;将包含第一私钥密文、公钥和地址的数据包发送至存储器端;在存储器端将第一私钥密文加密,得到第二私钥密文;将包含第二私钥密文、公钥和地址的数据包存储至数据库。本申请提供的方案通过在生成器端和存储器端分别采用AES对称加密算法加密私钥,并且采用不同加密盐加密,保证了存储系统或交易系统均不能单方面解密获得明文私钥,进而确保存储层的私钥数据安全;同时将地址和经二次加密后的私钥密文存储在企业级的数据库中,方便企业通过地址能快速检索到对应的私钥密文。

Description

一种数字资产私钥存储提取方法及装置
技术领域
本发明涉及数字资产存储管理技术领域,尤其涉及一种数字资产私钥存储提取方法及装置。
背景技术
区块链账本的基本结构中,有两个重要的组成部分:“账户”(Account)和“交易”(Translation)。对区块链账本的操作,必须是某个账户发起了一笔交易,导致账本状态产生了一次改变,例如添加一条账户A对账户B的转账记录。
账户是用户在区块链网络上的唯一性标识,区块链账户由一个公钥-私钥对代表,其中私钥由用户或企业秘密保管,并对所有用户发起的交易进行签名,公钥在区块链中被公布出来,使区块链节点能够验证该用户所发起的交易内容。用户或企业必须妥善保管私钥,私钥一旦丢失或者被盗用,将直接造成私钥所对应地址中存放的数字资产的损失,因此对私钥的存储、管理至关重要。
私钥既可以保存为本地文件,也可以保存到物理加密设备中,只在用户发起交易时才提取使用。现有技术中,保管私钥的方案机制通常采用以太坊的keystone文件加密的方式,该方案允许用户以加密的方式存储密钥。应用该方案,用户只需要keystore文件和密码就能使用数字资产,其可用性更高;然而,高可用性的同时带来了安全性方面的问题,一个攻击者在获得用户密码和keystone文件时即可获得钱包用户的私钥,极大降低了私钥的保密程度;并且,keystone文件加密方式对于企业级管理来说,托管并加载大量零散的keystone文件需要较高性能的服务器,当零散文件太多时,查询和检索keystone文件非常困难且效率低下;另外,keystone文件加密方案的可移植性弱,并不适用于多种区块链,不方便对各种企业执行统一管理和数据传输。
发明内容
本发明的目的在于提出一种数字资产私钥存储提取方法及装置,以解决现有技术中私钥安全性不高、不方便查询、方法可移植性弱问题。
第一方面,本申请提供了一种数字资产私钥存储使用方法,应用于生成器端,方法包括:
生成私钥明文;
根据所述私钥明文计算对应的公钥和地址;
将私钥明文加密,得到第一私钥密文;
将包含第一私钥密文、公钥和地址的数据包发送至存储器端。
可选的,所述将包含第一私钥密文、公钥和地址的数据包发送至存储器端的步骤包括:
对所述第一私钥密文、公钥和地址进行加密,得到加密数据包;
采用第一传输协议发送加密数据包;
当加密数据包到达存储器端后,对加密数据包进行解密,得到所述第一私钥密文、公钥和地址。
可选的,所述将私钥明文加密,得到第一私钥密文步骤包括:
根据第一盐值,采用AES算法对私钥明文加密,得到第一私钥密文。
可选的,所述根据第一盐值,采用AES算法对私钥明文加密包括:
将私钥明文采用预设规则分成N个明文分组;其中N为大于1的整数;
将第一个明文分组结合第一初始化向量后添加第一盐值,得到第一个密文分组;
将第i个明文分组结合第i-1个密文分组后添加第一盐值,得到第i个密文分组;其中i=2~N;
将N个密文分组合并为第一私钥密文。
可选的,所述私钥明文采用椭圆曲线数字签名算法随机生成。
第二方面,本申请提供了一种数字资产私钥存储使用方法,应用于存储器端,方法包括:
接收生成器端发送的包含第一私钥密文、公钥和地址的数据包;
将第一私钥密文加密,得到第二私钥密文;
将包含第二私钥密文、公钥和地址的数据包存储至数据库。
可选的,所述将包含第二私钥密文、公钥和地址的数据包存储至数据库的步骤包括:
在数据库中建立关系数据表;
关联第二私钥密文以及与所述第二私钥密文对应的公钥和地址,生成关联数据;
将关联数据写入所述关系数据表。
可选的,所述将第一私钥密文加密,得到第二私钥密文的步骤包括:
根据第二盐值,采用AES算法对第一私钥密文加密,得到第二私钥密文;其中,所述第二盐值与得到第一私钥密文时加密采用的第一盐值不同。
可选的,所述根据第二盐值,采用AES算法对第一私钥密文加密的步骤包括:
将第一私钥密文采用预设规则分成N个密文分组;其中N为大于1的整数;
将第一个密文分组结合第二初始化向量后添加第二盐值,得到第一个二层密文分组;
将第i个密文分组结合第i-1个二层密文分组后添加第二盐值,得到第i个二层密文分组;其中i=2~N;
将N个二层密文分组合并为第二私钥密文。
第三方面,本申请提供了一种数字资产私钥提取方法,应用于存储器端,方法包括:
获取交易端的交易请求;所述交易请求包含地址;
根据交易请求中的地址,在数据库中查询与所述地址对应的第二私钥密文;
将第二私钥密文解密,得到第一私钥密文;
将包含第一私钥密文、公钥和地址的数据包发送至交易端。
第四方面,本申请提供了一种数字资产私钥提取方法,应用于交易端,方法包括:
获取用户输入的交易信息,根据交易信息生成交易请求;所述交易请求包含地址;
发送交易请求至存储器端;
接收存储器端发送的第一私钥密文、公钥和地址的数据包;
将第一私钥密文采用生成器端所采用加密算法相对应的解密算法解密,得到私钥明文。
第五方面,本申请提供了一种数字资产私钥存储装置,包括:
私钥生成单元,用于生成私钥明文;
计算单元,用于根据所述私钥明文计算对应的公钥和地址;
第一加密单元,用于将私钥明文加密,得到第一私钥密文;
第一发送单元,将包含第一私钥密文、公钥和地址的数据包发送至存储器端。
可选的,所述第一发送单元包括:
加密子单元,用于对所述第一私钥密文、公钥和地址进行加密,得到加密数据包;
发送子单元,用于采用第一传输协议发送加密数据包;
解密子单元,用于当加密数据包到达存储器端后,对加密数据包进行解密,得到所述第一私钥密文、公钥和地址。
可选的,所述第一加密单元还用于根据第一盐值,采用AES算法对私钥明文加密,得到第一私钥密文。
可选的,所述第一加密单元包括:
第一拆分子单元,用于将私钥明文采用预设规则分成N个明文分组;其中N为大于1的整数;
第一加盐子单元,用于将第一个明文分组结合第一初始化向量后添加第一盐值,得到第一个密文分组;还用于将第i个明文分组结合第i-1个密文分组后添加第一盐值,得到第i个密文分组;其中i=2~N;
第一合并子单元,用于将N个密文分组合并为第一私钥密文。
第六方面,本申请提供了一种数字资产私钥存储装置,包括:
第一接收单元,用于接收生成器端发送的包含第一私钥密文、公钥和地址的数据包;
第二加密单元,用于将第一私钥密文加密,得到第二私钥密文;
存储单元,用于将包含第二私钥密文、公钥和地址的数据包存储至数据库。
可选的,所述存储单元包括:
建表子单元,用于在数据库中建立关系数据表;
关联子单元,用于关联第二私钥密文以及与所述第二私钥密文对应的公钥和地址,生成关联数据;
写入子单元,用于将关联数据写入所述关系数据表。
可选的,所述第二加密单元还用于根据第二盐值,采用AES算法对第一私钥密文加密,得到第二私钥密文;其中,所述第二盐值与得到第一私钥密文时加密采用的第一盐值不同。
可选的,所述第二加密单元包括:
第二拆分子单元,用于将第一私钥密文采用预设规则分成N个密文分组;其中N为大于1的整数;
第二加盐子单元,用于将第一个密文分组结合第二初始化向量后添加第二盐值,得到第一个二层密文分组;还用于将第i个密文分组结合第i-1个二层密文分组后添加第二盐值,得到第i个二层密文分组;其中i=2~N;
第二合并子单元,用于将N个二层密文分组合并为第二私钥密文。
第七方面,本申请提供了一种数字资产私钥提取装置,包括:
请求获取单元,用于获取交易端的交易请求;所述交易请求包含地址;
查询单元,用于根据交易请求中的地址,在数据库中查询与所述地址对应的第二私钥密文;
第一解密单元,用于将第二私钥密文解密,得到第一私钥密文;
第二发送单元,用于将包含第一私钥密文、公钥和地址的数据包发送至交易端。
第八方面,本申请提供了一种数字资产私钥提取装置,包括:
请求生成单元,用于获取用户输入的交易信息,根据交易信息生成交易请求;所述交易请求包含地址;
第三发送单元,用于发送交易请求至存储器端;
第二接收单元,用于接收存储器端发送的第一私钥密文、公钥和地址的数据包;
第二解密单元,用于将第一私钥密文采用生成器端所采用加密算法相对应的解密算法解密,得到私钥明文。
本申请提供的方案通过在生成器端和存储器端分别采用AES对称加密算法加密私钥,并且采用不同加密盐加密,保证了存储系统或交易系统均不能单方面解密获得明文私钥,进而确保存储层的私钥数据安全;同时将地址和经二次加密后的私钥密文存储在企业级的数据库中,方便企业通过地址能快速检索到对应的私钥密文。
本申请采用HTTPS(HyperText Transfer Protocol Secure)超文本安全通信传输协议,利用SSL/TLS来加密数据包,保证了密钥生成系统和存储系统和交易系统之间信息传递的可靠性和私密性。
本申请提供的方案独立于区块链交易模块,且采用了普适的加密、传输和存储手段,因此具备较强的可移植性和通用性,不受区块链本身实现差异的限制,任何区块链数字钱包相关的企业均可采用本申请提供的方案进行多种区块链账户私钥的管理。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一种数字资产私钥存储方法流程图;
图2为图1所示方法中步骤S30在一种实施例下的分解流程图;
图3为本申请一种数字资产私钥存储使用方法的一种优选例流程图;
图4为图1所示方法中步骤S60在一种实施例下的分解流程图;
图5为图1所示方法中步骤S70在一种实施例下的分解流程图;
图6为本申请一种数字资产私钥提取方法流程图;
图7为本申请一种数字资产私钥存储装置结构图;
图8为图7所示装置中第一发送单元的构成图;
图9为图7所示装置中第一加密单元的构成图;
图10为本申请另一种数字资产私钥存储装置结构图;
图11为图10所示装置中存储单元的构成图;
图12为图10所示装置中第二加密单元的构成图;
图13为本申请一种数字资产私钥提取装置结构图;
图14为本申请另一种数字资产私钥提取装置结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,为本申请一种数字资产私钥存储方法流程图;
由图1可知,本申请提供了一种数字资产私钥存储方法,该方法应用于生成器端,所述方法包括:
S10:生成私钥明文;
在本实施例中,生成器端是指集成特定的私钥生成算法或提供有SDK(软件开发工具包Software Development Kit)等功能的终端的总称,其硬件表现形式可为私钥生成器、私钥发生器等;
在区块链的各个节点中,由于区块链不同,采用的私钥生成算法可能不同,因此在步骤S10中需要根据不同区块链的性质生成满足不同算法的私钥,本文中以目前区块链中比较常用的椭圆曲线数字签名算法为例,应当认为,其它生成私钥的算法也包括在本申请所限定的范围之内。
椭圆曲线数字签名算法(Elliptic Curve Digital Signature Algorithm,缩写:ECDSA),其原理如下:
该算法的签名过程如下:
步骤一、选择一条椭圆曲线Ep(a,b),和基点G;
步骤二、选择私有密钥k(k<n,n为G的阶),利用基点G计算公开密钥K=kG;
步骤三、产生一个随机整数r(r<n),计算点R=rG;
步骤四、将原数据和点R的坐标值x,y作为参数,计算SHA1做为hash,即Hash=SHA1(原数据,x,y);
步骤五、计算s≡r-Hash*k(mod n)
步骤六、r和s做为签名值,如果r和s其中一个为0,重新从步骤三开始执行
该算法的验证过程如下:
步骤一、接受方在收到消息(m)和签名值(r,s)后,进行以下运算
步骤二、计算:sG+H(m)P=(x1,y1),r1≡x1 mod p。
步骤三、验证等式:r1≡r mod p。
步骤四、如果等式成立,接受签名,否则签名无效。
采用算法生成的私钥明文通常是一串64位16进制字符(32字节),用于证明对应地址下的数字资产所有权,该私钥一旦生成,说明该用户拥有了该私钥对应的数字资产。
S20:根据所述私钥明文计算对应的公钥和地址;
在私钥明文生成后,随即一同产生的是与私钥明文对应的公钥和地址,在本实施例中,对于公钥和地址的计算过程可采用现有技术中常见的算法,在此不作限制。需要说明的是,本申请中同样不作限制的是对于公钥和地址的传输状态,即公钥和地址既可以作为单独数据进行发送,也可以和其它数据打包一并发送;另外,对于一组私钥对应的公钥和地址,应当是具备相同特征,以便于与其它私钥间进行区分,还有利于后续对于存储私钥的查询高效进行。
S30:将私钥明文加密,得到第一私钥密文;
对私钥明文加密可以采用多种加密方法,示例性的,在本实施例中可根据第一盐值,采用AES算法对私钥明文加密,得到第一私钥密文;AES(Advanced Encryption Standard)也称对称加密算法,AES不是将拿到的明文一次性加密,而是分组加密,就是先将明文切分成长度相等的块,每块大小128bit,再对每一小块进行加密,具体的,由图2示出的一种可行性实施例中,所述步骤S30可由下述过程说明:
S31:将私钥明文采用预设规则分成N个明文分组;其中N为大于1的整数;在AES标准规范中,将私钥明文分成长度相等的多个明文分组,每次加密一组数据,直到加密完整个私钥明文;每个明文分组的长度为128位,即每个分组16个字节(每个字节8位),而密钥的长度可以是128位、192位或256位,因此,要想获得不同长度的加密私钥,可以通过不同的加密轮数对明文分组进行加密。
S32:将第一个明文分组结合第一初始化向量后添加第一盐值,得到第一个密文分组;第一初始化向量可根据实际需求设置,其数据结构应与明文分组对应,以便在执行运算后得到指定长度的分组;
S33:将第i个明文分组结合第i-1个密文分组后添加第一盐值,得到第i个密文分组;其中i=2~N;当第一组明文分组加密完成后,得到了第一组密文分组,该第一组密文分组即作为第二组明文分组加密时的初始化向量,用于得到第二组密文分组;以此类推,下一组明文分组的加密都需要结合前一组生成的密文分组,使得密文分组的安全性更高。
S34:将N个密文分组合并为第一私钥密文;具体的,可以根据预设的顺序将生成的密文分组顺次排列而成,还可以根据预设规则排列密文分组,进而增加解密难度,提高安全性。
进一步的,当将私钥明文加密得到第一私钥密文之后,所述方法还包括立即删除生成器端程序内存中的私钥明文数据,使得私钥明文仅在生成后的一段较短时长内存在,这样,即使攻击者在后续过程中盗取了数据,也无法得到私钥明文,增加了安全性。
S40:将包含第一私钥密文、公钥和地址的数据包发送至存储器端。
在本实施例中,完成步骤S40可以通过生成器端配置发送功能的模块来完成,还可通过将生成器端外接发送设备来完成,例如外接传输器;当传输数据时,为了防止攻击者在传输过程中盗取传输的数据,由图3可知,在一种可行性实施例中,步骤S40还可分解为:
S41:对所述第一私钥密文、公钥和地址进行加密,得到加密数据包;具体的,可利用SSL/TLS来加密数据包,保证了密钥生成系统和存储系统和交易系统之间信息传递的可靠性和私密性;
S42:采用第一传输协议发送加密数据包;具体的,可采用HTTPS(HyperText Transfer Protocol Secure)超文本安全通信传输协议。
S43:当加密数据包到达存储器端后,对加密数据包进行解密,得到所述第一私钥密文、公钥和地址。具体的,可在存储器端配置的接收单元中存储有步骤S41中加密方法的解密规则,采用逆向的方法解密得到发送前的数据结构。
由上述技术方案可知,本申请提供的一种数字资产私钥存储方法中,生成器端通过对生成的私钥计算得到对应的公钥和地址,并且采用AES算法立即对私钥明文进行第一次加密,得到第一私钥密文;最后再利用传输协议将加密的数据包发送至存储器端;该方法使得生成的私钥明文仅在生成的一瞬间存在于程序内存中,在外部传输和存储中都不会存在私钥明文,从而保证了私钥的安全性。
由图1可知,本申请提供的一种数字资产私钥存储方法,在存储器端中应用时,所述方法包括:
S50:接收生成器端发送的包含第一私钥密文、公钥和地址的数据包;
S60:将第一私钥密文加密,得到第二私钥密文;
对私钥密文加密可以采用多种加密方法,示例性的,在本实施例中可根据第二盐值,采用AES算法对私钥密文加密,得到第二私钥密文;需要说明的是,所述第二盐值与得到第一私钥密文时加密采用的第一盐值不同,即存储器端在执行加密过程时虽然与生成器端采用相同的算法,但由于采用的盐值不同,不能通过相同的方式进行解密。与上述步骤30类似的,由图4示出的一种可行性实施例中,所述步骤S60可由下述过程说明:
S61:将第一私钥密文采用预设规则分成N个密文分组;其中N为大于1的整数;此时的方法演变为将私钥密文分成长度相等的多个密文分组,每次加密一组数据,直到加密完整个第一私钥密文;此时密文分组的长度可以是128位、192位或256位,因此,要想获得不同长度的加密私钥,仍然可以通过不同的加密轮数对密文分组进行加密。
S62:将第一个密文分组结合第二初始化向量后添加第二盐值,得到第一个二层密文分组;第二初始化向量可根据实际需求设置,其数据结构应与密文分组对应,以便在执行运算后得到指定长度的分组。
S63:将第i个密文分组结合第i-1个二层密文分组后添加第二盐值,得到第i个二层密文分组;其中i=2~N;当第一组密文分组加密完成后,得到了第一组二层密文分组,该第一组二层密文分组即作为第二组密文分组加密时的初始化向量,用于得到第二组二层密文分组;以此类推,下一组密文分组的加密都需要结合前一组生成的二层密文分组,使得二层密文分组的安全性更高。
S64:将N个二层密文分组合并为第二私钥密文;具体的,可以根据预设的顺序将生成的二层密文分组顺次排列而成,还可以根据预设规则排列二层密文分组,进而增加解密难度,提高安全性。
在本实施例中,存储器端对由生成器端加密得到的第一私钥密文进行第二次的加密,得到第二私钥密文用于存储,由于两次加密过程由两端分别采用两种不同盐值进行,如果被攻击者盗取后,即使攻击者掌握了其中一端的加密规则用于解密,也无法获取到原始的私钥明文,进而提高了私钥的解密难度,提高安全性。
S70:将包含第二私钥密文、公钥和地址的数据包存储至数据库。
在本实施例中,在将第二私钥密文、公钥和地址打包前,存储器端通常需要对打包内容进行加工、整理和关联操作,例如通过格式化数据的方式,将数据转化为行数据存储在数据库中,其表现形式可为二维图标等结构;数据库是指存储器端内置或外接的企业级的数据单元,企业或个人用户可通过输入地址等信息在数据库中查询与地址相对应的私钥或公钥以及其他信息。
具体的,由图5可知,在一种可行性实施例中,上述存储过程可以分解为:
S71:在数据库中建立关系数据表;关系数据表中的项目不限于包括用户名称、用户地址、代表私钥密文的数据、公钥、助记词等等。
S72:关联第二私钥密文以及与所述第二私钥密文对应的公钥和地址,生成关联数据;具体的,可以采取将属于同一私钥的数据添加标识,并集中存储;
S73:将关联数据写入所述关系数据表;这样,通过某一数据信息(例如地址)就可以快速检索到加密私钥、公钥或其它信息。
由上述技术方案可知,本申请提供的一种数字资产私钥存储方法中,存储器端通过对接收到的经生成器加密后的私钥密文进行二次加密,得到安全性更高的第二私钥密文,再通过对数据关联存储,既能保证私钥存储的安全性,又能方便用户进行私钥的查询或提取等操作。
参见图6,为本申请提供的一种数字资产私钥提取方法流程图;
由图6可知,本申请还提供了一种数字资产私钥提取方法,该方法是上述存储过程的逆向过程,当适用于存储器端时,所述方法包括:
S100:获取交易端的交易请求;所述交易请求包含地址;
当用户想要进行交易而需要使用私钥时,可由交易端向存储有第二私钥密文的存储器端发送交易请求,请求获得其中存储的私钥内容。
S110:根据交易请求中的地址,在数据库中查询与所述地址对应的第二私钥密文;
由于数据库中存储的数据经过关联处理,因此可以在数据库中查询与所述地址相同的地址,进而找到一系列相关的数据;其中即包括第二私钥密文、公钥等;
S120:将第二私钥密文解密,得到第一私钥密文;此时存储器端采用的是与加密过程中对应的解密规则进行解密,具体解密过程在此不再赘述。
S130:将包含第一私钥密文、公钥和地址的数据包发送至交易端;与前述方法相同的,其数据传输时也采用HTTPS+SSL安全传输密文的方法,在此不再赘述。
当所述方法适用于交易端时,所述方法包括:
S80:获取用户输入的交易信息,根据交易信息生成交易请求;所述交易请求包含地址;用户输入的交易信息代表了用户身份,其可以是用户账号、密码、交易订单等整合而成,根据交易信息判断当前用户的身份,并对应该用户的地址。
S90:发送交易请求至存储器端;
S140:接收存储器端发送的第一私钥密文、公钥和地址的数据包;
S150:将第一私钥密文采用生成器端所采用加密算法相对应的解密算法解密,得到私钥明文;这里,需要交易端提前知晓执行加密第一私钥密文的生成器端采用的加密规则,并配置相应的解密算法;这时,交易端就可以在进程内部把第一私钥密文解密为私钥明文,并一次性将交易签名打包。
进一步的,在完成交易签名打包过程后,可将交易端进程内部存储空间的私钥明文数据删除,以防止攻击者从交易端盗取私钥明文。
从上述技术方案可知,当对存储的私钥密文进行提取时,任何第三方都不能单一方面解开密文,必须通过存储器端和配置有与生成器端对应解密算法的交易端分别执行解密,才能得到私钥明文用于签名交易,并且,敏感的私钥明文只在使用签名交易的较短时间内存在与程序内存中,任何外部传输和存储中都不会存在私钥明文,从而保证了存储私钥的安全可靠。
参见图7,为本申请一种数字资产私钥存储装置构成图;
由图7可知,所述装置包括:
私钥生成单元10,用于生成私钥明文;
计算单元20,用于根据所述私钥明文计算对应的公钥和地址;
第一加密单元30,用于将私钥明文加密,得到第一私钥密文;
第一发送单元40,将包含第一私钥密文、公钥和地址的数据包发送至存储器端。
进一步的,由图8可知,所述第一发送单元40包括:
加密子单元41,用于对所述第一私钥密文、公钥和地址进行加密,得到加密数据包;
发送子单元42,用于采用第一传输协议发送加密数据包;
解密子单元43,用于当加密数据包到达存储器端后,对加密数据包进行解密,得到所述第一私钥密文、公钥和地址。
进一步的,所述第一加密单元30还用于根据第一盐值,采用AES算法对私钥明文加密,得到第一私钥密文。
进一步的,由图9可知,所述第一加密单元30包括:
第一拆分子单元31,用于将私钥明文采用预设规则分成N个明文分组;其中N为大于1的整数;
第一加盐子单元32,用于将第一个明文分组结合第一初始化向量后添加第一盐值,得到第一个密文分组;还用于将第i个明文分组结合第i-1个密文分组后添加第一盐值,得到第i个密文分组;其中i=2~N;
第一合并子单元33,用于将N个密文分组合并为第一私钥密文。
本实施例中各结构单元在执行上述方法时起的功能作用参见图1所示方法实施例中的说明,在此不再赘述。
参见图10,为本申请一种数字资产私钥存储装置构成图;
由图10可知,所述装置包括:
第一接收单元50,用于接收生成器端发送的包含第一私钥密文、公钥和地址的数据包;
第二加密单元60,用于将第一私钥密文加密,得到第二私钥密文;
存储单元70,用于将包含第二私钥密文、公钥和地址的数据包存储至数据库。
进一步的,由图11可知,所述存储单元70包括:
建表子单元71,用于在数据库中建立关系数据表;
关联子单元72,用于关联第二私钥密文以及与所述第二私钥密文对应的公钥和地址,生成关联数据;
写入子单元73,用于将关联数据写入所述关系数据表。
进一步的,所述第二加密单元60还用于根据第二盐值,采用AES算法对第一私钥密文加密,得到第二私钥密文;其中,所述第二盐值与得到第一私钥密文时加密采用的第一盐值不同。
进一步的,由图12可知,所述第二加密单元60包括:
第二拆分子单元61,用于将第一私钥密文采用预设规则分成N个密文分组;其中N为大于1的整数;
第二加盐子单元62,用于将第一个密文分组结合第二初始化向量后添加第二盐值,得到第一个二层密文分组;还用于将第i个密文分组结合第i-1个二层密文分组后添加第二盐值,得到第i个二层密文分组;其中i=2~N;
第二合并子单元63,用于将N个二层密文分组合并为第二私钥密文。
本实施例中各结构单元在执行上述方法时起的功能作用参见图1所示方法实施例中的说明,在此不再赘述。
参见图13,为本申请一种数字资产私钥提取装置构成图;
由图13可知,所述装置包括:
请求获取单元80,用于获取交易端的交易请求;所述交易请求包含地址;
查询单元90,用于根据交易请求中的地址,在数据库中查询与所述地址对应的第二私钥密文;
第一解密单元100,用于将第二私钥密文解密,得到第一私钥密文;
第二发送单元110,用于将包含第一私钥密文、公钥和地址的数据包发送至交易端。
本实施例中各结构单元在执行上述方法时起的功能作用参见图6所示方法实施例中的说明,在此不再赘述。
参见图14,为本申请一种数字资产私钥提取装置构成图;
由图14可知,所述装置包括:
请求生成单元120,用于获取用户输入的交易信息,根据交易信息生成交易请求;所述交易请求包含地址;
第三发送单元130,用于发送交易请求至存储器端;
第二接收单元140,用于接收存储器端发送的第一私钥密文、公钥和地址的数据包;
第二解密单元150,用于将第一私钥密文采用生成器端所采用加密算法相对应的解密算法解密,得到私钥明文。
本实施例中各结构单元在执行上述方法时起的功能作用参见图6所示方法实施例中的说明,在此不再赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (15)

1.一种数字资产私钥存储方法,应用于生成器端,其特征在于,所述方法包括:
生成私钥明文;
根据所述私钥明文计算对应的公钥和地址;
根据第一盐值,采用AES算法对所述私钥明文加密,得到第一私钥密文;
将包含第一私钥密文、公钥和地址的数据包发送至存储器端;
其中,根据第一盐值,采用AES算法对所述私钥明文加密,得到第一私钥密文包括:
将私钥明文采用预设规则分成N个明文分组;其中N为大于1的整数;
将第一个明文分组结合第一初始化向量后添加第一盐值,得到第一个密文分组;
将第i个明文分组结合第i-1个密文分组后添加第一盐值,得到第i个密文分组;其中i=2~N;
将N个密文分组合并为第一私钥密文。
2.根据权利要求1所述的一种数字资产私钥存储方法,其特征在于,所述将包含第一私钥密文、公钥和地址的数据包发送至存储器端的步骤包括:
对所述第一私钥密文、公钥和地址进行加密,得到加密数据包;
采用第一传输协议发送加密数据包;
当加密数据包到达存储器端后,对加密数据包进行解密,得到所述第一私钥密文、公钥和地址。
3.根据权利要求1所述的一种数字资产私钥存储方法,其特征在于,所述私钥明文采用椭圆曲线数字签名算法随机生成。
4.一种数字资产私钥存储方法,应用于存储器端,其特征在于,所述方法包括:
接收生成器端发送的包含第一私钥密文、公钥和地址的数据包;
根据第二盐值,采用AES算法对所述第一私钥密文加密,得到第二私钥密文;其中,所述第二盐值与权利要求1所述方法中得到第一私钥密文时加密采用的第一盐值不同;
将包含第二私钥密文、公钥和地址的数据包存储至数据库。
5.根据权利要求4所述的一种数字资产私钥存储方法,其特征在于,所述将包含第二私钥密文、公钥和地址的数据包存储至数据库的步骤包括:
在数据库中建立关系数据表;
关联第二私钥密文以及与所述第二私钥密文对应的公钥和地址,生成关联数据;
将关联数据写入所述关系数据表。
6.根据权利要求5所述的一种数字资产私钥存储方法,其特征在于,所述根据第二盐值,采用AES算法对第一私钥密文加密的步骤包括:
将第一私钥密文采用预设规则分成N个密文分组;其中N为大于1的整数;
将第一个密文分组结合第二初始化向量后添加第二盐值,得到第一个二层密文分组;
将第i个密文分组结合第i-1个二层密文分组后添加第二盐值,得到第i个二层密文分组;其中i=2~N;
将N个二层密文分组合并为第二私钥密文。
7.一种数字资产私钥提取方法,应用于存储器端,其特征在于,所述方法包括:
获取交易端的交易请求;所述交易请求包含地址;
根据交易请求中的地址,在数据库中查询与所述地址对应的第二私钥密文;
将第二私钥密文解密,得到第一私钥密文;
将包含第一私钥密文、公钥和地址的数据包发送至交易端。
8.一种数字资产私钥提取方法,应用于交易端,其特征在于,所述方法包括:
获取用户输入的交易信息,根据交易信息生成交易请求;所述交易请求包含地址;
发送交易请求至存储器端;
接收存储器端发送的第一私钥密文、公钥和地址的数据包;
将第一私钥密文采用生成器端所采用加密算法相对应的解密算法解密,得到私钥明文。
9.一种数字资产私钥存储装置,其特征在于,所述装置包括:
私钥生成单元,用于生成私钥明文;
计算单元,用于根据所述私钥明文计算对应的公钥和地址;
第一加密单元,用于根据第一盐值,采用AES算法对所述私钥明文加密,得到第一私钥密文;
第一发送单元,将包含第一私钥密文、公钥和地址的数据包发送至存储器端;
其中,所述第一加密单元包括:
第一拆分子单元,用于将私钥明文采用预设规则分成N个明文分组;其中N为大于1的整数;
第一加盐子单元,用于将第一个明文分组结合第一初始化向量后添加第一盐值,得到第一个密文分组;还用于将第i个明文分组结合第i-1个密文分组后添加第一盐值,得到第i个密文分组;其中i=2~N;
第一合并子单元,用于将N个密文分组合并为第一私钥密文。
10.根据权利要求9所述的一种数字资产私钥存储装置,其特征在于,所述第一发送单元包括:
加密子单元,用于对所述第一私钥密文、公钥和地址进行加密,得到加密数据包;
发送子单元,用于采用第一传输协议发送加密数据包;
解密子单元,用于当加密数据包到达存储器端后,对加密数据包进行解密,得到所述第一私钥密文、公钥和地址。
11.一种数字资产私钥存储装置,其特征在于,所述装置包括:
第一接收单元,用于接收生成器端发送的包含第一私钥密文、公钥和地址的数据包;
第二加密单元,用于根据第二盐值,采用AES算法对所述第一私钥密文加密,得到第二私钥密文;其中,所述第二盐值与权利要求9所述装置中第一加密单元得到第一私钥密文时加密采用的第一盐值不同;
存储单元,用于将包含第二私钥密文、公钥和地址的数据包存储至数据库。
12.根据权利要求11所述的一种数字资产私钥存储装置,其特征在于,所述存储单元包括:
建表子单元,用于在数据库中建立关系数据表;
关联子单元,用于关联第二私钥密文以及与所述第二私钥密文对应的公钥和地址,生成关联数据;
写入子单元,用于将关联数据写入所述关系数据表。
13.根据权利要求11所述的一种数字资产私钥存储装置,其特征在于,所述第二加密单元包括:
第二拆分子单元,用于将第一私钥密文采用预设规则分成N个密文分组;其中N为大于1的整数;
第二加盐子单元,用于将第一个密文分组结合第二初始化向量后添加第二盐值,得到第一个二层密文分组;还用于将第i个密文分组结合第i-1个二层密文分组后添加第二盐值,得到第i个二层密文分组;其中i=2~N;
第二合并子单元,用于将N个二层密文分组合并为第二私钥密文。
14.一种数字资产私钥提取装置,其特征在于,所述装置包括:
请求获取单元,用于获取交易端的交易请求;所述交易请求包含地址;
查询单元,用于根据交易请求中的地址,在数据库中查询与所述地址对应的第二私钥密文;
第一解密单元,用于将第二私钥密文解密,得到第一私钥密文;
第二发送单元,用于将包含第一私钥密文、公钥和地址的数据包发送至交易端。
15.一种数字资产私钥提取装置,其特征在于,所述装置包括:
请求生成单元,用于获取用户输入的交易信息,根据交易信息生成交易请求;所述交易请求包含地址;
第三发送单元,用于发送交易请求至存储器端;
第二接收单元,用于接收存储器端发送的第一私钥密文、公钥和地址的数据包;
第二解密单元,用于将第一私钥密文采用生成器端所采用加密算法相对应的解密算法解密,得到私钥明文。
CN201911402481.8A 2019-12-31 2019-12-31 一种数字资产私钥存储提取方法及装置 Active CN111192050B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911402481.8A CN111192050B (zh) 2019-12-31 2019-12-31 一种数字资产私钥存储提取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911402481.8A CN111192050B (zh) 2019-12-31 2019-12-31 一种数字资产私钥存储提取方法及装置

Publications (2)

Publication Number Publication Date
CN111192050A CN111192050A (zh) 2020-05-22
CN111192050B true CN111192050B (zh) 2023-08-11

Family

ID=70709671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911402481.8A Active CN111192050B (zh) 2019-12-31 2019-12-31 一种数字资产私钥存储提取方法及装置

Country Status (1)

Country Link
CN (1) CN111192050B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111786997B (zh) * 2020-06-30 2023-01-06 贵州光奕科科技有限公司 远程开标型招投标用的加解密加密系统
CN111884810A (zh) * 2020-07-20 2020-11-03 上海信联信息发展股份有限公司 交易签名方法、装置、移动终端和系统
CN114221762A (zh) * 2021-12-13 2022-03-22 深圳壹账通智能科技有限公司 一种私钥存储方法、读取方法、管理装置、设备及介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105141568A (zh) * 2014-05-28 2015-12-09 腾讯科技(深圳)有限公司 安全通信通道建立方法及系统、客户端和服务器
CN107070948A (zh) * 2017-05-23 2017-08-18 广东工业大学 云存储中基于混合加密算法的签名与验证方法
CN107666383A (zh) * 2016-07-29 2018-02-06 阿里巴巴集团控股有限公司 基于https协议的报文处理方法以及装置
CN108650302A (zh) * 2018-04-17 2018-10-12 北京远大宏略科技股份有限公司 一种基于区块链的云箱安全技术
CN109033855A (zh) * 2018-07-18 2018-12-18 腾讯科技(深圳)有限公司 一种基于区块链的数据传输方法、装置及存储介质
CN109660534A (zh) * 2018-12-15 2019-04-19 平安科技(深圳)有限公司 基于多商户的安全认证方法、装置、电子设备及存储介质
CN109802967A (zh) * 2019-01-25 2019-05-24 上海创景信息科技有限公司 区块链信息追踪方法和系统
WO2019110574A1 (en) * 2017-12-04 2019-06-13 Wellness Technology and Media Group Ltd Methods of secure communication
CN110046906A (zh) * 2019-04-18 2019-07-23 郑建建 一种mpos机与服务器的双向认证交易方法及系统
CN110289968A (zh) * 2019-06-27 2019-09-27 矩阵元技术(深圳)有限公司 私钥恢复、协同地址的创建、签名方法及装置、存储介质
WO2019218919A1 (zh) * 2018-05-15 2019-11-21 华为技术有限公司 区块链场景下的私钥管理方法、装置及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10805070B2 (en) * 2016-10-19 2020-10-13 Index Systems, Llc Systems and methods for multi-region encryption/decryption redundancy
CN111585749B (zh) * 2016-10-26 2023-04-07 创新先进技术有限公司 数据传输方法、装置、系统及设备
WO2019204426A1 (en) * 2018-04-17 2019-10-24 Coinbase, Inc. Offline storage system and method of use

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105141568A (zh) * 2014-05-28 2015-12-09 腾讯科技(深圳)有限公司 安全通信通道建立方法及系统、客户端和服务器
CN107666383A (zh) * 2016-07-29 2018-02-06 阿里巴巴集团控股有限公司 基于https协议的报文处理方法以及装置
CN107070948A (zh) * 2017-05-23 2017-08-18 广东工业大学 云存储中基于混合加密算法的签名与验证方法
WO2019110574A1 (en) * 2017-12-04 2019-06-13 Wellness Technology and Media Group Ltd Methods of secure communication
CN108650302A (zh) * 2018-04-17 2018-10-12 北京远大宏略科技股份有限公司 一种基于区块链的云箱安全技术
WO2019218919A1 (zh) * 2018-05-15 2019-11-21 华为技术有限公司 区块链场景下的私钥管理方法、装置及系统
CN109033855A (zh) * 2018-07-18 2018-12-18 腾讯科技(深圳)有限公司 一种基于区块链的数据传输方法、装置及存储介质
CN109660534A (zh) * 2018-12-15 2019-04-19 平安科技(深圳)有限公司 基于多商户的安全认证方法、装置、电子设备及存储介质
CN109802967A (zh) * 2019-01-25 2019-05-24 上海创景信息科技有限公司 区块链信息追踪方法和系统
CN110046906A (zh) * 2019-04-18 2019-07-23 郑建建 一种mpos机与服务器的双向认证交易方法及系统
CN110289968A (zh) * 2019-06-27 2019-09-27 矩阵元技术(深圳)有限公司 私钥恢复、协同地址的创建、签名方法及装置、存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种有效的Python字节码保护方法;陈悟;顾乃杰;杜云开;;电子技术(06);全文 *

Also Published As

Publication number Publication date
CN111192050A (zh) 2020-05-22

Similar Documents

Publication Publication Date Title
US11621833B2 (en) Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system
US9379891B2 (en) Method and system for ID-based encryption and decryption
JP2926699B2 (ja) 通信パートナの認証方法及びシステム
US8396218B2 (en) Cryptographic module distribution system, apparatus, and program
JP5544355B2 (ja) 共有の秘密の確認の方法およびシステム
CN111192050B (zh) 一种数字资产私钥存储提取方法及装置
CN113132099B (zh) 一种基于硬件密码设备的传输文件加解密方法及装置
KR20210124368A (ko) 에폭 키 교환을 이용한 종단간 이중 래칫 암호화
TW201921887A (zh) 用於高安全性高速資料加密及傳輸的電腦實施系統與方法
TW202232913A (zh) 共享金鑰產生技術
CN114417073B (zh) 一种加密图的邻居节点查询方法及装置、电子设备
US10050943B2 (en) Widely distributed parameterization
CN106257859A (zh) 一种密码使用方法
CN114050897B (zh) 一种基于sm9的异步密钥协商方法及装置
CN116318654A (zh) 融合量子密钥分发的sm2算法协同签名系统、方法及设备
CN110572788B (zh) 基于非对称密钥池和隐式证书的无线传感器通信方法和系统
Xue-Zhou Network data encryption strategy for cloud computing
KR100401063B1 (ko) 패스워드 기반 키교환 방법 및 그 시스템
JP2833747B2 (ja) 鍵生成装置
US12010216B2 (en) Computer-implemented system and method for highly secure, high speed encryption and transmission of data
JP4104315B2 (ja) 鍵管理システム、鍵管理装置、情報暗号化装置、情報復号化装置、およびプログラムを記憶した記憶媒体
KR101851719B1 (ko) 암호화키 분배 시스템 및 방법
CN115378666A (zh) 支持外包密文数据相等性测试的公钥加密方法及系统
JPH09326789A (ja) 携帯無線端末間通信における相手認証方法及びシステム
CN115378588A (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Floor 1, No.81 Xinle Road, high tech Zone, Chengdu, Sichuan 610041

Applicant after: Chengdu Cooper Innovation Technology Co.,Ltd.

Address before: Floor 1, No.81 Xinle Road, high tech Zone, Chengdu, Sichuan 610041

Applicant before: Chengdu Cooper blockchain Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230912

Address after: No. 1, Jinyun East Third Lane, High tech Zone, Chengdu, Sichuan, 610096

Patentee after: Sichuan Cooper Technology Group Co.,Ltd.

Address before: Floor 1, No.81 Xinle Road, high tech Zone, Chengdu, Sichuan 610041

Patentee before: Chengdu Cooper Innovation Technology Co.,Ltd.