CN110881063B - 一种隐私数据的存储方法、装置、设备及介质 - Google Patents
一种隐私数据的存储方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN110881063B CN110881063B CN201911145042.3A CN201911145042A CN110881063B CN 110881063 B CN110881063 B CN 110881063B CN 201911145042 A CN201911145042 A CN 201911145042A CN 110881063 B CN110881063 B CN 110881063B
- Authority
- CN
- China
- Prior art keywords
- key
- node equipment
- private key
- random number
- private
- 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
- 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]
-
- 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/602—Providing cryptographic facilities or services
-
- 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
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Abstract
本申请实施例提供一种隐私数据的存储方法、装置、设备及介质,应用于区块链网络中的节点设备,其中的方法可包括:当所述节点设备中存在待存储的隐私数据时,获取所述节点设备的硬件特征信息;对所述节点设备的硬件特征信息进行运算处理得到密钥;采用所述密钥对所述隐私数据进行加密处理,得到密文;在所述节点设备中存储所述密文。本申请能够保证隐私数据的存储安全性。
Description
技术领域
本发明涉及区块链技术领域,具体涉及基于区块链的数据处理领域,尤其涉及一种隐私数据的存储方法、一种隐私数据的存储装置,一种隐私数据的存储设备及一种计算机存储介质。
背景技术
区块链网络中的节点设备中通常会存储一些隐私数据,例如用户在区块链中的注册账号、密码等;或者节点设备的私钥等。如何保证节点设备中的这些隐私数据(尤其是节点设备的私钥)的安全性是一个重要的研究课题。
发明内容
本申请实施例提供一种隐私数据的存储方法、装置、设备及介质,能够保证隐私数据的存储安全性。
一方面,本申请实施例提供一种隐私数据的存储方法,应用于区块链网络中的节点设备,所述方法包括:
当所述节点设备中存在待存储的隐私数据时,获取所述节点设备的硬件特征信息;
对所述节点设备的硬件特征信息进行运算处理得到密钥;
采用所述密钥对所述隐私数据进行加密处理,得到密文;
在所述节点设备中存储所述密文。
另一方面,本申请实施例提供一种隐私数据的存储装置,应用于区块链网络中的节点设备,所述装置包括:
获取单元,用于当所述节点设备中存在待存储的隐私数据时,获取所述节点设备的硬件特征信息;
运算单元,用于对所述节点设备的硬件特征信息进行运算处理得到密钥;
处理单元,用于采用所述密钥对所述隐私数据进行加密处理,得到密文;
存储单元,用于在所述节点设备中存储所述密文。
另一方面,本申请实施例提供一种隐私数据的存储设备,包括输入接口和输出接口,还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行上述的隐私数据的存储方法。
另一方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行上述的隐私数据的存储方法。
本申请实施例中,获取节点设备的硬件特征信息来生成密钥,采用该密钥对隐私数据(例如私钥)进行加密处理形成密文,这样就使得隐私数据以密文的方式被安全存储;由于硬件特征信息是该节点设备的特有特征,那么即使密文被窃取复制到其他设备中,由于其他设备的硬件特征信息与该密文所使用的密钥对应的硬件特征信息并不相同,其他设备无法生成正确的密钥,因而也就无法对密文进行正确解密,这样就保证了隐私数据的安全性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一个示例性实施例提供的区块链基础架构图;
图2示出了本申请一个示例性实施例提供的区块链的结构示意图;
图3示出了本申请一个示例性实施例提供的区块链网络的架构示意图;
图4示出了本申请一个示例性实施例提供的一种区块链网络中私钥、公钥、地址之间的关系示意图;
图5示出了本申请一个示例性实施例提供的一种隐私数据的存储方法的流程图;
图6示出了本申请另一个示例性实施例提供的一种隐私数据的存储方法的流程图;
图7示出了本申请一个示例性实施例提供的一种隐私数据的存储装置的结构示意图;
图8示出了本申请一个示例性实施例提供的一种隐私数据的存储设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例中涉及区块链。区块链是指一套去中心化、具备分布式存储特点的基础架构,具体是一种按照时间顺序将数据区块用类似链表的方式组成的数据结构,能够安全存储有先后关系的、能在系统内进行验证的数据,并以密码学方式保证数据不可篡改和不可伪造。
图1示出了本申请一个示例性实施例提供的区块链基础架构图;如图1所示,区块链基础架构按照由底至上的顺序主要包括101-105共5个层级结构。其中:
(1)信息数据和默克尔(Merkle)树位于底层101。此处的信息数据是指请求发布至区块链网络,但尚未形成区块的原始数据,例如可以是借贷数据、交易数据等等。这些原始数据需要进一步加工(例如经过区块链网络中各节点的验证、进行散列运算等)才能被写入区块内。Merkle树是区块链技术的重要组成部分,区块链不会直接保存明文的原始数据,原始数据需要被执行散列运算,以散列值的方式被存储。默克尔树就用于将多个原始数据经散列运算形成的散列值按照二叉树结构组织起来,保存在区块的块体中。
(2)区块位于层级102。区块即数据块,底层101的信息数据经过进一步加工之后被写入至层级102中的区块内。多个区块按序连接成链式结构,即形成区块链。图2示出了本申请一个示例性实施例提供的区块链的结构示意图;如图2所示,区块201、区块202和区块203按序连接成链式结构。其中,区块202分为区块头和区块体两部分,区块头包含前一区块201的摘要值、本区块202的摘要值及本区块的默克尔(Merkle)根。区块体包含本区块202的完整数据,并以Merkle树的形式组织在一起。
(3)区块链所遵循的协议与机制位于层级103。这些协议可包括:P2P(Peer-to-Peer,对等式网络)协议;机制可包括但不限于:广播机制、共识机制(包括PoW(Proof OfWork,工作量证明)机制、POS(Proof Of Stake,权益证明)机制等核心机制)。
(4)区块链网络位于层级104。区块链网络由多个节点组成;可作为节点的设备可包括但不限于:PC(Personal Computer,个人计算机)、服务器、用于比特币挖矿设计的矿机、智能手机、平板电脑、移动计算机等等。图3示出了本申请一个示例性实施例提供的区块链网络的架构示意图;图中以7个节点为例进行说明,区块链网络中各节点以P2P方式组网,节点与节点之间按照P2P协议相互通信;各节点共同遵循广播机制、共识机制(包括PoW机制、POS机制等核心机制),共同保证区块链上的数据的不可篡改、不可伪造性,同时实现区块链的去中心化、去信任化等特性。
(5)智能合约位于上层105。智能合约是一组情景——应对型的程序化规则和逻辑,是部署在区块链上的去中心化、可信息共享的程序代码。签署合约的各参与方就合约内容达成一致,以智能合约的形式部署在区块链中,即可不依赖任何中心机构自动化地代表各签署方执行合约。
由于区块链具备去中心化、分布式存储、数据的不可篡改、不可伪造等特性,越来越多的业务活动(例如借贷活动、金融交易活动)基于区块链技术展开,以利用区块链的特性来保证业务活动的公平性和公开性。
区块链网络中的节点设备中通常会存储一些隐私数据,此处的隐私数据是指需要安全保存,防止被泄露的数据。该隐私数据可以是用户个人信息,例如用户在区块链中的注册账号、密码等;该隐私数据还可以是密钥信息,例如节点设备的私钥等。保证节点设备中的这些隐私数据的安全性尤为重要,为了方便阐述,本申请后续实施例中以隐私数据为节点设备的私钥为例进行说明。
区块链网络中的节点设备会生成密钥对来对区块链网络中的交易数据进行处理,该密钥对包括公钥和私钥;公钥即公开密钥(Public Key),私钥即私有密钥(PrivateKey),公钥和私钥是密码学里非对称加密算法的内容,二者成对存在。公钥是可以公开的,而私钥则要进行安全保管。公钥和私钥的关系一般包括:(1)公钥加密,私钥解密。用公钥对原数据进行加密,只有与该公钥配对的私钥才能解密得到原数据;这样保证原数据在传播过程中不被窃取,保护隐私。(2)私钥签名,公钥验签。用私钥对原数据进行签名,只有与该私钥配对的公钥才能验证签名串。节点设备的私钥通常是由节点设备安全保管的,例如由节点设备将私钥存储在节点设备的一个安全的存储区域中;而公钥则公开在区块链网络中,并且该公钥唯一对应于区块链网络中的一个地址,该地址用来指向该公钥所属的节点设备。图4示出了本申请一个示例性实施例提供的一种区块链网络中私钥、公钥、地址之间的关系示意图;如图4所示,私钥通常是通过随机种子生成的一个随机数,私钥通过计算(例如椭圆曲线加密计算)生成公钥,公钥又通过另一种计算(例如哈希计算)生成地址,地址用于唯一标识区块链网络中的一个节点设备。上述的两种计算都是单向不可逆的,即公钥无法反向计算得到私钥,地址也无法反向计算得到公钥。在区块链网络中,私钥用于对交易数据进行签名以证明资产的所有权;因此,私钥必须始终保持机密,一旦丢失该私钥所需证明的资产也将永远丢失,确保私钥的安全性十分重要。
基于上述描述,本申请实施例提出一种隐私数据的存储方案,能够有效提升节点设备中的隐私数据的存储安全性。
图5示出了本申请一个示例性实施例提供的一种隐私数据的存储方法的流程图;该方法可以由图3所示的任一个节点设备来执行;该方法可包括以下步骤S501-S504:
S501,当所述节点设备中存在待存储的隐私数据时,获取所述节点设备的硬件特征信息。
在节点设备生成私钥时,该私钥即成为节点设备中所存在的待存储的隐私数据,此时就需要对私钥进行安全保护,即本申请实施例在私钥被生成时就可以及时地对该私钥作出安全存储保护。硬件特征信息是用于描述节点设备中的硬件特征的一些信息,此处的硬件可以包括但不限于:中央处理器(CPU)、主板、硬盘等等;硬件特征可以是指:CPU编码、主板序列号、硬盘序列号等等信息。在一种实施方式中,硬件特征信息可以是硬件特征码;该硬件特征码是对节点设备的硬件信息进行加密运算得到的字符串;此处的硬件信息包括以下至少一种:中央处理器的序列号、媒体存取控制位址、主板序列号、硬盘序列号。
S502,对所述节点设备的硬件特征信息进行运算处理得到密钥。
其中,运算处理的过程可以是:将节点设备的硬件特征信息作为随机数的一个生成因子,利用一些随机算法(如VRF算法)来生成一个随机数;再基于该随机数生成密钥。密钥可以是对称密钥或非对称密钥。
S503,采用所述密钥对所述隐私数据进行加密处理,得到密文。
S504,在所述节点设备中存储所述密文。
步骤S503-S504中,基于节点设备的硬件特征信息所生成的密钥用来对节点设备中的隐私数据进行加密处理,得到密文;例如:响应于对私钥的存储需求,基于节点设备的硬件特征信息生成密钥后,采用该密钥对该节点设备中的私钥进行加密得以密文,那么节点设备的私钥就以密文的方式被安全存储于节点设备中,这样能够保证私钥的存储安全性。
本申请实施例中,获取节点设备的硬件特征信息来生成密钥,采用该密钥对隐私数据(例如私钥)进行加密处理形成密文,这样就使得隐私数据以密文的方式被安全存储;由于硬件特征信息是该节点设备的特有特征,那么即使密文被窃取复制到其他设备中,由于其他设备的硬件特征信息与该密文所使用的密钥对应的硬件特征信息并不相同,其他设备无法生成正确的密钥,因而也就无法对密文进行正确解密,这样就保证了隐私数据的安全性。
图6示出了本申请另一个示例性实施例提供的另一种隐私数据的存储方法的流程图;该方法可以由图3所示的任一个节点设备来执行;该方法可包括以下步骤S601-S610:
S601,当节点设备中存在待存储的隐私数据时,获取所述节点设备的硬件特征信息。
S602,对所述节点设备的硬件特征信息进行运算处理得到密钥。
运算处理的过程可以是:将节点设备的硬件特征信息作为随机数的一个生成因子,利用一些随机算法(如VRF(Verifiable Random Function,可验证随机函数)算法)来生成一个随机数;再基于该随机数生成密钥
在一种实施方式中,步骤S602具体包括如下步骤s11-s12:
s11,调用随机算法对所述节点设备的硬件特征信息进行运算得到目标随机数。
s12,调用密钥生成规则对所述目标随机数进行生成处理得到所述密钥。
步骤s11-s12所示的实施方式中,节点设备的硬件特征信息作为目标随机数的唯一一个生成因子。随机算法可包括但不限于:VRF算法、Commit Reveal(一种在规定时间内可以有终端参与产生随机数的算法)算法、BLS算法(一种可以实现签名聚合和密钥聚合的算法)等等,通过该随机算法可以将节点设备的硬件特征信息生成目标随机数。密钥生成规则可包括对称密钥生成规则或非对称密钥生成规则,通过对称密钥生成规则可以将目标随机数生成对称密钥,而通过非对称密钥生成规则可以将目标随机数生成非对称密钥。
在另一种实施方式中,步骤S602具体包括如下步骤s13-s15:
s13,获取第一随机数。此处获取第一随机数具体可以包括但不限于:基于随机算法生成所述第一随机数;或者,接收所述区块链网络中的其他节点设备发送的所述第一随机数。
s14,调用随机算法对所述节点设备的硬件特征信息和所述第一随机数进行运算得到目标随机数。
s15,调用密钥生成规则对所述目标随机数进行生成处理得到所述密钥。
在步骤s13-s15所示的实施方式中,节点设备的硬件特征信息可以与第一随机数一起作为目标随机数的生成因子。该第一随机数是存储在节点设备中的任意随机数,该第一随机数既可以是由节点设备自己使用随机种子和随机算法生成的,也可以是从其他节点设备中获得的任意的一个随机数。
在又一种实施方式中,步骤S602具体包括如下步骤s16-s18:
s16,获取输入至所述节点设备中的口令信息,所述口令信息包括以下至少一种:文本信息、图像信息、音视频信息;
s17,调用随机算法对所述节点设备的硬件特征信息和所述口令信息进行运算得到目标随机数;
s18,调用密钥生成规则对所述目标随机数进行生成处理得到所述密钥。
在步骤s16-s18所示的实施方式中,节点设备的硬件特征信息可以与口令信息一起作为目标随机数的生成因子。该口令信息可以是用户在节点设备中输入的口令信息,也可以由用户通过用户终端(例如手机、PC(Personal Computer,个人计算机)等)发送给节点设备的。
需要说明的是,上述三种实施方式可以根据需要灵活选择使用,也可以进行组合使用,例如:可以将节点设备的硬件特征信息、第一随机数和口令信息三者一起作为目标随机数的生成因子。通过上述各种实施方式,可以将节点设备的硬件特征信息灵活结合第一随机数和/或口令信息来得到密钥生成所需的目标随机数,这样使得目标随机数的随机性更佳,从而使得基于该目标随机数生成的密钥的安全性更高。
S603,采用所述密钥对所述隐私数据进行加密处理,得到密文。
S604,从所述节点设备中删除所述密钥。
本申请实施例中,密钥的作用是为了对隐私数据(例如私钥)进行加密处理形成密文;当密文形成时,该密钥的使命也已完成,可以从节点设备中删除。从节点设备中删除密钥是为了进一步加大对隐私数据的安全保护力度。如果密钥一直存在于节点设备中,那么如果该密钥被其他非法设备获取,同时密文也被其他非法设备复制获得,那么隐私数据的安全性就会受到威胁。因此本申请实施例在得到密文之后,就从节点设备中删除密钥,防止密钥被窃取而带来安全隐患。
S605,在所述节点设备中存储所述密文。
S606,响应于对交易数据的发布请求,重新对所述节点设备的硬件特征信息进行运算处理得到所述密钥。
S607,采用所述密钥对所述密文进行解析得到所述节点设备的私钥。
S608,采用解析得到的所述节点设备的私钥对所述交易数据进行签名,并将签名后的交易数据发布至所述区块链网络中。
步骤S606-S608中,隐私数据是指节点设备的私钥,而该节点设备的公钥则被公开发布在区块链网络中。当节点设备需要将交易数据执行上链操作(即发布操作)时,该节点设备需要使用私钥来对交易数据进行签名,此时就需要对节点设备中存储的密文进行解析得到私钥。如前述,在密文生成时,密钥已从节点设备中删除,因此在解密时需要节点设备重新对硬件特征信息进行运算处理得到所述密钥,再采用该密钥对密文进行解析得到私钥,节点设备即可利用该私钥对交易数据进行签名并上链。可以理解的是,基于解密要求重新生成密钥的过程与基于加密要求生成密钥的过程是一致的,具体地,如果加密形成密文时,以硬件特征信息作为生成因子得到的目标随机数,再基于目标随机数来生成密钥;那么解密时同样采用此方式生成相同的密钥。如果加密形成密文时,以硬件特征信息和第一随机数共同作为生成因子得到的目标随机数,再基于目标随机数来生成密钥;那么解密时同样采用此方式生成相同的密钥。如果加密形成密文时,以硬件特征信息和口令信息共同作为生成因子得到的目标随机数,再基于目标随机数来生成密钥;那么解密时同样采用此方式生成相同的密钥。
S609,再次采用所述密钥对所述私钥进行加密处理,得到所述密文。
S610,将所述密文存储至所述节点设备中,并再次从所述节点设备中删除所述密钥。
由于密文被解密得到私钥,私钥则被以明文方式存在于节点设备中,此时需要采用重新生成的密钥再次对私钥进行加密得到密文,并存在节点设备中,同时再次将重新生成的密钥进行删除,这样可加大对私钥的安全保护力度。
本申请实施例中,利用节点设备的硬件特征信息,或硬件特征信息加上随机数,或硬件特征信息加上口令信息等多种实现方式来生成密钥,这样可以提升密钥的安全性;采用该密钥对隐私数据(例如私钥)进行加密处理形成密文,这样就使得隐私数据以密文的方式被安全存储;由于硬件特征信息是该节点设备的特有特征,那么即使密文被窃取复制到其他设备中,由于其他设备的硬件特征信息与该密文所使用的密钥对应的硬件特征信息并不相同,其他设备无法生成正确的密钥,因而也就无法对密文进行正确解密,这样就保证了隐私数据的安全性。
图7示出了本申请一个示例性实施例提供的一种隐私数据的存储装置的结构示意图;该隐私数据的存储装置可以是运行于图3所示的任一个节点设备中的一个计算机程序(包括程序代码),例如该隐私数据的存储装置可以是节点设备中的一个应用软件;该隐私数据的存储装置可以用于执行图5-图6所示的方法中的相应步骤。请参见图7,该隐私数据的存储装置包括如下单元:
获取单元701,用于当所述节点设备中存在待存储的隐私数据时,获取所述节点设备的硬件特征信息。
运算单元702,用于对所述节点设备的硬件特征信息进行运算处理得到密钥。
处理单元703,用于采用所述密钥对所述隐私数据进行加密处理,得到密文。
存储单元704,用于在所述节点设备中存储所述密文。
一种实施方式中,所述硬件特征信息包括硬件特征码;所述硬件特征码是对所述节点设备的硬件信息进行加密运算得到的字符串;其中,所述硬件信息包括以下至少一种:中央处理器的序列号、媒体存取控制位址、主板序列号、硬盘序列号。
另一种实施方式中,所述运算单元702具体用于:
调用随机算法对所述节点设备的硬件特征信息进行运算得到目标随机数;
调用密钥生成规则对所述目标随机数进行生成处理得到所述密钥。
另一种实施方式中,所述运算单元702具体用于:
获取第一随机数;
调用随机算法对所述节点设备的硬件特征信息和所述第一随机数进行运算得到目标随机数;
调用密钥生成规则对所述目标随机数进行生成处理得到所述密钥。
另一种实施方式中,所述运算单元702具体用于:
基于随机算法生成所述第一随机数;或者,接收所述区块链网络中的其他节点设备发送的所述第一随机数。
另一种实施方式中,所述运算单元702具体用于:
获取输入至所述节点设备中的口令信息,所述口令信息包括以下至少一种:文本信息、图像信息、音视频信息;
调用随机算法对所述节点设备的硬件特征信息和所述口令信息进行运算得到目标随机数;
调用密钥生成规则对所述目标随机数进行生成处理得到所述密钥。
另一种实施方式中,所述处理单元703还用于:从所述节点设备中删除所述密钥。
另一种实施方式中,所述隐私数据为所述节点设备的私钥,所述私钥对应的公钥被发布至所述区块链网络中;所述处理单元703还用于:
响应于对交易数据的发布请求,重新对所述节点设备的硬件特征信息进行运算处理得到所述密钥;
采用所述密钥对所述密文进行解析得到所述节点设备的私钥;
采用解析得到的所述节点设备的私钥对所述交易数据进行签名,并将签名后的交易数据发布至所述区块链网络中。
另一种实施方式中,所述处理单元703还用于:
再次采用所述密钥对所述私钥进行加密处理,得到所述密文;
将所述密文存储至所述节点设备中,并再次从所述节点设备中删除所述密钥。
根据本发明的一个实施例,图7所示的隐私数据的存储装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本发明的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,该隐私数据的存储装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图5-图6所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图7中所示的隐私数据的存储装置,以及来实现本申请实施例的隐私数据的存储方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请实施例中,利用节点设备的硬件特征信息,或硬件特征信息加上随机数,或硬件特征信息加上口令信息等多种实现方式来生成密钥,这样可以提升密钥的安全性;采用该密钥对隐私数据(例如私钥)进行加密处理形成密文,这样就使得隐私数据以密文的方式被安全存储;由于硬件特征信息是该节点设备的特有特征,那么即使密文被窃取复制到其他设备中,由于其他设备的硬件特征信息与该密文所使用的密钥对应的硬件特征信息并不相同,其他设备无法生成正确的密钥,因而也就无法对密文进行正确解密,这样就保证了隐私数据的安全性。
图8示出了本申请一个示例性实施例提供的一种隐私数据的存储设备的结构示意图。该隐私数据的存储设备可以是图3所示的任一个节点设备。请参见图8,该隐私数据的存储设备至少包括处理器801、输入设备802、输出设备803以及计算机存储介质804。其中,处理器801、输入设备802、输出设备803以及计算机存储介质804可通过总线或者其它方式连接。计算机存储介质804可以存储在终端的存储器中,所述计算机存储介质804用于存储计算机程序,所述计算机程序包括程序指令,所述处理器801用于执行所述计算机存储介质804存储的程序指令。处理器801(或称CPU(Central Processing Unit,中央处理器))是隐私数据的存储设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。
本申请实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是隐私数据的存储设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括隐私数据的存储设备中的内置存储介质,当然也可以包括隐私数据的存储设备所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了隐私数据的存储设备的操作系统。并且,在该存储空间中还存放了适于被处理器801加载并执行的一条或多条的指令,这些指令可以是一个或多个的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,该计算机存储介质中存储有一条或多条指令;由处理器801加载并执行计算机存储介质中存放的一条或多条指令,以实现上述隐私数据的存储方法实施例中的相应步骤;具体实现中,计算机存储介质中的一条或多条指令由处理器801加载并执行如下步骤:
当所述节点设备中存在待存储的隐私数据时,获取所述节点设备的硬件特征信息;
对所述节点设备的硬件特征信息进行运算处理得到密钥;
采用所述密钥对所述隐私数据进行加密处理,得到密文;
在所述节点设备中存储所述密文。
一种实施方式中,所述硬件特征信息包括硬件特征码;所述硬件特征码是对所述节点设备的硬件信息进行加密运算得到的字符串;其中,所述硬件信息包括以下至少一种:中央处理器的序列号、媒体存取控制位址、主板序列号、硬盘序列号。
另一种实施方式中,计算机存储介质中的一条或多条指令由处理器801加载并执行所述对所述节点设备的硬件特征信息进行运算处理得到密钥的步骤时,具体执行如下步骤:
调用随机算法对所述节点设备的硬件特征信息进行运算得到目标随机数;
调用密钥生成规则对所述目标随机数进行生成处理得到所述密钥。
另一种实施方式中,计算机存储介质中的一条或多条指令由处理器801加载并执行所述对所述节点设备的硬件特征信息进行运算处理得到密钥的步骤时,具体执行如下步骤:
获取第一随机数;
调用随机算法对所述节点设备的硬件特征信息和所述第一随机数进行运算得到目标随机数;
调用密钥生成规则对所述目标随机数进行生成处理得到所述密钥。
另一种实施方式中,计算机存储介质中的一条或多条指令由处理器801加载并执行所述获取第一随机数的步骤时,具体执行如下步骤:
基于随机算法生成所述第一随机数;或者,接收所述区块链网络中的其他节点设备发送的所述第一随机数。
另一种实施方式中,计算机存储介质中的一条或多条指令由处理器801加载并执行所述对所述节点设备的硬件特征信息进行运算处理得到密钥的步骤时,具体执行如下步骤:
获取输入至所述节点设备中的口令信息,所述口令信息包括以下至少一种:文本信息、图像信息、音视频信息;
调用随机算法对所述节点设备的硬件特征信息和所述口令信息进行运算得到目标随机数;
调用密钥生成规则对所述目标随机数进行生成处理得到所述密钥。
另一种实施方式中,计算机存储介质中的一条或多条指令由处理器801加载并且还执行如下步骤:从所述节点设备中删除所述密钥。
另一种实施方式中,所述隐私数据为所述节点设备的私钥,所述私钥对应的公钥被发布至所述区块链网络中;计算机存储介质中的一条或多条指令由处理器801加载并且还执行如下步骤:
响应于对交易数据的发布请求,重新对所述节点设备的硬件特征信息进行运算处理得到所述密钥;
采用所述密钥对所述密文进行解析得到所述节点设备的私钥;
采用解析得到的所述节点设备的私钥对所述交易数据进行签名,并将签名后的交易数据发布至所述区块链网络中。
另一种实施方式中,计算机存储介质中的一条或多条指令由处理器801加载并执行所述采用解析得到的所述节点设备的私钥对所述交易数据进行签名的步骤之后,还执行如下步骤:
再次采用所述密钥对所述私钥进行加密处理,得到所述密文;
将所述密文存储至所述节点设备中,并再次从所述节点设备中删除所述密钥。
本申请实施例中,利用节点设备的硬件特征信息,或硬件特征信息加上随机数,或硬件特征信息加上口令信息等多种实现方式来生成密钥,这样可以提升密钥的安全性;采用该密钥对隐私数据(例如私钥)进行加密处理形成密文,这样就使得隐私数据以密文的方式被安全存储;由于硬件特征信息是该节点设备的特有特征,那么即使密文被窃取复制到其他设备中,由于其他设备的硬件特征信息与该密文所使用的密钥对应的硬件特征信息并不相同,其他设备无法生成正确的密钥,因而也就无法对密文进行正确解密,这样就保证了隐私数据的安全性。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (8)
1.一种隐私数据的存储方法,应用于区块链网络中的节点设备,所述节点设备接入至所述区块链网络中时生成私钥,所述私钥通过计算生成公钥,所述公钥通过计算生成地址,所述地址用于在所述区块链网络中唯一标识所述节点设备;所述节点设备基于公钥和私钥组成的密钥对来对所述区块链网络中的交易数据进行处理;其特征在于,所述方法包括:
通过随机种子生成所述节点设备的私钥;
当所述私钥在所述节点设备中被生成时,触发对所述私钥的存储需求;
响应于对所述私钥的存储需求,获取所述节点设备的硬件特征信息;
从所述区块链网络中的其他节点设备处获取第一随机数,所述第一随机数是从所述区块链网络中的其他节点设备中获得的任意一个随机数;
获取输入至所述节点设备中的口令信息,所述口令信息包括以下至少一种:文本信息、图像信息、音视频信息;
将所述节点设备的硬件特征信息、所述第一随机数和所述口令信息三者一起作为目标随机数的生成因子;
调用随机算法对所述生成因子进行运算得到目标随机数;
调用密钥生成规则对所述目标随机数进行生成处理得到密钥;
采用所述密钥对所述私钥进行加密处理,得到密文;
在所述节点设备中存储所述密文;其中,当所述节点设备需要对所述区块链网络中的交易数据进行处理时,所述密文被解析所得到的私钥用于对所述交易数据进行签名。
2.如权利要求1所述的方法,其特征在于,所述硬件特征信息包括硬件特征码;所述硬件特征码是对所述节点设备的硬件信息进行加密运算得到的字符串;其中,所述硬件信息包括以下至少一种:中央处理器的序列号、媒体存取控制位址、主板序列号、硬盘序列号。
3.如权利要求1所述的方法,其特征在于,所述采用所述密钥对所述私钥进行加密处理,得到密文之后,所述方法还包括:
从所述节点设备中删除所述密钥。
4.如权利要求3所述的方法,其特征在于,所述私钥对应的公钥被发布至所述区块链网络中;所述方法还包括:
响应于对交易数据的发布请求,重新对所述生成因子进行运算处理得到所述密钥;
采用所述密钥对所述密文进行解析得到所述节点设备的私钥;
采用解析得到的所述节点设备的私钥对所述交易数据进行签名,并将签名后的交易数据发布至所述区块链网络中。
5.如权利要求4所述的方法,其特征在于,所述采用解析得到的所述节点设备的私钥对所述交易数据进行签名之后,还包括:
再次采用所述密钥对所述私钥进行加密处理,得到所述密文;
将所述密文存储至所述节点设备中,并再次从所述节点设备中删除所述密钥。
6.一种隐私数据的存储装置,应用于区块链网络中的节点设备,所述节点设备接入至所述区块链网络中时生成私钥,所述私钥通过计算生成公钥,所述公钥通过计算生成地址,所述地址用于在所述区块链网络中唯一标识所述节点设备;所述节点设备基于公钥和私钥组成的密钥对来对所述区块链网络中的交易数据进行处理;其特征在于,所述装置包括:
处理单元,用于通过随机种子生成所述节点设备的私钥;
获取单元,用于当所述私钥在所述节点设备中被生成时,触发对所述私钥的存储需求;响应于对所述私钥的存储需求,获取所述节点设备的硬件特征信息;从所述区块链网络中的其他节点设备处获取第一随机数,所述第一随机数是从所述区块链网络中的其他节点设备中获得的任意一个随机数;获取输入至所述节点设备中的口令信息,所述口令信息包括以下至少一种:文本信息、图像信息、音视频信息;
运算单元,用于将所述节点设备的硬件特征信息、所述第一随机数和所述口令信息三者一起作为目标随机数的生成因子;调用随机算法对所述生成因子进行运算得到目标随机数;调用密钥生成规则对所述目标随机数进行生成处理得到密钥;
处理单元,用于采用所述密钥对所述私钥进行加密处理,得到密文;
存储单元,用于在所述节点设备中存储所述密文;其中,当所述节点设备需要对所述区块链网络中的交易数据进行处理时,所述密文被解析所得到的私钥用于对所述交易数据进行签名。
7.一种隐私数据的存储设备,包括输入接口和输出接口,其特征在于,还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-5任一项所述的隐私数据的存储方法。
8.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-5任一项所述的隐私数据的存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911145042.3A CN110881063B (zh) | 2019-11-20 | 2019-11-20 | 一种隐私数据的存储方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911145042.3A CN110881063B (zh) | 2019-11-20 | 2019-11-20 | 一种隐私数据的存储方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110881063A CN110881063A (zh) | 2020-03-13 |
CN110881063B true CN110881063B (zh) | 2022-03-15 |
Family
ID=69730213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911145042.3A Active CN110881063B (zh) | 2019-11-20 | 2019-11-20 | 一种隐私数据的存储方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110881063B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111444535B (zh) * | 2020-03-20 | 2024-01-26 | 苏州链原信息科技有限公司 | 用于生成聚合数据标签的方法、设备及计算机存储介质 |
CN111555865B (zh) * | 2020-04-03 | 2023-06-20 | 深圳华数云计算技术有限公司 | 一种多终端共同管理数字货币的方法、系统和存储介质 |
CN111541725B (zh) * | 2020-07-08 | 2021-04-27 | 支付宝(杭州)信息技术有限公司 | 区块链一体机及其密码加速卡、密钥管理方法和装置 |
CN111881481B (zh) * | 2020-08-05 | 2024-04-09 | 杭州翔毅科技有限公司 | 基于区块链的医疗数据处理方法、装置、设备及存储介质 |
CN112184444B (zh) * | 2020-09-29 | 2023-08-18 | 平安科技(深圳)有限公司 | 基于信息的特征进行信息处理的方法、装置、设备及介质 |
CN112202555B (zh) * | 2020-09-29 | 2023-07-18 | 平安科技(深圳)有限公司 | 基于信息的属性生成随机数的信息处理方法、装置及设备 |
CN112214549A (zh) * | 2020-10-10 | 2021-01-12 | 中育数据(广州)科技有限公司 | 一种文件特征码生成方法、装置及电子设备 |
CN113191754A (zh) * | 2021-04-26 | 2021-07-30 | 飞呗科技有限公司 | 一种基于区块链的游戏装备交易方法、装置、设备及系统 |
CN113489584B (zh) * | 2021-07-02 | 2024-04-05 | 北京泛融科技有限公司 | 一种区块链中随机数的处理方法、装置和电子设备 |
CN114500108A (zh) * | 2022-04-02 | 2022-05-13 | 四川易诚智讯科技有限公司 | 一种安全高效的工业硬件加密方法 |
CN114553612B (zh) * | 2022-04-27 | 2022-07-26 | 深圳市一航网络信息技术有限公司 | 数据加密、解密方法、装置、存储介质及电子设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067402A (zh) * | 2013-01-10 | 2013-04-24 | 天地融科技股份有限公司 | 数字证书的生成方法和系统 |
CN103067401A (zh) * | 2013-01-10 | 2013-04-24 | 天地融科技股份有限公司 | 密钥保护方法和系统 |
CN103095455A (zh) * | 2013-01-10 | 2013-05-08 | 天地融科技股份有限公司 | 用户私钥的存储方法和用户私钥的存储系统 |
CN103095456A (zh) * | 2013-01-10 | 2013-05-08 | 天地融科技股份有限公司 | 交易报文的处理方法和系统 |
CN103886659A (zh) * | 2014-02-25 | 2014-06-25 | 苏州美高立电气有限公司 | 电子安防设备及其控制方法 |
CN105071927A (zh) * | 2015-07-17 | 2015-11-18 | 上海众人网络安全技术有限公司 | 一种移动设备数据本地存储方法 |
CN108259162A (zh) * | 2016-12-28 | 2018-07-06 | 航天信息股份有限公司 | 一种密钥存储方法 |
CN108833117A (zh) * | 2018-07-25 | 2018-11-16 | 海南新软软件有限公司 | 一种私钥存储和读取方法、装置及硬件设备 |
CN110032876A (zh) * | 2019-02-19 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法、节点和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103684766B (zh) * | 2012-08-30 | 2017-03-08 | 卓望数码技术(深圳)有限公司 | 一种终端用户的私钥保护方法和系统 |
CN105701423B (zh) * | 2015-12-31 | 2018-11-02 | 深圳前海微众银行股份有限公司 | 应用于云端支付业务的数据存储方法及装置 |
CN109284622B (zh) * | 2017-07-20 | 2022-05-17 | 腾讯科技(深圳)有限公司 | 联系人信息处理方法、装置及存储介质 |
-
2019
- 2019-11-20 CN CN201911145042.3A patent/CN110881063B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067402A (zh) * | 2013-01-10 | 2013-04-24 | 天地融科技股份有限公司 | 数字证书的生成方法和系统 |
CN103067401A (zh) * | 2013-01-10 | 2013-04-24 | 天地融科技股份有限公司 | 密钥保护方法和系统 |
CN103095455A (zh) * | 2013-01-10 | 2013-05-08 | 天地融科技股份有限公司 | 用户私钥的存储方法和用户私钥的存储系统 |
CN103095456A (zh) * | 2013-01-10 | 2013-05-08 | 天地融科技股份有限公司 | 交易报文的处理方法和系统 |
CN103886659A (zh) * | 2014-02-25 | 2014-06-25 | 苏州美高立电气有限公司 | 电子安防设备及其控制方法 |
CN105071927A (zh) * | 2015-07-17 | 2015-11-18 | 上海众人网络安全技术有限公司 | 一种移动设备数据本地存储方法 |
CN108259162A (zh) * | 2016-12-28 | 2018-07-06 | 航天信息股份有限公司 | 一种密钥存储方法 |
CN108833117A (zh) * | 2018-07-25 | 2018-11-16 | 海南新软软件有限公司 | 一种私钥存储和读取方法、装置及硬件设备 |
CN110032876A (zh) * | 2019-02-19 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法、节点和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110881063A (zh) | 2020-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110881063B (zh) | 一种隐私数据的存储方法、装置、设备及介质 | |
CN109120639B (zh) | 一种基于区块链的数据云存储加密方法及系统 | |
CN109144961B (zh) | 授权文件共享方法及装置 | |
EP3619884B1 (en) | Secure dynamic threshold signature scheme employing trusted hardware | |
CN110580262B (zh) | 基于智能合约的隐私数据查询方法及装置 | |
KR102467596B1 (ko) | 블록 체인 구현 방법 및 시스템 | |
CN110061845A (zh) | 区块链数据加密方法、装置、计算机设备及存储介质 | |
CN111475829A (zh) | 基于区块链账户的隐私数据查询方法及装置 | |
CN110580412B (zh) | 基于链代码的权限查询配置方法及装置 | |
CN108352015A (zh) | 用于基于区块链的系统结合钱包管理系统的安全多方防遗失存储和加密密钥转移 | |
CN111460453A (zh) | 机器学习训练方法、控制器、装置、服务器、终端和介质 | |
CN111475827A (zh) | 基于链下授权的隐私数据查询方法及装置 | |
CN109067528A (zh) | 密码运算、创建工作密钥的方法、密码服务平台及设备 | |
CN110580417B (zh) | 基于智能合约的隐私数据查询方法及装置 | |
CN107070896B (zh) | 一种安全高效的区块链网络客户化登录方法及安全加固系统 | |
US11616643B2 (en) | System and method of management of a shared cryptographic account | |
CN111131336B (zh) | 多方授权场景下的资源访问方法、装置、设备及存储介质 | |
CN105721156A (zh) | 用于模幂加密方案的通用编码函数 | |
WO2021098152A1 (zh) | 基于区块链的数据处理方法、装置及计算机设备 | |
CN115495768A (zh) | 基于区块链及多方安全计算的涉密信息处理方法及系统 | |
CN117240625B (zh) | 一种涉及防篡改的数据处理方法、装置及电子设备 | |
CN112199730A (zh) | 一种终端上应用数据的处理方法、装置及电子设备 | |
CN114978664A (zh) | 一种数据共享方法、装置及电子设备 | |
CN114221784A (zh) | 数据传输方法和计算机设备 | |
JP2020155801A (ja) | 情報管理システム及びその方法 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40021553 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |