CN111600701B - 一种基于区块链的私钥存储方法、装置及存储介质 - Google Patents

一种基于区块链的私钥存储方法、装置及存储介质 Download PDF

Info

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
Application number
CN202010353724.XA
Other languages
English (en)
Other versions
CN111600701A (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.)
Cell Communications Technology Co ltd
Original Assignee
Cell Communications 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 Cell Communications Technology Co ltd filed Critical Cell Communications Technology Co ltd
Priority to CN202010353724.XA priority Critical patent/CN111600701B/zh
Publication of CN111600701A publication Critical patent/CN111600701A/zh
Application granted granted Critical
Publication of CN111600701B publication Critical patent/CN111600701B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3215Cryptographic 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
    • 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing 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任一项所述的基于区块链的私钥存储方法。
CN202010353724.XA 2020-04-28 2020-04-28 一种基于区块链的私钥存储方法、装置及存储介质 Active CN111600701B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 石家庄铁道大学 区块链密钥分层管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
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