[发明专利]一种私钥存储和读取方法、装置及硬件设备有效
申请号: | 201810825132.6 | 申请日: | 2018-07-25 |
公开(公告)号: | CN108833117B | 公开(公告)日: | 2020-11-10 |
发明(设计)人: | 郭磊;黄何 | 申请(专利权)人: | 海南新软软件有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/08 |
代理公司: | 北京弘权知识产权代理事务所(普通合伙) 11363 | 代理人: | 郭放;许伟群 |
地址: | 571924 海南省海口市老城高新*** | 国省代码: | 海南;46 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 存储 读取 方法 装置 硬件 设备 | ||
本申请实施例公开一种私钥存储和读取方法、装置及硬件设备。本申请的私钥存储和读取方法、装置及硬件设备,根据硬件设备的通用唯一识别码和用户密码等对私钥等敏感数据进行混淆,最终得到矩阵数据进行存储和读取,本方案只在数据存储方面进行混淆,计算量小,本身并不对数据进行加密,因而用户可以在本方案基础上集成任意的加密算法,以提升对私钥的保护强度,并且本方案不受数据结构的限制,可应用于各种币种的私钥存储,通用性强。
技术领域
本申请涉及信息安全技术领域,尤其涉及一种私钥存储和读取方法、装置及硬件设备。
背景技术
比特币的概念最初由中本聪在2009年提出,是一种基于P2P网络的数字货币。区块链是与比特币相关的一个重要概念。狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
账户和交易是区块链技术中的两大核心概念。账户是用户在区块链网络上的唯一性标识,区块链账户由一个公钥-私钥对代表。公钥通常会作为交易签名数据的一部分来进行公布,这样区块链的节点在验证交易合法性的时候就可以从交易数据内部得到公钥,并使用该公钥验证地址和交易签名的合法性。私钥由用户秘密保管,可用来生成公钥和钱包地址,以及用来对交易进行签名。拥有了私钥就相当于拥有了对这个账户进行交易的权限。因此,私钥的存储技术是区块链技术中的一个重要部分。目前,业内较多采用的是基于以太坊的keystore文件的私钥存储方案。此方案允许用户以加密的方式存储密钥,攻击者需要同时获得keystore文件和密码才能盗取账户资产,可保证账户的安全性。并且,用户也只需通过keystore文件和密码即可支配自己的资产,在保证账户的安全性的前提下,使用也较为便利。
随着区块链技术的运用和发展在全球掀起一股区块链风暴,作为区块链的典型项目,各类数字货币层出不穷。据不完全统计,目前市场上已有近1500种数字货币,如比特币、以太坊、莱特币、瑞波币等等。上述基于以太坊的keystore文件的私钥存储方案,由于数字货币间数据结构的差异,无法应用于其他币种的私钥存储,通用性较差。
发明内容
本申请提供了一种私钥存储和读取方法、装置及硬件设备,以解决现有的基于以太坊的keystore文件的私钥存储方案由于数字货币间数据结构的差异,无法应用于其他币种的私钥存储,通用性较差的问题。
第一方面,本申请提供一种私钥存储方法,所述方法包括:
获取硬件设备的通用唯一识别码和用户密码;
生成第一随机数,并根据所述第一随机数生成对应的盐值;
循环调用所述通用唯一识别码和所述盐值,通过安全散列算法生成第二随机数,以将所述第二随机数填满数据区;
将包括私钥在内的敏感数据存储至所述数据区,以与所述第二随机数经过混淆初始化后生成A矩阵;
根据预设的矩阵变换规则,对所述A矩阵进行变换,生成B矩阵;
根据所述通用唯一识别码和所述用户密码,通过安全散列算法生成哈希值;
根据所述哈希值和第一预设函数,计算出系数值;
根据所述哈希值、所述通用唯一识别码和第二预设函数,生成X矩阵,所述X矩阵为可逆矩阵;
根据所述B矩阵、所述X矩阵以及所述系数,生成D矩阵,以将所述D矩阵存储至硬件设备。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海南新软软件有限公司,未经海南新软软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810825132.6/2.html,转载请声明来源钻瓜专利网。