CN107508681A - 区块链密钥保护方法及装置 - Google Patents
区块链密钥保护方法及装置 Download PDFInfo
- Publication number
- CN107508681A CN107508681A CN201710698910.5A CN201710698910A CN107508681A CN 107508681 A CN107508681 A CN 107508681A CN 201710698910 A CN201710698910 A CN 201710698910A CN 107508681 A CN107508681 A CN 107508681A
- Authority
- CN
- China
- Prior art keywords
- public key
- signing messages
- key
- user node
- user
- 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.)
- Pending
Links
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/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/3247—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 involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
Abstract
本发明实施例提供一种区块链密钥保护方法及装置。该方法包括:接收区块链网络中的用户节点发送的用户名、第一公钥、第二公钥以及第一签名信息;当用户节点检测到区块链网络中未被写入区块且与用户节点关联的交易信息非法时,接收用户节点发送的用户名、第一指示信息和第二签名信息;接收用户节点发送的用户名、第二公钥、第三公钥以及第三签名信息;存储用户名、第二公钥和第三公钥的第二对应关系。本发明实施例通过用户节点采用两套公私钥对,使得黑客即使盗取了用户节点的一个私钥,一旦黑客冒充用户身份进行非法的操作就会被用户节点发现,并用新的私钥代替旧的私钥,使得黑客无法获取到用户有效的私钥,提高了区块链网络的安全性。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种区块链密钥保护方法及装置。
背景技术
区块链,原始区块链,是一种去中心化的数据库,它包含一张被称为区块的列表,有着持续增长并且排列整齐的记录。每个区块都包含一个时间戳和一个与前一区块的链接。
在区块链中,每个用户都有一对公钥和私钥,作为自己在这个区块链网络中的身份凭据。但是,如果自己的私钥被泄露或者被黑客盗取,就会造成不可挽回的经济损失。比如,当一个黑客入侵到用户的电脑中,将该用户的私钥盗取,就可以完全冒充这个正常用户的身份进行任何操作,将该用户名下的所有数字资产全部转移到其他的账户中,而真正的用户对于自己私钥被窃取的现象则束手无策,从而导致区块链网络的安全性较低。
发明内容
本发明实施例提供一种区块链密钥保护方法及装置,以提高区块链网络的安全性。
本发明实施例的一个方面是提供一种区块链密钥保护方法,包括:
接收区块链网络中的用户节点发送的用户名、第一公钥、第二公钥以及第一签名信息,所述第一签名信息是所述用户节点通过第一私钥对用户名、第一公钥、第二公钥进行签名得到的签名信息,所述第一公钥和所述第一私钥对应;
根据所述第一公钥对所述第一签名信息进行验证,若验证通过,则存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系;
当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,接收所述用户节点发送的所述用户名、第一指示信息和第二签名信息,其中,所述第一指示信息用于指示所述第一公钥失效,所述第二签名信息是所述用户节点通过第二私钥对所述用户名和所述第一指示信息进行签名得到的签名信息,所述第二公钥和所述第二私钥对应;
根据所述第二公钥对所述第二签名信息进行验证,若验证通过,则删除所述第一对应关系中的所述第一公钥;
接收所述用户节点发送的所述用户名、第二公钥、第三公钥以及第三签名信息,所述第三签名信息是所述用户节点通过第二私钥对所述用户名、所述第二公钥、所述第三公钥进行签名得到的签名信息;
根据所述第二公钥对所述第三签名信息进行验证,若验证通过,则存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系。
本发明实施例的另一个方面是提供一种区块链密钥保护装置,包括:
接收模块,用于接收区块链网络中的用户节点发送的用户名、第一公钥、第二公钥以及第一签名信息,所述第一签名信息是所述用户节点通过第一私钥对用户名、第一公钥、第二公钥进行签名得到的签名信息,所述第一公钥和所述第一私钥对应;
验证模块,用于根据所述第一公钥对所述第一签名信息进行验证;
存储模块,用于当验证模块根据所述第一公钥对所述第一签名信息验证通过时,存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系;
所述接收模块还用于:当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,接收所述用户节点发送的所述用户名、第一指示信息和第二签名信息,其中,所述第一指示信息用于指示所述第一公钥失效,所述第二签名信息是所述用户节点通过第二私钥对所述用户名和所述第一指示信息进行签名得到的签名信息,所述第二公钥和所述第二私钥对应;
所述验证模块还用于:根据所述第二公钥对所述第二签名信息进行验证;
删除模块,用于当所述验证模块根据所述第二公钥对所述第二签名信息验证通过时,删除所述第一对应关系中的所述第一公钥;
所述接收模块还用于:接收所述用户节点发送的所述用户名、第二公钥、第三公钥以及第三签名信息,所述第三签名信息是所述用户节点通过第二私钥对所述用户名、所述第二公钥、所述第三公钥进行签名得到的签名信息;
所述验证模块还用于:根据所述第二公钥对所述第三签名信息进行验证;
所述存储模块还用于:当所述验证模块根据所述第二公钥对所述第三签名信息验证通过时,存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系。
本发明实施例提供的区块链密钥保护方法及装置,通过用户节点采用两套公私钥对,用户节点在区块链网络中的正常交易采用其中的一套公私钥对,当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,启用另一套公私钥对,使得黑客即使盗取了用户节点的一个私钥,一旦黑客冒充用户身份进行非法的操作就会被用户节点发现,并用新的私钥代替旧的私钥,使得黑客无法获取到用户有效的私钥,无法冒充用户的身份进行任何操作,提高了区块链网络的安全性。
附图说明
图1为本发明实施例提供的区块链密钥保护方法流程图;
图2为本发明实施例提供的区块链密钥保护装置的结构图。
具体实施方式
图1为本发明实施例提供的区块链密钥保护方法流程图。该方法具体步骤如下:
步骤S101、接收区块链网络中的用户节点发送的用户名、第一公钥、第二公钥以及第一签名信息,所述第一签名信息是所述用户节点通过第一私钥对用户名、第一公钥、第二公钥进行签名得到的签名信息,所述第一公钥和所述第一私钥对应。
本实施例的执行主体可以是区块链网络中的节点,当区块链网络中的某一用户节点首次加入区块链网络时,该用户节点生成两对不同的公钥和私钥,具体的,生成第一公钥和第一私钥,例如公钥A和私钥A,以及生成第二公钥和第二私钥,例如公钥B和私钥B,其中,公钥A和私钥A是一对,公钥B和私钥B是一对。用户节点向区块链网络广播自己的用户名例如USER_M、公钥A、公钥B来声明自己在网络中的身份,同时还向区块链网络广播第一签名信息,其中,第一签名信息是该用户节点通过私钥A对USER_M、公钥A、公钥B进行签名得到的签名信息,即该用户节点向区块链网络广播的消息包括如下:
USER_M、公钥A、公钥B、通过私钥A对USER_M、公钥A、公钥B进行签名得到的第一签名信息。
步骤S102、根据所述第一公钥对所述第一签名信息进行验证,若验证通过,则存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系。
区块链网络中的其他节点均可接收到该用户节点广播的消息,当其他节点接收到USER_M、公钥A、公钥B、第一签名信息之后,采用公钥A对第一签名信息进行验证,若验证通过,则存储USER_M、公钥A、公钥B的第一对应关系。
该用户节点在区块链网络中的后续交易,采用公钥A和私钥A,按照区块链网络的方式对交易信息进行签名,并完成交易。
步骤S103、当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,接收所述用户节点发送的所述用户名、第一指示信息和第二签名信息,其中,所述第一指示信息用于指示所述第一公钥失效,所述第二签名信息是所述用户节点通过所述第二私钥对所述用户名和所述第一指示信息进行签名得到的签名信息,所述第二公钥和所述第二私钥对应。
该用户节点实时检测区块链网络中广播的还没有生成区块的并且和自己有关的所有交易记录,一旦发现某交易并非真的自己发起的,就意味着有人盗用了自己的身份来交易,也就是说黑客一定是盗用了自己的私钥A。由于某交易信息若被写入新区块,则该交易信息就得到了整个区块链网络的认可,因此该用户节点需要在新区块生成前来检测与自己有关的交易信息的真实性。此时,该用户节点向区块链网络广播USER_M、公钥A失效的第一指示信息,同时该用户节点还向区块链网络广播第二签名信息,该第二签名信息是该用户节点通过私钥B对USER_M和第一指示信息进行签名得到的签名信息,即当该用户节点检测到与自己相关的非法的交易信息时,向区块链网络广播如下信息:
USER_M、公钥A失效的第一指示信息、通过私钥B对USER_M和第一指示信息进行签名得到的签名信息。
区块链网络中的其他节点均可以接收到该该广播消息。
步骤S104、根据所述第二公钥对所述第二签名信息进行验证,若验证通过,则删除所述第一对应关系中的所述第一公钥。
当区块链网络中的其他节点接收到该用户节点广播的USER_M、公钥A失效的第一指示信息、第二签名信息时,查询本地存储的USER_M、公钥A、公钥B的第一对应关系,并根据第一对应关系中的公钥B对第二签名信息进行验证,若验证通过,则表示USER_M、公钥A失效的第一指示信息确实是该用户节点广播的,即区块链网络中的其他节点验证了USER_M、公钥A失效的第一指示信息、第二签名信息的真实性,则删除本地存储的USER_M、公钥A、公钥B的第一对应关系中的公钥A。
步骤S105、接收所述用户节点发送的所述用户名、第二公钥、第三公钥以及第三签名信息,所述第三签名信息是所述用户节点通过第二私钥对所述用户名、所述第二公钥、所述第三公钥进行签名得到的签名信息。
由于该用户节点已公布公钥A失效,进一步,该用户节点生成第三公钥和第三私钥,例如,公钥C和私钥C,并向区块链网络广播自己的用户名例如USER_M、第二公钥例如公钥B、第三公钥例如公钥C,以及第三签名信息,该第三签名信息是该用户节点通过私钥B对USER_M、公钥B、公钥C进行签名得到的签名信息,即该用户节点生成公钥C和私钥C之后,向区块链网络广播如下信息:
USER_M、公钥B、公钥C、通过私钥B对USER_M、公钥B、公钥C进行签名得到的签名信息。
步骤S106、根据所述第二公钥对所述第三签名信息进行验证,若验证通过,则存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系。
区块链网络中的其他节点接收到USER_M、公钥B、公钥C、第三签名信息后,根据公钥B对第三签名信息进行验证,第三签名信息即为通过私钥B对USER_M、公钥B、公钥C进行签名得到的签名信息,若验证通过,则区块链网络中的其他节点存储USER_M、公钥B、公钥C的第二对应关系。
在后续的通信和交易中,公钥B相当于公钥A,公钥C相当于公钥B,私钥B相当于私钥A,私钥C相当于私钥B,该用户节点在区块链网络中的后续交易,采用公钥B和私钥B,按照区块链网络的方式对交易信息进行签名,并完成交易,当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,立刻公布公钥B失效,启用公钥C和私钥C,并继续生成新的公私钥对,例如公钥D和私钥D,重复执行以上步骤。
本发明实施例通过用户节点采用两套公私钥对,用户节点在区块链网络中的正常交易采用其中的一套公私钥对,当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,启用另一套公私钥对,使得黑客即使盗取了用户节点的一个私钥,一旦黑客冒充用户身份进行非法的操作就会被用户节点发现,并用新的私钥代替旧的私钥,使得黑客无法获取到用户有效的私钥,无法冒充用户的身份进行任何操作,提高了区块链网络的安全性。
在上述实施例的基础上,所述接收所述用户节点发送的所述用户名、第一指示信息和第二签名信息之后,还包括:接收所述用户节点发送的失效的交易信息,以及第四签名信息,所述第四签名信息是所述用户节点通过所述第二私钥对所述失效的交易信息失效的交易信息。
根据上述步骤S103可知,当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,该用户节点向区块链网络广播USER_M、公钥A失效的第一指示信息和第二签名信息,在本实施例中,该用户节点进一步还可以将其检测到的所述区块链网络中未被写入区块且与所述用户节点关联的非法交易信息广播到区块链网络中,以使区块链网络中的其他节点从已抢到记账权或将要抢到记账权的账本中删除非法交易信息。在其他实施例中,该用户节点将非法交易信息广播到区块链网络的同时还可以广播第四签名信息,该第四签名信息是用户节点通过私钥B对该非法交易信息进行签名得到的签名信息。
所述接收所述用户节点发送的失效的交易信息,以及第四签名信息之后,还包括:根据所述第二公钥对所述第四签名信息进行验证,若验证通过,则删除区块链账本中所述失效的交易信息。
当区块链网络中的其他节点接收到该用户节点广播的非法交易信息,以及第四签名信息后,根据公钥B对所述第四签名信息进行验证,若验证通过,则从已抢到记账权或将要抢到记账权的账本中删除非法交易信息。
另外,所述存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系之前,所述第一私钥在所述用户节点处于在线状态,所述第二私钥在所述用户节点处于离线状态。例如,用户节点将USER_M、公钥A、公钥B广播到区块链网络后,私钥A在所述用户节点处于在线状态,该用户节点可以随时使用私钥A对交易信息进行签名,私钥B在所述用户节点处于离线状态,只有当该用户节点检测到私钥A可能被泄露时,才启用私钥B。
此外,所述存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系之前,所述第二私钥在所述用户节点处于在线状态,所述第三私钥在所述用户节点处于离线状态。例如,用户节点将USER_M、公钥B、公钥C广播到区块链网络后,私钥B在所述用户节点处于在线状态,该用户节点可以随时使用私钥B对交易信息进行签名,私钥C在所述用户节点处于离线状态,只有当该用户节点检测到私钥B可能被泄露时,才启用私钥C。
本发明实施例通过用户节点采用两套公私钥对,用户节点在区块链网络中的正常交易采用其中的一套公私钥对,当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,启用另一套公私钥对,使得黑客即使盗取了用户节点的一个私钥,一旦黑客冒充用户身份进行非法的操作就会被用户节点发现,并用新的私钥代替旧的私钥,使得黑客无法获取到用户有效的私钥,无法冒充用户的身份进行任何操作,提高了区块链网络的安全性。
图2为本发明实施例提供的区块链密钥保护装置的结构图。本发明实施例提供的区块链密钥保护装置可以执行区块链密钥保护方法实施例提供的处理流程,如图2所示,区块链密钥保护装置20包括:接收模块21、验证模块22、存储模块23、删除模块24,接收模块21用于接收区块链网络中的用户节点发送的用户名、第一公钥、第二公钥以及第一签名信息,所述第一签名信息是所述用户节点通过第一私钥对用户名、第一公钥、第二公钥进行签名得到的签名信息,所述第一公钥和所述第一私钥对应;验证模块22用于根据所述第一公钥对所述第一签名信息进行验证;存储模块23用于当验证模块根据所述第一公钥对所述第一签名信息验证通过时,存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系;接收模块21还用于:当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,接收所述用户节点发送的所述用户名、第一指示信息和第二签名信息,其中,所述第一指示信息用于指示所述第一公钥失效,所述第二签名信息是所述用户节点通过所述第二私钥对所述用户名和所述第一指示信息进行签名得到的签名信息,所述第二公钥和所述第二私钥对应;验证模块22还用于:根据所述第二公钥对所述第二签名信息进行验证;删除模块24用于当所述验证模块根据所述第二公钥对所述第二签名信息验证通过时,删除所述第一对应关系中的所述第一公钥;接收模块21还用于:接收所述用户节点发送的所述用户名、第二公钥、第三公钥以及第三签名信息,所述第三签名信息是所述用户节点通过第二私钥对所述用户名、所述第二公钥、所述第三公钥进行签名得到的签名信息;验证模块22还用于:根据所述第二公钥对所述第三签名信息进行验证;存储模块23还用于:当所述验证模块根据所述第二公钥对所述第三签名信息验证通过时,存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系。
本发明实施例提供的区块链密钥保护装置可以具体用于执行上述图1所提供的方法实施例,具体功能此处不再赘述。
本发明实施例通过用户节点采用两套公私钥对,用户节点在区块链网络中的正常交易采用其中的一套公私钥对,当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,启用另一套公私钥对,使得黑客即使盗取了用户节点的一个私钥,一旦黑客冒充用户身份进行非法的操作就会被用户节点发现,并用新的私钥代替旧的私钥,使得黑客无法获取到用户有效的私钥,无法冒充用户的身份进行任何操作,提高了区块链网络的安全性。
在上述实施例的基础上,接收模块21还用于:接收所述用户节点发送的失效的交易信息,以及第四签名信息,所述第四签名信息是所述用户节点通过所述第二私钥对所述失效的交易信息进行签名得到的签名信息。验证模块22还用于:根据所述第二公钥对所述第四签名信息进行验证;删除模块24还用于:当所述验证模块根据所述第二公钥对所述第四签名信息验证通过时,删除区块链账本中所述失效的交易信息。
另外,存储模块23存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系之前,所述第一私钥在所述用户节点处于在线状态,所述第二私钥在所述用户节点处于离线状态。
此外,存储模块23存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系之前,所述第二私钥在所述用户节点处于在线状态,所述第三私钥在所述用户节点处于离线状态。
本发明实施例提供的区块链密钥保护装置可以具体用于执行上述图1所提供的方法实施例,具体功能此处不再赘述。
本发明实施例通过用户节点采用两套公私钥对,用户节点在区块链网络中的正常交易采用其中的一套公私钥对,当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,启用另一套公私钥对,使得黑客即使盗取了用户节点的一个私钥,一旦黑客冒充用户身份进行非法的操作就会被用户节点发现,并用新的私钥代替旧的私钥,使得黑客无法获取到用户有效的私钥,无法冒充用户的身份进行任何操作,提高了区块链网络的安全性。
综上所述,本发明实施例通过用户节点采用两套公私钥对,用户节点在区块链网络中的正常交易采用其中的一套公私钥对,当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,启用另一套公私钥对,使得黑客即使盗取了用户节点的一个私钥,一旦黑客冒充用户身份进行非法的操作就会被用户节点发现,并用新的私钥代替旧的私钥,使得黑客无法获取到用户有效的私钥,无法冒充用户的身份进行任何操作,提高了区块链网络的安全性。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种区块链密钥保护方法,其特征在于,包括:
接收区块链网络中的用户节点发送的用户名、第一公钥、第二公钥以及第一签名信息,所述第一签名信息是所述用户节点通过第一私钥对用户名、第一公钥、第二公钥进行签名得到的签名信息,所述第一公钥和所述第一私钥对应;
根据所述第一公钥对所述第一签名信息进行验证,若验证通过,则存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系;
当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,接收所述用户节点发送的所述用户名、第一指示信息和第二签名信息,其中,所述第一指示信息用于指示所述第一公钥失效,所述第二签名信息是所述用户节点通过第二私钥对所述用户名和所述第一指示信息进行签名得到的签名信息,所述第二公钥和所述第二私钥对应;
根据所述第二公钥对所述第二签名信息进行验证,若验证通过,则删除所述第一对应关系中的所述第一公钥;
接收所述用户节点发送的所述用户名、第二公钥、第三公钥以及第三签名信息,所述第三签名信息是所述用户节点通过第二私钥对所述用户名、所述第二公钥、所述第三公钥进行签名得到的签名信息;
根据所述第二公钥对所述第三签名信息进行验证,若验证通过,则存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系。
2.根据权利要求1所述的方法,其特征在于,所述接收所述用户节点发送的所述用户名、第一指示信息和第二签名信息之后,还包括:
接收所述用户节点发送的失效的交易信息,以及第四签名信息,所述第四签名信息是所述用户节点通过所述第二私钥对所述失效的交易信息进行签名得到的签名信息。
3.根据权利要求2所述的方法,其特征在于,所述接收所述用户节点发送的失效的交易信息,以及第四签名信息之后,还包括:
根据所述第二公钥对所述第四签名信息进行验证,若验证通过,则删除区块链账本中所述失效的交易信息。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系之前,所述第一私钥在所述用户节点处于在线状态,所述第二私钥在所述用户节点处于离线状态。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系之前,所述第二私钥在所述用户节点处于在线状态,第三私钥在所述用户节点处于离线状态。
6.一种区块链密钥保护装置,其特征在于,包括:
接收模块,用于接收区块链网络中的用户节点发送的用户名、第一公钥、第二公钥以及第一签名信息,所述第一签名信息是所述用户节点通过第一私钥对用户名、第一公钥、第二公钥进行签名得到的签名信息,所述第一公钥和所述第一私钥对应;
验证模块,用于根据所述第一公钥对所述第一签名信息进行验证;
存储模块,用于当验证模块根据所述第一公钥对所述第一签名信息验证通过时,存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系;
所述接收模块还用于:当所述用户节点检测到所述区块链网络中未被写入区块且与所述用户节点关联的交易信息非法时,接收所述用户节点发送的所述用户名、第一指示信息和第二签名信息,其中,所述第一指示信息用于指示所述第一公钥失效,所述第二签名信息是所述用户节点通过第二私钥对所述用户名和所述第一指示信息进行签名得到的签名信息,所述第二公钥和所述第二私钥对应;
所述验证模块还用于:根据所述第二公钥对所述第二签名信息进行验证;
删除模块,用于当所述验证模块根据所述第二公钥对所述第二签名信息验证通过时,删除所述第一对应关系中的所述第一公钥;
所述接收模块还用于:接收所述用户节点发送的所述用户名、第二公钥、第三公钥以及第三签名信息,所述第三签名信息是所述用户节点通过第二私钥对所述用户名、所述第二公钥、所述第三公钥进行签名得到的签名信息;
所述验证模块还用于:根据所述第二公钥对所述第三签名信息进行验证;
所述存储模块还用于:当所述验证模块根据所述第二公钥对所述第三签名信息验证通过时,存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系。
7.根据权利要求6所述的区块链密钥保护装置,其特征在于,所述接收模块还用于:接收所述用户节点发送的失效的交易信息,以及第四签名信息,所述第四签名信息是所述用户节点通过所述第二私钥对所述失效的交易信息进行签名得到的签名信息。
8.根据权利要求7所述的区块链密钥保护装置,其特征在于,所述验证模块还用于:根据所述第二公钥对所述第四签名信息进行验证;
所述删除模块还用于:当所述验证模块根据所述第二公钥对所述第四签名信息验证通过时,删除区块链账本中所述失效的交易信息。
9.根据权利要求6-8任一项所述的区块链密钥保护装置,其特征在于,所述存储模块存储所述用户名、所述第一公钥和所述第二公钥的第一对应关系之前,所述第一私钥在所述用户节点处于在线状态,所述第二私钥在所述用户节点处于离线状态。
10.根据权利要求6-8任一项所述的区块链密钥保护装置,其特征在于,所述存储模块存储所述用户名、所述第二公钥和所述第三公钥的第二对应关系之前,所述第二私钥在所述用户节点处于在线状态,第三私钥在所述用户节点处于离线状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710698910.5A CN107508681A (zh) | 2017-08-15 | 2017-08-15 | 区块链密钥保护方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710698910.5A CN107508681A (zh) | 2017-08-15 | 2017-08-15 | 区块链密钥保护方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107508681A true CN107508681A (zh) | 2017-12-22 |
Family
ID=60691093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710698910.5A Pending CN107508681A (zh) | 2017-08-15 | 2017-08-15 | 区块链密钥保护方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107508681A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108123801A (zh) * | 2017-12-29 | 2018-06-05 | 重庆小犀智能科技有限公司 | 一种区块链钱包使用音频加密私钥系统以及方法 |
CN108681965A (zh) * | 2018-04-24 | 2018-10-19 | 全链通有限公司 | 离线节点的区块链网络交易处理方法和接收方节点 |
CN108830577A (zh) * | 2018-06-07 | 2018-11-16 | 北京连琪科技有限公司 | 区块链的账户建立及恢复方法 |
CN109962890A (zh) * | 2017-12-25 | 2019-07-02 | 中国科学院信息工程研究所 | 一种区块链的认证服务装置及节点准入、用户认证方法 |
CN110022316A (zh) * | 2019-03-29 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 创建区块链账户及重置账户密钥的方法和装置 |
CN110647759A (zh) * | 2019-08-23 | 2020-01-03 | 致信互链(北京)科技有限公司 | 数据记录方法、节点、设备、存储介质及区块链系统 |
CN111292082A (zh) * | 2020-01-13 | 2020-06-16 | 支付宝(杭州)信息技术有限公司 | 一种块链式账本中的公钥管理方法、装置及设备 |
CN112913185A (zh) * | 2018-07-27 | 2021-06-04 | 朴琪业 | 在区块链网络上构建基于组密钥的双重签名交易结构的节点组管理装置以及计算装置 |
CN114221764A (zh) * | 2021-12-17 | 2022-03-22 | 建信金融科技有限责任公司 | 基于区块链的公钥更新方法、装置和设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1736055A (zh) * | 2003-01-07 | 2006-02-15 | 高通股份有限公司 | 替换密钥的系统、设备和方法 |
US20060129847A1 (en) * | 2002-09-17 | 2006-06-15 | Errikos Pitsos | Methods and systems for providing a secure data distribution via public networks |
CN101322349A (zh) * | 2005-12-12 | 2008-12-10 | 高通股份有限公司 | 用于替换加密密钥的认证与分割系统和方法 |
CN104009837A (zh) * | 2014-04-28 | 2014-08-27 | 小米科技有限责任公司 | 密钥更新方法、装置及终端 |
-
2017
- 2017-08-15 CN CN201710698910.5A patent/CN107508681A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060129847A1 (en) * | 2002-09-17 | 2006-06-15 | Errikos Pitsos | Methods and systems for providing a secure data distribution via public networks |
CN1736055A (zh) * | 2003-01-07 | 2006-02-15 | 高通股份有限公司 | 替换密钥的系统、设备和方法 |
CN101322349A (zh) * | 2005-12-12 | 2008-12-10 | 高通股份有限公司 | 用于替换加密密钥的认证与分割系统和方法 |
CN104009837A (zh) * | 2014-04-28 | 2014-08-27 | 小米科技有限责任公司 | 密钥更新方法、装置及终端 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109962890B (zh) * | 2017-12-25 | 2020-07-03 | 中国科学院信息工程研究所 | 一种区块链的认证服务装置及节点准入、用户认证方法 |
CN109962890A (zh) * | 2017-12-25 | 2019-07-02 | 中国科学院信息工程研究所 | 一种区块链的认证服务装置及节点准入、用户认证方法 |
CN108123801A (zh) * | 2017-12-29 | 2018-06-05 | 重庆小犀智能科技有限公司 | 一种区块链钱包使用音频加密私钥系统以及方法 |
CN108681965A (zh) * | 2018-04-24 | 2018-10-19 | 全链通有限公司 | 离线节点的区块链网络交易处理方法和接收方节点 |
CN108681965B (zh) * | 2018-04-24 | 2021-01-29 | 全链通有限公司 | 离线节点的区块链网络交易处理方法和装置 |
CN108830577A (zh) * | 2018-06-07 | 2018-11-16 | 北京连琪科技有限公司 | 区块链的账户建立及恢复方法 |
CN112913185A (zh) * | 2018-07-27 | 2021-06-04 | 朴琪业 | 在区块链网络上构建基于组密钥的双重签名交易结构的节点组管理装置以及计算装置 |
CN110022316A (zh) * | 2019-03-29 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 创建区块链账户及重置账户密钥的方法和装置 |
CN110647759A (zh) * | 2019-08-23 | 2020-01-03 | 致信互链(北京)科技有限公司 | 数据记录方法、节点、设备、存储介质及区块链系统 |
CN110647759B (zh) * | 2019-08-23 | 2021-11-23 | 致信互链(北京)科技有限公司 | 数据记录方法、节点、设备、存储介质及区块链系统 |
CN111292082A (zh) * | 2020-01-13 | 2020-06-16 | 支付宝(杭州)信息技术有限公司 | 一种块链式账本中的公钥管理方法、装置及设备 |
CN111292082B (zh) * | 2020-01-13 | 2022-12-20 | 蚂蚁区块链科技(上海)有限公司 | 一种块链式账本中的公钥管理方法、装置及设备 |
CN114221764A (zh) * | 2021-12-17 | 2022-03-22 | 建信金融科技有限责任公司 | 基于区块链的公钥更新方法、装置和设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107508681A (zh) | 区块链密钥保护方法及装置 | |
CN107844976B (zh) | 一种基于区块链的存证应用交易系统及方法 | |
CN107396360A (zh) | 区块验证方法及装置 | |
CN107231239B (zh) | 创世区块防伪方法及装置 | |
CN103281340B (zh) | 二维码验证方法、系统、客户端、发布及云端服务器 | |
CN104767613B (zh) | 签名验证方法、装置及系统 | |
CN106506146A (zh) | 基于区块链技术的交易信息校验方法、装置及系统 | |
CN109257342A (zh) | 区块链跨链的认证方法、系统、服务器及可读存储介质 | |
CN107480990A (zh) | 区块链记账方法及装置 | |
CN107171794A (zh) | 一种基于区块链和智能合约的电子文书签署方法 | |
CN107493162A (zh) | 区块链节点的实现方法及装置 | |
CN106453636A (zh) | 可信区块生成方法及系统 | |
CN106533696A (zh) | 基于区块链的身份认证方法、认证服务器及用户终端 | |
CN105262748B (zh) | 广域网中对用户终端进行身份认证的方法和系统 | |
CN108737442A (zh) | 一种加密校验处理方法 | |
CN107171810A (zh) | 区块链的验证方法及装置 | |
CN106487801A (zh) | 基于区块链的信息验证方法及装置 | |
CN110096903B (zh) | 基于区块链的资产验证方法及区块链网络系统 | |
CN112508566A (zh) | 基于联盟链的跨链隐私交易方法及设备 | |
CN106302544A (zh) | 一种安全验证方法和系统 | |
CN108494557A (zh) | 社保数字证书管理方法、计算机可读存储介质及终端设备 | |
CN107359990A (zh) | 一种秘密信息处理方法、装置及系统 | |
CN108023873A (zh) | 信道建立方法及终端设备 | |
CN111815321A (zh) | 交易提案的处理方法、装置、系统、存储介质和电子装置 | |
CN107370599A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171222 |