CN111600701B - 一种基于区块链的私钥存储方法、装置及存储介质 - Google Patents
一种基于区块链的私钥存储方法、装置及存储介质 Download PDFInfo
- Publication number
- CN111600701B CN111600701B CN202010353724.XA CN202010353724A CN111600701B CN 111600701 B CN111600701 B CN 111600701B CN 202010353724 A CN202010353724 A CN 202010353724A CN 111600701 B CN111600701 B CN 111600701B
- Authority
- CN
- China
- Prior art keywords
- private key
- intelligent contract
- client
- verification code
- stored
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3215—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a plurality of channels
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
本发明公开了一种基于区块链的私钥存储方法,步骤包括:获取已验证客户端发送的私钥以及对应所述私钥的保存密码;利用已验证客户端预留的联系号码和所述保存密码作为AES加密私钥信息,对所述私钥进行加密;生成智能合约,并将所述经过加密的私钥保存至所述智能合约。本发明提供了一种基于区块链的私钥存储方法、装置及存储介质,将私钥保存到智能合约,具备较强保密性且私钥保存数据不会丢失。
Description
技术领域
本发明涉及区块链技术领域,尤其是涉及一种基于区块链的私钥存储方法、装置及存储介质。
背景技术
区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。
目前,区块链技术越来越受到社会的关注,国家也鼓励大力发展区块链技术,其中区块链账户安全最重要的是保护账户的私钥,如果私钥丢失了,那么就不能登录账户,而现有的电子备份私钥的存储方法容易被破解,用户保存的私钥容易被盗取或私钥数据丢失造成用户损失,而且由于私钥的字符很多且没有排列规律,很难用人类记忆保存。
发明内容
针对上述技术问题,本发明提供了一种基于区块链的私钥存储方法、装置及存储介质,将私钥保存到智能合约,具备较强保密性且私钥保存数据不会丢失。
所述技术方案如下:
第一方面,本发明实施例提供了一种基于区块链的私钥存储方法,步骤包括:
获取已验证客户端发送的私钥以及对应所述私钥的保存密码;
利用已验证客户端预留的联系号码和所述保存密码作为AES加密私钥信息,对所述私钥进行加密;
生成智能合约,并将所述经过加密的私钥保存至所述智能合约。
在本发明第一方面的第一种可能的实现方式中,所述将所述经过加密的私钥保存至所述智能合约,具体为:
以所述联系号码和所述保存密码作为关键字、以经过加密的私钥作为存储数据,保存到所述智能合约的数据组。
在本发明第一方面的第二种可能的实现方式中,当用户需要取用私钥时,步骤如下:
接收到客户端输入的联系号码后,调用对应所述联系号码的智能合约;
接收客户端输入的保存密码;若所述保存密码和客户端输入的联系号码,与所述智能合约存储的保存密码和联系号码一致,则提取所述智能合约存储的经过加密的私钥;
利用所述智能合约存储的保存密码和联系号码作为AES加密私钥信息,对所述经过加密的私钥进行解密,得到私钥。
在本发明第一方面的第三种可能的实现方式中,用户保存私钥或取用私钥时需要验证身份,具体步骤为:
获取客户端输入的手机号码;
随机生成短信验证码并保存至所述智能合约;
对应所述手机号码发送所述短信验证码;
接收客户端反馈的短信验证码,若客户端反馈的短信验证码与所述智能合约保存的验证码一致,则成功验证。
在本发明第一方面的第四种可能的实现方式中,所述随机生成短信验证码并保存至所述智能合约,具体为:
以客户端输入手机号码为key值,value值包括所述短信验证码、发送时间、有效时间、验证时间、验证错误次数、下次发送时间,并且将所述key值、value值存储到所述智能合约的短信验证码数据组中。
第二方面,本发明实施例提供了一种基于区块链的私钥存储装置,包括:
接收模块,用于获取已验证客户端发送的私钥以及对应所述私钥的保存密码;
加密模块,用于利用已验证客户端预留的联系号码和所述保存密码作为AES加密私钥信息,对所述私钥进行加密;
存储模块,用于生成智能合约,并将所述经过加密的私钥保存至所述智能合约。
在本发明第二方面的第一种可能的实现方式中,所述的基于区块链的私钥存储装置,还包括:
查询模块,用于接收到客户端输入的联系号码后,调用对应所述联系号码的智能合约;
提取模块,用于接收客户端输入的保存密码;若所述保存密码和客户端输入的联系号码,与所述智能合约存储的保存密码和联系号码一致,则提取所述智能合约存储的经过加密的私钥;
解密模块,用于利用所述智能合约存储的保存密码和联系号码作为AES加密私钥信息,对所述经过加密的私钥进行解密,得到私钥。
在本发明第二方面的第二种可能的实现方式中,所述的基于区块链的私钥存储装置,还包括:
输入模块,用于获取客户端输入的手机号码;
验证码生成模块,用于随机生成短信验证码并保存至所述智能合约;
发送模块,用于对应所述手机号码发送所述短信验证码;
验证模块,用于接收客户端反馈的短信验证码,若客户端反馈的短信验证码与所述智能合约保存的验证码一致,则成功验证。
第三方面,本发明实施例提供了一种基于区块链的私钥存储装置,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的基于区块链的私钥存储方法。
第四方面,本发明实施例提供了一种基于区块链的私钥存储方法的存储介质,所述基于区块链的私钥存储方法的存储介质用于存储一个或多个计算机程序,所述一个或多个计算机程序包括程序代码,当所述计算机程序在计算机上运行时,所述程序代码用于执行上述基于区块链的私钥存储方法。
相比于现有技术,本发明实施例具有如下有益效果:
本发明提供一种基于区块链的私钥存储方法、装置及存储介质,根据用户设置的保存密码和预留联系号码,对将要保存到智能合约的私钥进行加密,使得非用户无法获知私钥内容,即使服务系统管理员也无法获取到私钥及密码信息,有效地提高保密性;同时,将经过加密的私钥保存至智能合约,利用区块链技术的分布式存储数据的特性,避免私钥数据集中存储在一个系统服务器,从而降低因系统服务器故障造成私钥数据丢失的风险,而且私钥使用智能合约的方式存在区块链上,合约的数据的访问必须符合合约要求才可以访问,智能合约只要在区块链中创建成功就难以被篡改,数据的保护能力极强。
附图说明
图1是本发明实施例中的一种基于区块链的私钥存储方法的步骤流程图;
图2是本发明实施例中的一种基于区块链的私钥存储方法的使用智能合约保存私钥数据的示意图;
图3是本发明实施例中的一种基于区块链的私钥存储方法的使用智能合约保存短信验证码数据的示意图;
图4是本发明实施例中的一种基于区块链的私钥存储装置的模块架构图;
图5是本发明实施例中的一种基于区块链的私钥存储装置的系统架构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,本发明提供一种示例性实施例,一种基于区块链的私钥存储方法,步骤包括:
S101、获取已验证客户端发送的私钥以及对应所述私钥的保存密码;
S102、利用已验证客户端预留的联系号码和所述保存密码作为AES加密私钥信息,对所述私钥进行加密;
S103、生成智能合约,并将所述经过加密的私钥保存至所述智能合约。
请参见图2,所述将所述经过加密的私钥保存至所述智能合约,具体为:
以所述联系号码和所述保存密码作为关键字、以经过加密的私钥作为存储数据,保存到所述智能合约的数据组。具体地,所述智能合约包含参数:手机号码,短信验证码;所述数据组的结构为:key=md5(手机号码+密码);value=AES(MD5(密码+手机号码),私钥)
在具体的实施例中,用户在使用所述基于区块链的私钥存储方法将私钥存储到智能合约时,需要执行以下流程:
A、判断来源账号是否系统账号,如果不是系统账号,则返回失败,否则下一步;
B、判断手机号码是否合法,如果手机号码不合法,则返回失败,否则下一步;
C、判断手机号码对应的短信验证码是否合法,如果不合法,则返回失败,否则下一步;
D、判断私钥信息是否存在key=md5(手机号码+密码),如果存在,则返回失败,否则下一步;
E、将对应key=md5(手机号码+密码),value=AES(MD5(密码+手机号码),私钥)保存到私钥信息数据结构中;
F、返回成功。
为了进一步提高安全性,所述基于区块链的私钥存储方法,还包括验证客户端的方法:
获取客户端输入的手机号码;
随机生成短信验证码并保存至所述智能合约;
对应所述手机号码发送所述短信验证码;
接收客户端反馈的短信验证码,若客户端反馈的短信验证码与所述智能合约保存的验证码一致,则成功验证。
请参见图3,所述随机生成短信验证码并保存至所述智能合约,具体为:
以客户端输入手机号码为key值,value值包括所述短信验证码、发送时间、有效时间、验证时间、验证错误次数、下次发送时间,并且将所述key值、value值存储到所述智能合约的短信验证码数据组中。
在具体的实施例中,用户在使用所述基于区块链的私钥存储方法的短信验证方法时,需要执行以下流程:
A、判断来源账号是否系统账号,如果不是系统账号,则返回失败,否则下一步;
B、判断手机号码是否合法,如果手机号码不合法,则返回失败,否则下一步;
C、判断手机号码是否已经发送过,如果发送过,则检查下次发送时间是否到达,如果未到达,则返回失败,否则下一步;
D、随机生成6位数字;
E、调用短信发送接口;
F、生成对应手机号码的json结构并保存到数据结构中(包括有效时间为1分钟,下次发送时间为10分钟后);
G、返回成功。
相应地,当用户需要取用私钥时,所述基于区块链的私钥存储方法的一种优选提取方式如下:
接收到客户端输入的联系号码后,调用对应所述联系号码的智能合约;
接收客户端输入的保存密码;若所述保存密码和客户端输入的联系号码,与所述智能合约存储的保存密码和联系号码一致,则提取所述智能合约存储的经过加密的私钥;
利用所述智能合约存储的保存密码和联系号码作为AES加密私钥信息,对所述经过加密的私钥进行解密,得到私钥。
为了进一步提高安全性,当用户需要取用私钥时,步骤如下:
获取客户端输入的手机号码;
随机生成短信验证码并保存至所述智能合约;
对应所述手机号码发送所述短信验证码;
接收客户端反馈的短信验证码,若客户端反馈的短信验证码与所述智能合约保存的验证码一致,则成功验证。
在具体的实施例中,用户在使用所述基于区块链的私钥存储方法获取保存在智能合约的私钥时,需要执行以下流程:
A、判断来源账号是否系统账号,如果不是系统账号,则返回失败,否则下一步;
B、判断手机号码是否合法,如果手机号码不合法,则返回失败,否则下一步;
C、判断手机号码对应的短信验证码是否合法,如果不合法,则返回失败,否则下一步;
D、判断私钥信息是否存在key=md5(手机号码+密码),如果不存在,则返回失败,否则下一步;
E、将对应key=md5(手机号码+密码)的值并返回。
本实施例使用了手机号码,短信验证码及密码方便提取私钥的方法,获取私钥会大大方便大众使用区块链的应用,降低用户的使用门槛。
本发明实施例提供了一种基于区块链的私钥存储装置,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的基于区块链的私钥存储方法。
请参见图4,本发明提供一种示例性实施例,一种基于区块链的私钥存储装置,包括:
接收模块201,用于获取已验证客户端发送的私钥以及对应所述私钥的保存密码;
加密模块202,用于利用已验证客户端预留的联系号码和所述保存密码作为AES加密私钥信息,对所述私钥进行加密;
存储模块203,用于生成智能合约,并将所述经过加密的私钥保存至所述智能合约。
所述存储模块,还用于:
以所述联系号码和所述保存密码作为关键字、以经过加密的私钥作为存储数据,保存到所述智能合约的数据组。具体地,所述智能合约包含参数:手机号码,短信验证码;所述数据组的结构为:key=md5(手机号码+密码);value=AES(MD5(密码+手机号码),私钥)
在具体的实施例中,所述存储模块执行以下流程:
A、判断来源账号是否系统账号,如果不是系统账号,则返回失败,否则下一步;
B、判断手机号码是否合法,如果手机号码不合法,则返回失败,否则下一步;
C、判断手机号码对应的短信验证码是否合法,如果不合法,则返回失败,否则下一步;
D、判断私钥信息是否存在key=md5(手机号码+密码),如果存在,则返回失败,否则下一步;
E、将对应key=md5(手机号码+密码),value=AES(MD5(密码+手机号码),私钥)保存到私钥信息数据结构中;
F、返回成功。
所述的基于区块链的私钥存储装置,还包括:
查询模块,用于接收到客户端输入的联系号码后,调用对应所述联系号码的智能合约;
提取模块,用于接收客户端输入的保存密码;若所述保存密码和客户端输入的联系号码,与所述智能合约存储的保存密码和联系号码一致,则提取所述智能合约存储的经过加密的私钥;
解密模块,用于利用所述智能合约存储的保存密码和联系号码作为AES加密私钥信息,对所述经过加密的私钥进行解密,得到私钥。
当用户需要取用私钥时,步骤如下:
获取客户端输入的手机号码;
随机生成短信验证码并保存至所述智能合约;
对应所述手机号码发送所述短信验证码;
接收客户端反馈的短信验证码,若客户端反馈的短信验证码与所述智能合约保存的验证码一致,则成功验证。
在具体的实施例中,所述提取模块,还需要执行以下流程:
A、判断来源账号是否系统账号,如果不是系统账号,则返回失败,否则下一步;
B、判断手机号码是否合法,如果手机号码不合法,则返回失败,否则下一步;
C、判断手机号码对应的短信验证码是否合法,如果不合法,则返回失败,否则下一步;
D、判断私钥信息是否存在key=md5(手机号码+密码),如果不存在,则返回失败,否则下一步;
E、将对应key=md5(手机号码+密码)的值并返回。
本实施例使用了手机号码,短信验证码及密码方便提取私钥的方法,获取私钥会大大方便大众使用区块链的应用,降低用户的使用门槛。
所述的基于区块链的私钥存储装置,还包括:
输入模块,用于获取客户端输入的手机号码;
验证码生成模块,用于随机生成短信验证码并保存至所述智能合约;
发送模块,用于对应所述手机号码发送所述短信验证码;
验证模块,用于接收客户端反馈的短信验证码,若客户端反馈的短信验证码与所述智能合约保存的验证码一致,则成功验证。
所述验证码生成模块,还用于:
以客户端输入手机号码为key值,value值包括所述短信验证码、发送时间、有效时间、验证时间、验证错误次数、下次发送时间,并且将所述key值、value值存储到所述智能合约的短信验证码数据组中。
在具体的实施例中,所述验证码生成模块需要执行以下流程:
A、判断来源账号是否系统账号,如果不是系统账号,则返回失败,否则下一步;
B、判断手机号码是否合法,如果手机号码不合法,则返回失败,否则下一步;
C、判断手机号码是否已经发送过,如果发送过,则检查下次发送时间是否到达,如果未到达,则返回失败,否则下一步;
D、随机生成6位数字;
E、调用短信发送接口;
F、生成对应手机号码的json结构并保存到数据结构中(包括有效时间为1分钟,下次发送时间为10分钟后);
G、返回成功。
请参见图5,本发明技术方案是在区块链技术的基础上开发的,本发明技术方案中使用的客户端可以是app、微信、web,,用户可以通过手机号码,短信验证码及设置的密码的方式将私钥提交给服务系统,服务系统再提交到区块链的私钥存放智能合约,实现私钥的保存。当用户需要获取的时候,需要通过手机号码,短信验证码及设置的密码提交给区块链进行验证,在私钥保存智能合约中验证手机号码,验证码及密码都正确后,才返回之前存放的私钥。
智能合约每次的私钥保存和私钥获取操作都产生区块链交易,都需要消耗gas资源,所以必须要求有运营服务系统来做支撑,例如可以通过收取用户的服务费来做服务系统的支撑,本系统暂时不考虑用户支付功能的实现,只单纯做私钥的保存及获取的功能设计,本系统会申请一个专用的区块链账号,所有的区块链触发都只允许系统区块链账号才允许触发。
本发明提供一种示例性实施例,一种基于区块链的私钥存储方法的存储介质,所述基于区块链的私钥存储方法的存储介质用于存储一个或多个计算机程序,所述一个或多个计算机程序包括程序代码,当所述计算机程序在计算机上运行时,所述程序代码用于执行上述基于区块链的私钥存储方法。
本申请实施例的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质的更具体的示例至少(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式只读存储器(CDROM)。另外,计算机可读存储介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
本发明提供一种基于区块链的私钥存储方法、装置及存储介质,根据用户设置的保存密码和预留联系号码,对将要保存到智能合约的私钥进行加密,使得非用户无法获知私钥内容,即使服务系统管理员也无法获取到私钥及密码信息,有效地提高保密性;同时,将经过加密的私钥保存至智能合约,利用区块链技术的分布式存储数据的特性,避免私钥数据集中存储在一个系统服务器,从而降低因系统服务器故障造成私钥数据丢失的风险,而且私钥使用智能合约的方式存在区块链上,合约的数据的访问必须符合合约要求才可以访问,智能合约只要在区块链中创建成功就难以被篡改,数据的保护能力极强。而且,由于本发明只需手机号码,短信验证码及密码获取私钥,方便获取私钥。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (7)
1.一种基于区块链的私钥存储方法,其特征在于,步骤包括:
获取已验证客户端发送的私钥以及对应所述私钥的保存密码;
利用已验证客户端预留的联系号码和所述保存密码作为AES加密私钥信息,对所述私钥进行加密;
生成智能合约,并将所述经过加密的私钥保存至所述智能合约,具体为:
以所述联系号码和所述保存密码作为关键字、以经过加密的私钥作为存储数据,保存到所述智能合约的数据组;
当用户需要取用私钥时,步骤如下:
接收到客户端输入的联系号码后,调用对应所述联系号码的智能合约;
接收客户端输入的保存密码;若所述保存密码和客户端输入的联系号码,与所述智能合约存储的保存密码和联系号码一致,则提取所述智能合约存储的经过加密的私钥;
利用所述智能合约存储的保存密码和联系号码作为AES加密私钥信息,对所述经过加密的私钥进行解密,得到私钥。
2.如权利要求1所述的基于区块链的私钥存储方法,其特征在于,用户保存私钥或取用私钥时需要验证身份,具体步骤为:
获取客户端输入的手机号码;
随机生成短信验证码并保存至所述智能合约;
对应所述手机号码发送所述短信验证码;
接收客户端反馈的短信验证码,若客户端反馈的短信验证码与所述智能合约保存的验证码一致,则成功验证。
3.如权利要求2所述的基于区块链的私钥存储方法,其特征在于,所述随机生成短信验证码并保存至所述智能合约,具体为:
以客户端输入手机号码为key值,value值包括所述短信验证码、发送时间、有效时间、验证时间、验证错误次数、下次发送时间,并且将所述key值、value值存储到所述智能合约的短信验证码数据组中。
4.一种基于区块链的私钥存储装置,其特征在于,包括:
接收模块,用于获取已验证客户端发送的私钥以及对应所述私钥的保存密码;
加密模块,用于利用已验证客户端预留的联系号码和所述保存密码作为AES加密私钥信息,对所述私钥进行加密;
存储模块,用于生成智能合约,并将所述经过加密的私钥保存至所述智能合约,具体为:
以所述联系号码和所述保存密码作为关键字、以经过加密的私钥作为存储数据,保存到所述智能合约的数据组;
查询模块,用于接收到客户端输入的联系号码后,调用对应所述联系号码的智能合约;
提取模块,用于接收客户端输入的保存密码;若所述保存密码和客户端输入的联系号码,与所述智能合约存储的保存密码和联系号码一致,则提取所述智能合约存储的经过加密的私钥;
解密模块,用于利用所述智能合约存储的保存密码和联系号码作为AES加密私钥信息,对所述经过加密的私钥进行解密,得到私钥。
5.如权利要求4所述的基于区块链的私钥存储装置,其特征在于,还包括:
输入模块,用于获取客户端输入的手机号码;
验证码生成模块,用于随机生成短信验证码并保存至所述智能合约;
发送模块,用于对应所述手机号码发送所述短信验证码;
验证模块,用于接收客户端反馈的短信验证码,若客户端反馈的短信验证码与所述智能合约保存的验证码一致,则成功验证。
6.一种基于区块链的私钥存储装置,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述的基于区块链的私钥存储方法。
7.一种基于区块链的私钥存储方法的存储介质,其特征在于,所述基于区块链的私钥存储方法的存储介质用于存储一个或多个计算机程序,所述一个或多个计算机程序包括程序代码,当所述计算机程序在计算机上运行时,所述程序代码用于执行上述权利要求1至3任一项所述的基于区块链的私钥存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010353724.XA CN111600701B (zh) | 2020-04-28 | 2020-04-28 | 一种基于区块链的私钥存储方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010353724.XA CN111600701B (zh) | 2020-04-28 | 2020-04-28 | 一种基于区块链的私钥存储方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111600701A CN111600701A (zh) | 2020-08-28 |
CN111600701B true CN111600701B (zh) | 2023-06-27 |
Family
ID=72189488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010353724.XA Active CN111600701B (zh) | 2020-04-28 | 2020-04-28 | 一种基于区块链的私钥存储方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111600701B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486390A (zh) * | 2021-04-16 | 2021-10-08 | 北京思特奇信息技术股份有限公司 | 一种基于区块链的优良号码管理方法和系统 |
CN115277074B (zh) * | 2022-06-21 | 2024-03-19 | 网思科技股份有限公司 | 一种加密和解密方法、装置、设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486087A (zh) * | 2014-12-23 | 2015-04-01 | 中山大学 | 一种基于远程硬件安全模块的数字签名方法 |
CN109005033A (zh) * | 2018-09-07 | 2018-12-14 | 全链通有限公司 | 基于手机号码实现区块链实名制注册的方法 |
WO2019110574A1 (en) * | 2017-12-04 | 2019-06-13 | Wellness Technology and Media Group Ltd | Methods of secure communication |
CN110245117A (zh) * | 2019-06-13 | 2019-09-17 | 南开大学 | 一种基于区块链的云上数据可信删除方法与系统 |
CN110300112A (zh) * | 2019-07-02 | 2019-10-01 | 石家庄铁道大学 | 区块链密钥分层管理方法 |
-
2020
- 2020-04-28 CN CN202010353724.XA patent/CN111600701B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486087A (zh) * | 2014-12-23 | 2015-04-01 | 中山大学 | 一种基于远程硬件安全模块的数字签名方法 |
WO2019110574A1 (en) * | 2017-12-04 | 2019-06-13 | Wellness Technology and Media Group Ltd | Methods of secure communication |
CN109005033A (zh) * | 2018-09-07 | 2018-12-14 | 全链通有限公司 | 基于手机号码实现区块链实名制注册的方法 |
CN110245117A (zh) * | 2019-06-13 | 2019-09-17 | 南开大学 | 一种基于区块链的云上数据可信删除方法与系统 |
CN110300112A (zh) * | 2019-07-02 | 2019-10-01 | 石家庄铁道大学 | 区块链密钥分层管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111600701A (zh) | 2020-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110493202B (zh) | 登录令牌的生成及验证方法、装置和服务器 | |
CN106330850B (zh) | 一种基于生物特征的安全校验方法及客户端、服务器 | |
CN108989346B (zh) | 基于账号隐匿的第三方有效身份托管敏捷认证访问方法 | |
CN102624699B (zh) | 一种保护数据的方法和系统 | |
CN110175466B (zh) | 开放平台的安全管理方法、装置、计算机设备及存储介质 | |
CN106453422B (zh) | 一种基于移动终端动态认证方法及系统 | |
CN108496323B (zh) | 一种证书导入方法及终端 | |
CN112491843A (zh) | 一种数据库多重认证方法、系统、终端及存储介质 | |
CN111241555A (zh) | 模拟用户登录的访问方法、装置、计算机设备和存储介质 | |
CN106790243B (zh) | 一种安全u盘的密码重置方法 | |
CN104751105A (zh) | 一种指纹数据验证方法、装置及相关设备和系统 | |
CN111600701B (zh) | 一种基于区块链的私钥存储方法、装置及存储介质 | |
CN110740140A (zh) | 一种基于云平台的网络信息安全监管系统 | |
CN110995661B (zh) | 一种网证平台 | |
CN111585995A (zh) | 安全风控信息传输、处理方法、装置、计算机设备及存储介质 | |
CN103532979A (zh) | CGI web界面下的多会话验证码的产生及验证方法 | |
CN109088872A (zh) | 带使用期限的云平台的使用方法、装置、电子设备及介质 | |
CN109889342B (zh) | 接口测试鉴权方法、装置、电子设备及存储介质 | |
CN109474431A (zh) | 客户端认证方法及计算机可读存储介质 | |
CN116881936A (zh) | 可信计算方法及相关设备 | |
CN103559430A (zh) | 基于安卓系统的应用账号管理方法和装置 | |
CN115225350B (zh) | 基于国密证书的政务云加密登录验证方法及存储介质 | |
CN114584324B (zh) | 一种基于区块链的身份授权方法和系统 | |
CN104009963B (zh) | 远程密码的安全认证机制 | |
CN116112234A (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20211201 Address after: 510000 annex building, building 26, South China University of technology, Tianhe District, Guangzhou City, Guangdong Province Applicant after: CELL COMMUNICATIONS TECHNOLOGY Co.,Ltd. Address before: 510640 Room 201, No. 1, Kehua street, Tianhe District, Guangzhou, Guangdong Applicant before: GUANGZHOU FALACLOUD INFORMATION TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |