CN109886662A - 区块链钱包应用方法及系统、终端和计算机可读存储介质 - Google Patents
区块链钱包应用方法及系统、终端和计算机可读存储介质 Download PDFInfo
- Publication number
- CN109886662A CN109886662A CN201910123263.4A CN201910123263A CN109886662A CN 109886662 A CN109886662 A CN 109886662A CN 201910123263 A CN201910123263 A CN 201910123263A CN 109886662 A CN109886662 A CN 109886662A
- Authority
- CN
- China
- Prior art keywords
- private key
- operating system
- block chain
- chain wallet
- operation requests
- 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/3236—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 cryptographic hash functions
- H04L9/3239—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 cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- 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/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic 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/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/3226—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 predetermined code, e.g. password, passphrase or PIN
-
- 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/3226—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 predetermined code, e.g. password, passphrase or PIN
- H04L9/3231—Biological data, e.g. fingerprint, voice or retina
-
- 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
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明提出了一种区块链钱包应用方法及系统、终端和计算机可读存储介质,其中,该方法包括:在当前操作系统为普通操作系统的情况下,获取对区块链钱包的操作请求;将操作请求发送至安全操作系统,并将当前操作系统切换为安全操作系统;在安全操作系统中,对操作请求对应的区块链钱包的私钥加密信息进行解密,得到区块链钱包的私钥;根据私钥和签名函数,对区块链钱包进行签名;将签名结果发送至普通操作系统;在普通操作系统中,根据签名结果,执行操作请求对应的功能。通过本发明的技术方案,能够在有效保护私钥的基础上提升区块链钱包使用的便利性,既增加了区块链钱包应用的安全性,也增加了区块链钱包应用的便捷性。
Description
【技术领域】
本发明涉及区块链技术领域,尤其涉及一种区块链钱包应用方法及系统、终端和计算机可读存储介质。
【背景技术】
当前的区块链钱包,分为热钱包和冷钱包,其中,冷钱包为不连网的钱包,也叫离线钱包,热钱包就是保持联网上线的钱包,也就是在线钱包。
热钱包一般安装在可联网的手机或者电脑上,通过私钥密码来加密区块链钱包的私钥,每次使用的时候,由用户输入私钥解密后使用私钥,但是这个私钥会存放在手机或者电脑的内存里,由于热钱包需要保持联网上线,其面对的网络危险因素很多,一旦手机或者电脑的系统处于不安全状态,私钥就存在极大的被泄露可能性。
冷钱包则安装在网络不能访问到设备里面,比如不联网的电脑、手机等。当需要进行区块链交易时,由冷钱包计算出交易请求的数据内容并导出为文件形式,然后通过U盘等物理设备复制的方式把交易请求的数据内容复制到联网的热钱包上再继续运行,这种方式虽然可以在一定程度上保护私钥的安全性,但操作复杂费时,效率低下,为区块链钱包的使用带来了诸多不便。
因此,如何在有效保护私钥的基础上提升区块链钱包使用的便利性,成为目前亟待解决的技术问题。
【发明内容】
本发明实施例提供了一种区块链钱包应用方法及系统、终端和计算机可读存储介质,旨在解决相关技术中保护区块链钱包的私钥安全性与区块链钱包的使用便利性不可兼得的技术问题,能够在有效保护私钥的基础上提升区块链钱包使用的便利性,提升用户体验。
第一方面,本发明实施例提供了一种区块链钱包应用方法,包括:在当前操作系统为普通操作系统的情况下,获取对区块链钱包的操作请求;将所述操作请求发送至安全操作系统,并将所述当前操作系统切换为所述安全操作系统;在所述安全操作系统中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密,得到所述区块链钱包的私钥;根据所述私钥和签名函数,对所述区块链钱包进行签名;将签名结果发送至所述普通操作系统;在所述普通操作系统中,根据所述签名结果,执行所述操作请求对应的功能。
在本发明上述实施例中,可选地,所述将所述操作请求发送至安全操作系统的步骤,包括:将所述操作请求发送至所述安全操作系统中的安全应用;所述在所述安全操作系统中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密的步骤,包括:在所述安全操作系统的所述安全应用中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密。
在本发明上述实施例中,可选地,所述在所述安全操作系统中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密的步骤,包括:在所述安全操作系统中,获取实时录入的私钥密码;验证所述实时录入的私钥密码是否与预设私钥密码一致;当验证结果为所述实时录入的私钥密码与所述预设私钥密码一致的情况下,通过所述实时录入的私钥密码对所述私钥加密信息进行解密,得到所述私钥。
在本发明上述实施例中,可选地,还包括:在验证结果为所述实时录入的私钥密码与所述预设私钥密码不一致的情况下,向所述普通操作系统发送验证失败信息。
在本发明上述实施例中,可选地,还包括:把以得到所述私钥的时刻为起点的预定时长设置为所述私钥的有效时长。
在本发明上述实施例中,可选地,还包括:通过所述实时录入的私钥密码对生物特征加密信息进行解密,得到预定生物特征信息;以及把所述预定时长设置为所述预定生物特征信息的有效时长;则所述区块链钱包应用方法还包括:在所述预定时长内,在安全操作系统中获取实时生物特征信息;判断所述实时生物特征信息与所述预定生物特征信息是否匹配;当判断所述实时生物特征信息与所述预定生物特征信息匹配时,将所述私钥的剩余有效时长延长为所述预定时长;当判断所述实时生物特征信息与所述预定生物特征信息不匹配时,将所述私钥的剩余有效时长设置为零。
在本发明上述实施例中,可选地,在所述获取对区块链钱包的操作请求的步骤之前,还包括:在所述普通操作系统中,获取所述私钥加密信息;将所述私钥加密信息发送至所述安全操作系统;在所述安全操作系统中将所述私钥加密信息存储至预定物理存储位置。
在本发明上述实施例中,可选地,还包括:在所述普通操作系统中,获取加密信息导出请求;将所述加密信息导出请求发送至所述安全操作系统;在所述安全操作系统中的所述预定物理存储位置获取所述私钥加密信息;将所述私钥加密信息发送至所述普通操作系统。
第二方面,本发明实施例提供了一种区块链钱包应用系统,包括普通操作系统和安全操作系统,所述普通操作系统包括操作请求获取单元、操作请求发送单元、系统切换单元和钱包功能执行单元,所述安全操作系统包括解密单元、签名单元和签名结果发送单元,其中,所述操作请求获取单元用于在当前操作系统为普通操作系统的情况下,获取对区块链钱包的操作请求;所述操作请求发送单元用于将所述操作请求发送至安全操作系统;所述系统切换单元用于将所述当前操作系统切换为所述安全操作系统;所述解密单元用于在所述安全操作系统中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密,得到所述区块链钱包的私钥;所述签名单元用于根据所述私钥和签名函数,对所述区块链钱包进行签名;所述签名结果发送单元用于将签名结果发送至所述普通操作系统;所述钱包功能执行单元用于在所述普通操作系统中,根据所述签名结果,执行所述操作请求对应的功能。
在本发明上述实施例中,可选地,所述操作请求发送单元用于:将所述操作请求发送至所述安全操作系统中的安全应用;所述解密单元用于:在所述安全操作系统的所述安全应用中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密。
在本发明上述实施例中,可选地,所述解密单元包括:私钥密码获取单元,用于在所述安全操作系统中,获取实时录入的私钥密码;验证单元,用于验证所述实时录入的私钥密码是否与预设私钥密码一致;第一执行单元,用于当验证结果为所述实时录入的私钥密码与所述预设私钥密码一致的情况下,通过所述实时录入的私钥密码对所述私钥加密信息进行解密,得到所述私钥。
在本发明上述实施例中,可选地,所述解密单元还包括:第二执行单元,用于在验证结果为所述实时录入的私钥密码与所述预设私钥密码不一致的情况下,向所述普通操作系统发送验证失败信息。
在本发明上述实施例中,可选地,所述安全操作系统还包括:第一设置单元,用于把以得到所述私钥的时刻为起点的预定时长设置为所述私钥的有效时长。
在本发明上述实施例中,可选地,所述安全操作系统还包括:生物特征解密单元,用于通过所述实时录入的私钥密码对生物特征加密信息进行解密,得到预定生物特征信息;第二设置单元,用于把所述预定时长设置为所述预定生物特征信息的有效时长;生物特征获取单元,用于在所述预定时长内,在安全操作系统中获取实时生物特征信息;判断单元,用于判断所述实时生物特征信息与所述预定生物特征信息是否匹配;第三执行单元,用于当判断所述实时生物特征信息与所述预定生物特征信息匹配时,将所述私钥的剩余有效时长延长为所述预定时长;第四执行单元,用于当判断所述实时生物特征信息与所述预定生物特征信息不匹配时,将所述私钥的剩余有效时长设置为零。
在本发明上述实施例中,可选地,所述普通操作系统还包括:私钥加密信息导入单元,用于在所述操作请求获取单元获取所述操作请求之前,在所述普通操作系统中,获取所述私钥加密信息,并将所述私钥加密信息发送至所述安全操作系统;所述安全操作系统还包括:私钥加密信息存储单元,在所述安全操作系统中将所述私钥加密信息存储至预定物理存储位置。
在本发明上述实施例中,可选地,所述普通操作系统还包括:私钥加密信息导出请求单元,用于在所述普通操作系统中,获取加密信息导出请求,并将所述加密信息导出请求发送至所述安全操作系统;所述安全操作系统还包括:私钥加密信息导出单元,用于在所述安全操作系统中的所述预定物理存储位置获取所述私钥加密信息,并将所述私钥加密信息发送至所述普通操作系统。
第三方面,本发明实施例提供了一种终端,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述第一方面实施例中任一项所述的方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行第一方面实施例中任一项所述的方法流程。
以上技术方案,针对相关技术中保护区块链钱包的私钥安全性与区块链钱包的使用便利性不可兼得的技术问题,应用了双系统的方式,通过双系统中的不联网的安全操作系统存储区块链钱包的私钥,通过双系统中的普通操作系统联网,由于安全操作系统与普通操作系统之间为物理隔离,则通过联网的普通操作系统无法直接盗取安全操作系统中的区块链钱包私钥,从而可有效保护区块链钱包的私钥的安全性,同时,由于普通操作系统联网,安全操作系统通过区块链钱包的私钥完成签名后,可将签名结果发送至普通操作系统,由普通操作系统根据签名结果完成区块链钱包收到的操作请求,无需用户通过U盘等物理设备手动转存签名结果,增加了区块链钱包使用的便利性,提升了用户体验。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出了本发明的一个实施例的区块链钱包应用方法的流程图;
图2示出了本发明的另一个实施例的区块链钱包应用方法的流程图;
图3示出了本发明的一个实施例的区块链钱包的私钥导入方法的流程图;
图4示出了本发明的一个实施例的区块链钱包的私钥导出方法的流程图;
图5示出了本发明的一个实施例的区块链钱包的私钥解密方法的流程图;
图6示出了本发明的一个实施例的区块链钱包应用系统的框图;
图7示出了本发明的一个实施例的终端的框图。
【具体实施方式】
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
图1示出了本发明的一个实施例的区块链钱包应用方法的流程图。
如图1所示,本发明实施例提供了一种区块链钱包应用方法,包括:
步骤102,在当前操作系统为普通操作系统的情况下,获取对区块链钱包的操作请求。
步骤104,将所述操作请求发送至安全操作系统,并将所述当前操作系统切换为所述安全操作系统。
具有安全操作系统和普通操作系统的终端一般被成为双系统终端,这种双系统终端建立在TrustZone的技术之上,TrustZone是一种硬件安全隔离技术,它将手机隔离成两个世界:可信世界和不可信世界,分别对应安全操作系统和普通操作系统,两个世界通过双系统切换和通信,TrustZone可等价指代安全操作系统对应的可信世界。
以Android(安卓)为例,应用程序、Android系统、以及底层的Linux内核都运行在不可信世界里,而诸如数字版权保护和一些登录、支付协议的加解密过程和数据则存在于可信世界里。可信世界里的应用程序可以自由访问不可信世界里的内容,但不可信世界里的应用程序禁止访问可信世界里的内容。在此基础上,通过可信世界对应的安全操作系统对区块链钱包的私钥进行下述的存储、解密、签名等操作,可避免区块链钱包的私钥被不可信世界和其对应的普通操作系统泄露,有助于保护区块链钱包的私钥的安全性。
步骤106,在所述安全操作系统中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密,得到所述区块链钱包的私钥。
步骤108,根据所述私钥和签名函数,对所述区块链钱包进行签名。
步骤110,将签名结果发送至所述普通操作系统。
步骤112,在所述普通操作系统中,根据所述签名结果,执行所述操作请求对应的功能。
以上技术方案,针对相关技术中保护区块链钱包的私钥安全性与区块链钱包的使用便利性不可兼得的技术问题,应用了双系统的方式,通过双系统中的不联网的安全操作系统存储区块链钱包的私钥,通过双系统中的普通操作系统联网,由于安全操作系统与普通操作系统之间为物理隔离,则通过联网的普通操作系统无法直接盗取安全操作系统中存储的区块链钱包私钥,区块链钱包私钥的存储位置安全且不可被普通操作系统访问,从而可有效保护区块链钱包的私钥的安全性,同时,由于普通操作系统联网,安全操作系统通过区块链钱包的私钥完成签名后,可将签名结果发送至普通操作系统,由普通操作系统根据签名结果完成区块链钱包收到的操作请求,无需用户通过U盘等物理设备手动转存签名结果,增加了区块链钱包使用的便利性,提升了用户体验。
在本发明的一种实现方式中,步骤104包括:将所述操作请求发送至所述安全操作系统中的安全应用,以及,步骤106包括:在所述安全操作系统的所述安全应用中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密。
由此,可设置安全操作系统中部分应用或全部应用为有资格处理区块链钱包的私钥相关功能的安全应用,故可直接将操作请求发送至安全应用,以供在安全应用中对操作请求进行处理。其中,该操作请求中包括区块链请求参数和签名请求,区块链请求参数可指示有请求的功能、对应的安全应用等,签名请求则指示了请求调用的签名函数等。
在本发明的一种实现方式中,步骤106包括:在所述安全操作系统中,获取实时录入的私钥密码;验证所述实时录入的私钥密码是否与预设私钥密码一致;当验证结果为所述实时录入的私钥密码与所述预设私钥密码一致的情况下,通过所述实时录入的私钥密码对所述私钥加密信息进行解密,得到所述私钥。
具体来说,将操作请求发送至安全操作系统后,可将当前操作系统切换为安全操作系统,在安全操作系统中,可提示用户输入私钥密码,进而获取实时录入的私钥密码,接着,需要验证实时录入的该私钥密码的有效性,具体可将该私钥密码与预设私钥密码进行比对,只有在两者完全一致的情况下,才认定实时录入的私钥密码有效,进而通过实时录入的私钥密码解密私钥加密信息,得到区块链钱包的私钥。通过该技术方案,能够准确验证私钥密码的有效性,进一步提升了区块链钱包的私钥在安全操作系统中的安全性。
在本发明的一种实现方式中,还包括:在验证结果为所述实时录入的私钥密码与所述预设私钥密码不一致的情况下,向所述普通操作系统发送验证失败信息。也就是说,在验证实时录入的私钥密码无效时,禁止解密私钥加密信息,即禁止获取私钥,可有效保护私钥的安全性。
在本发明的一种实现方式中,还包括:把以得到所述私钥的时刻为起点的预定时长设置为所述私钥的有效时长。通过该技术方案可知,解密后得到的私钥是有有效期的,其中,有效时长指的是私钥可以被使用且状态被认定为安全的最长时长,在超过有效时长后,可删除解密得到的私钥,使私钥不再能够被使用,从而避免私钥因在安全操作系统中公开太久而有可能泄露的问题,进一步提升了区块链钱包的私钥安全性。
在本发明的一种实现方式中,还包括:通过所述实时录入的私钥密码对生物特征加密信息进行解密,得到预定生物特征信息;以及把所述预定时长设置为所述预定生物特征信息的有效时长;则所述区块链钱包应用方法还包括:在所述预定时长内,在安全操作系统中获取实时生物特征信息;判断所述实时生物特征信息与所述预定生物特征信息是否匹配;当判断所述实时生物特征信息与所述预定生物特征信息匹配时,将所述私钥的剩余有效时长延长为所述预定时长;当判断所述实时生物特征信息与所述预定生物特征信息不匹配时,将所述私钥的剩余有效时长设置为零。
在上述技术方案中,实时录入的私钥密码在解密得到私钥的同时,还可以解密生物特征加密信息,得到预定生物特征信息。这样,用户在通过私钥密码解密得到私钥后的预定时长内,可通过录入预定生物特征信息来延长私钥的有效期。换句话说,在用户有延长私钥的使用时长的需求时,反复输入私钥以获取预定时长的操作非常不便,因此,在预定时长内,可通过简单录入预定生物特征信息的方式,验证用户的身份,在验证通过后,即可将私钥的剩余有效时长重新延长为预定时长。其中,预定生物特征信息包括但不限于指纹信息、掌纹信息、声音信息和虹膜信息等,预定生物特征信息的录入比私钥密码的录入要简单便捷得多。
通过该技术方案,在用户有延长私钥的使用时长的需求时,提供了更加便利的延长私钥有效期的操作方式,避免用户多次重复输入私钥密码,简化了用户的操作步骤,提升了用户体验。
图2示出了本发明的另一个实施例的区块链钱包应用方法的流程图。
如图2所示,本发明的另一个实施例的区块链钱包应用方法包括:
步骤202,在普通操作系统中,用户使用钱包的区块链功能。
步骤204,钱包计算区块链请求参数。
步骤206,切换到Trusted App模式,并把区块链请求参数和签名要求传递给Trusted App。
Trusted App即安全操作系统中的安全应用,区块链请求参数可指示有请求的功能、对应的安全应用等,签名请求则指示了请求调用的签名函数等。
步骤208,Trusted App接收参数和签名要求。
步骤210,Trusted App打开生物特征传感器,进行身份识别和确认,在身份识别成功的情况下,进入步骤216,在身份识别失败的情况下,进入步骤212。
此处的身份识别和确认指的是password(相当于图1实施例所述的私钥密码)和生物特征信息的双重确认。使用TrustZone技术把私钥、生物特征信息和区块链钱包进行了物理隔离,从而保证了区块链上的数字资产的安全性。
步骤212,返还错误信息。
步骤214,钱包提示用户生物识别失败。在此情况下,禁止继续使用私钥,以保护私钥的安全性。
步骤216,更新Timer,设置now+T时刻调用Security Service(安全操作系统提供的安全服务)清除私钥和生物特征内存(T为解锁有效期),在成功更新Timer的情况下,进入步骤222,在Timer更新失败的情况下,进入步骤218。
Timer相当于图1实施例中所述的预定时长,即私钥的有效期,now+T指的是以当前时刻为起点的预定时长。在Timer内私钥为可用状态,而在Timer内通过有效的生物特征信息验证可将私钥的有效期延长为以当前时刻为起点的预定时长。
步骤218,返还错误信息。
步骤220,钱包提示用户解锁时间已过,要求重新输入password。在Timer更新失败的情况下,说明私钥的有效期未成功延长,在Timer结束后,需要重新录入password以再次解密私钥。
步骤222,Trusted App通过Security Service服务来调用Security Key Store(安全密钥存储器)的签名函数,在签名成功的情况下,进入步骤228,在签名失败的情况下,进入步骤224。
步骤224,返还错误信息。
步骤226,钱包提示用户签名失败。
步骤228,返回签名结果。
步骤230,钱包获取签名结果。
步骤232,钱包通过网络发起并完成区块链操作请求。
通过本发明的技术方案,能够在有效保护私钥的基础上提升区块链钱包使用的便利性,既增加了区块链钱包应用的安全性,也增加了区块链钱包应用的便捷性。
图3示出了本发明的一个实施例的区块链钱包的私钥导入方法的流程图。
如图3所示,本发明的一个实施例的区块链钱包的私钥导入方法,包括:
步骤302,在所述普通操作系统中,获取所述私钥加密信息。
步骤304,将所述私钥加密信息发送至所述安全操作系统。
步骤306,在所述安全操作系统中将所述私钥加密信息存储至预定物理存储位置。
在该技术方案中,普通操作系统并不会直接接触区块链钱包的私钥,而是仅接触私钥加密信息,并直接将私钥加密信息发送至安全操作系统中,故普通操作系统无法对私钥进行读取和泄露,保证了私钥的安全性,即私钥是通过私钥密码加密后保存在安全操作系统中,以保证将私钥导入终端的过程中数据的安全性。
图4示出了本发明的一个实施例的区块链钱包的私钥导出方法的流程图。
如图4所示,本发明的一个实施例的区块链钱包的私钥导出方法包括:
步骤402,在所述普通操作系统中,获取加密信息导出请求。
步骤404,将所述加密信息导出请求发送至所述安全操作系统。
步骤406,在所述安全操作系统中的所述预定物理存储位置获取所述私钥加密信息。
步骤408,将所述私钥加密信息发送至所述普通操作系统。
同样,在将私钥导出安全操作系统的过程中,也只能导出对私钥加密后的私钥加密信息,使得普通操作系统无法直接获取私钥,保证了私钥的安全性。另外,由于私钥加密信息在安全操作系统中存储在预定物理存储位置,该预定物理存储位置与普通操作系统是物理隔离的,普通操作系统无法访问该预定物理存储位置,因此,进一步保证了私钥的安全性。
图5示出了本发明的一个实施例的区块链钱包的私钥解密方法的流程图。
如图5所示,本发明的一个实施例的区块链钱包的私钥解密方法包括:
步骤502,在普通操作系统中,提示输入私钥密码。
步骤504,通过安全操作系统中的安全应用获取实时输入的私钥密码。
由此,私钥密码直接由安全操作系统中的安全应用获取,而不经过普通操作系统,以避免私钥密码在普通操作系统中被泄露。
步骤506,安全应用从存储芯片中读取私钥和生物特征信息对应的加密内容。
步骤508,安全应用根据私钥密码对加密内容进行解密,得到私钥和生物特征信息。
步骤510,安全应用将私钥和生物特征信息存储在安全操作系统的内存中。
解密后的私钥和生物特征信息存储在安全操作系统的内存中,安全操作系统的内存与普通操作系统之间为物理隔离,普通操作系统无法访问安全操作系统的内存,从而保证了安全操作系统的内存中的私钥和生物特征信息的安全性。
步骤512,安全应用为私钥和生物特征信息设置有效时长,并在超出有效时长后清除安全操作系统的内存中的私钥和生物特征信息。
综上,通过本发明的技术方案,私钥密码、生物特征信息的输入和确认,都限制在安全操作系统中完成,区块链钱包私钥是由私钥密码加密后再存储在手机的物理芯片上,具体地,由安全操作系统中的安全密钥存储器通过私钥密码解密后保存在安全密钥存储器的物理内存中,保证区块链钱包私钥的相关信息不能被普通操作系统读取,从而保证区块链钱包私钥的安全性。
同时,钱包在区块链上的各种操作所需要的参数签名,由安全操作系统完成,然后再返回参数签名结果给普通操作系统的钱包,让其通过网络接口完成相关操作,从而保证了私钥使用过程中的安全性。
图6示出了本发明的一个实施例的区块链钱包应用系统的框图。
如图6所示,本发明的一个实施例的区块链钱包应用系统600,包括:普通操作系统602和安全操作系统604,所述普通操作系统602包括操作请求获取单元6022、操作请求发送单元6024、系统切换单元6026和钱包功能执行单元6028,所述安全操作系统604包括解密单元6042、签名单元6044和签名结果发送单元6046,其中,所述操作请求获取单元6022用于在当前操作系统为普通操作系统602的情况下,获取对区块链钱包的操作请求;所述操作请求发送单元6024用于将所述操作请求发送至安全操作系统604;所述系统切换单元6026用于将所述当前操作系统切换为所述安全操作系统604;所述解密单元6042用于在所述安全操作系统604中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密,得到所述区块链钱包的私钥;所述签名单元6044用于根据所述私钥和签名函数,对所述区块链钱包进行签名;所述签名结果发送单元6046用于将签名结果发送至所述普通操作系统602;所述钱包功能执行单元6028用于在所述普通操作系统602中,根据所述签名结果,执行所述操作请求对应的功能。
在本发明上述实施例中,可选地,所述操作请求发送单元6024用于:将所述操作请求发送至所述安全操作系统604中的安全应用;所述解密单元6042用于:在所述安全操作系统604的所述安全应用中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密。
在本发明上述实施例中,可选地,所述解密单元6042包括:私钥密码获取单元,用于在所述安全操作系统604中,获取实时录入的私钥密码;验证单元,用于验证所述实时录入的私钥密码是否与预设私钥密码一致;第一执行单元,用于当验证结果为所述实时录入的私钥密码与所述预设私钥密码一致的情况下,通过所述实时录入的私钥密码对所述私钥加密信息进行解密,得到所述私钥。
在本发明上述实施例中,可选地,所述解密单元6042还包括:第二执行单元,用于在验证结果为所述实时录入的私钥密码与所述预设私钥密码不一致的情况下,向所述普通操作系统602发送验证失败信息。
在本发明上述实施例中,可选地,所述安全操作系统604还包括:第一设置单元,用于把以得到所述私钥的时刻为起点的预定时长设置为所述私钥的有效时长。
在本发明上述实施例中,可选地,所述安全操作系统604还包括:生物特征解密单元6042,用于通过所述实时录入的私钥密码对生物特征加密信息进行解密,得到预定生物特征信息;第二设置单元,用于把所述预定时长设置为所述预定生物特征信息的有效时长;生物特征获取单元,用于在所述预定时长内,在安全操作系统604中获取实时生物特征信息;判断单元,用于判断所述实时生物特征信息与所述预定生物特征信息是否匹配;第三执行单元,用于当判断所述实时生物特征信息与所述预定生物特征信息匹配时,将所述私钥的剩余有效时长延长为所述预定时长;第四执行单元,用于当判断所述实时生物特征信息与所述预定生物特征信息不匹配时,将所述私钥的剩余有效时长设置为零。
在本发明上述实施例中,可选地,所述普通操作系统602还包括:私钥加密信息导入单元,用于在所述操作请求获取单元6022获取所述操作请求之前,在所述普通操作系统602中,获取所述私钥加密信息,并将所述私钥加密信息发送至所述安全操作系统604;所述安全操作系统604还包括:私钥加密信息存储单元,在所述安全操作系统604中将所述私钥加密信息存储至预定物理存储位置。
在本发明上述实施例中,可选地,所述普通操作系统602还包括:私钥加密信息导出请求单元,用于在所述普通操作系统602中,获取加密信息导出请求,并将所述加密信息导出请求发送至所述安全操作系统604;所述安全操作系统604还包括:私钥加密信息导出单元,用于在所述安全操作系统604中的所述预定物理存储位置获取所述私钥加密信息,并将所述私钥加密信息发送至所述普通操作系统602。
图7示出了本发明的一个实施例的终端的框图。
如图7所示,本发明的一个实施例的终端700,包括至少一个存储器702;以及,与所述至少一个存储器702通信连接的处理器704;其中,所述存储器存储有可被所述至少一个处理器704执行的指令,所述指令被设置为用于执行上述图1至图5实施例中任一项所述的方案。因此,该终端700具有和图1至图5实施例中任一项相同的技术效果,在此不再赘述。
本发明实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行图1至图5实施例中任一项所述的方法流程。
以上结合附图详细说明了本发明的技术方案,通过本发明的技术方案,能够在有效保护私钥的基础上提升区块链钱包使用的便利性,既增加了区块链钱包应用的安全性,也增加了区块链钱包应用的便捷性。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
需要说明的是,本发明实施例中所涉及的终端可以包括但不限于个人计算机(PersonalComputer,PC)、个人数字助理(PersonalDigital Assistant,PDA)、无线手持设备、平板电脑(Tablet Computer)、手机、MP3播放器、MP4播放器等。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种区块链钱包应用方法,其特征在于,包括:
在当前操作系统为普通操作系统的情况下,获取对区块链钱包的操作请求;
将所述操作请求发送至安全操作系统,并将所述当前操作系统切换为所述安全操作系统;
在所述安全操作系统中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密,得到所述区块链钱包的私钥;
根据所述私钥和签名函数,对所述区块链钱包进行签名;
将签名结果发送至所述普通操作系统;
在所述普通操作系统中,根据所述签名结果,执行所述操作请求对应的功能。
2.根据权利要求1所述的区块链钱包应用方法,其特征在于,所述将所述操作请求发送至安全操作系统的步骤,包括:
将所述操作请求发送至所述安全操作系统中的安全应用;
所述在所述安全操作系统中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密的步骤,包括:
在所述安全操作系统的所述安全应用中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密。
3.根据权利要求1所述的区块链钱包应用方法,其特征在于,所述在所述安全操作系统中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密的步骤,包括:
在所述安全操作系统中,获取实时录入的私钥密码;
验证所述实时录入的私钥密码是否与预设私钥密码一致;
当验证结果为所述实时录入的私钥密码与所述预设私钥密码一致的情况下,通过所述实时录入的私钥密码对所述私钥加密信息进行解密,得到所述私钥。
4.根据权利要求3所述的区块链钱包应用方法,其特征在于,还包括:
在验证结果为所述实时录入的私钥密码与所述预设私钥密码不一致的情况下,向所述普通操作系统发送验证失败信息。
5.根据权利要求3所述的区块链钱包应用方法,其特征在于,还包括:
把以得到所述私钥的时刻为起点的预定时长设置为所述私钥的有效时长。
6.根据权利要求5所述的区块链钱包应用方法,其特征在于,还包括:
通过所述实时录入的私钥密码对生物特征加密信息进行解密,得到预定生物特征信息;以及
把所述预定时长设置为所述预定生物特征信息的有效时长;
则所述区块链钱包应用方法还包括:
在所述预定时长内,在安全操作系统中获取实时生物特征信息;
判断所述实时生物特征信息与所述预定生物特征信息是否匹配;
当判断所述实时生物特征信息与所述预定生物特征信息匹配时,将所述私钥的剩余有效时长延长为所述预定时长;
当判断所述实时生物特征信息与所述预定生物特征信息不匹配时,将所述私钥的剩余有效时长设置为零。
7.根据权利要求1至6中任一项所述的区块链钱包应用方法,其特征在于,在所述获取对区块链钱包的操作请求的步骤之前,还包括:
在所述普通操作系统中,获取所述私钥加密信息;
将所述私钥加密信息发送至所述安全操作系统;
在所述安全操作系统中将所述私钥加密信息存储至预定物理存储位置。
8.一种区块链钱包应用系统,其特征在于,包括普通操作系统和安全操作系统,所述普通操作系统包括操作请求获取单元、操作请求发送单元、系统切换单元和钱包功能执行单元,所述安全操作系统包括解密单元、签名单元和签名结果发送单元,其中,
所述操作请求获取单元用于在当前操作系统为普通操作系统的情况下,获取对区块链钱包的操作请求;
所述操作请求发送单元用于将所述操作请求发送至安全操作系统;
所述系统切换单元用于将所述当前操作系统切换为所述安全操作系统;
所述解密单元用于在所述安全操作系统中,对所述操作请求对应的所述区块链钱包的私钥加密信息进行解密,得到所述区块链钱包的私钥;
所述签名单元用于根据所述私钥和签名函数,对所述区块链钱包进行签名;
所述签名结果发送单元用于将签名结果发送至所述普通操作系统;
所述钱包功能执行单元用于在所述普通操作系统中,根据所述签名结果,执行所述操作请求对应的功能。
9.一种终端,其特征在于,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,存储有计算机可执行指令,所述计算机可执行指令用于执行如权利要求1至7中任一项所述的方法流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910123263.4A CN109886662A (zh) | 2019-02-18 | 2019-02-18 | 区块链钱包应用方法及系统、终端和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910123263.4A CN109886662A (zh) | 2019-02-18 | 2019-02-18 | 区块链钱包应用方法及系统、终端和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109886662A true CN109886662A (zh) | 2019-06-14 |
Family
ID=66928313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910123263.4A Pending CN109886662A (zh) | 2019-02-18 | 2019-02-18 | 区块链钱包应用方法及系统、终端和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109886662A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112200565A (zh) * | 2020-10-26 | 2021-01-08 | 成都商通时代数字科技有限公司 | usbKey在区块链数字酒证钱包中的应用方法及应用系统 |
EP3770790A1 (en) * | 2019-07-24 | 2021-01-27 | Samsung Electronics Co., Ltd. | Electronic device and method for protecting personal information using secure switch |
WO2021109655A1 (zh) * | 2019-12-03 | 2021-06-10 | 支付宝(杭州)信息技术有限公司 | 安全任务处理方法、装置、电子设备及存储介质 |
CN113469688A (zh) * | 2021-07-23 | 2021-10-01 | 厦门慢雾科技有限公司 | 一种针对私钥安全管理的主动风险识别模型 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295401A (zh) * | 2016-08-13 | 2017-01-04 | 深圳市樊溪电子有限公司 | 一种用于区块链的只读安全文件存储系统及其方法 |
CN108600182A (zh) * | 2018-03-29 | 2018-09-28 | 深圳前海微众银行股份有限公司 | 区块链密钥管理方法、系统及密钥管理设备、存储介质 |
CN109118186A (zh) * | 2018-08-21 | 2019-01-01 | 甲骨文科技时代(深圳)有限公司 | 一种基于硬件芯片的数字货币交易方法 |
WO2019020824A1 (en) * | 2017-07-27 | 2019-01-31 | Sofitto Nv | METHOD FOR AUTHENTICATING FINANCIAL TRANSACTION IN CRYPTOMONIA BASED ON BLOCK CHAIN, INTELLIGENT CHIP CARD, AND BLOCK CHAIN AUTHENTICATION INFRASTRUCTURE |
-
2019
- 2019-02-18 CN CN201910123263.4A patent/CN109886662A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295401A (zh) * | 2016-08-13 | 2017-01-04 | 深圳市樊溪电子有限公司 | 一种用于区块链的只读安全文件存储系统及其方法 |
WO2019020824A1 (en) * | 2017-07-27 | 2019-01-31 | Sofitto Nv | METHOD FOR AUTHENTICATING FINANCIAL TRANSACTION IN CRYPTOMONIA BASED ON BLOCK CHAIN, INTELLIGENT CHIP CARD, AND BLOCK CHAIN AUTHENTICATION INFRASTRUCTURE |
CN108600182A (zh) * | 2018-03-29 | 2018-09-28 | 深圳前海微众银行股份有限公司 | 区块链密钥管理方法、系统及密钥管理设备、存储介质 |
CN109118186A (zh) * | 2018-08-21 | 2019-01-01 | 甲骨文科技时代(深圳)有限公司 | 一种基于硬件芯片的数字货币交易方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3770790A1 (en) * | 2019-07-24 | 2021-01-27 | Samsung Electronics Co., Ltd. | Electronic device and method for protecting personal information using secure switch |
CN112287360A (zh) * | 2019-07-24 | 2021-01-29 | 三星电子株式会社 | 电子装置以及该电子装置的操作方法 |
US11366929B2 (en) | 2019-07-24 | 2022-06-21 | Samsung Electronics Co., Ltd. | Electronic device and method for protecting personal information using secure switch |
WO2021109655A1 (zh) * | 2019-12-03 | 2021-06-10 | 支付宝(杭州)信息技术有限公司 | 安全任务处理方法、装置、电子设备及存储介质 |
CN112200565A (zh) * | 2020-10-26 | 2021-01-08 | 成都商通时代数字科技有限公司 | usbKey在区块链数字酒证钱包中的应用方法及应用系统 |
CN113469688A (zh) * | 2021-07-23 | 2021-10-01 | 厦门慢雾科技有限公司 | 一种针对私钥安全管理的主动风险识别模型 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109886662A (zh) | 区块链钱包应用方法及系统、终端和计算机可读存储介质 | |
US6775776B1 (en) | Biometric-based authentication in a nonvolatile memory device | |
CN104247329B (zh) | 请求云服务的装置的安全补救 | |
US7797549B2 (en) | Secure method and system for biometric verification | |
JP7194847B2 (ja) | デジタルキー、端末デバイス、及び媒体の同一性を認証する方法 | |
US10868672B1 (en) | Establishing and verifying identity using biometrics while protecting user privacy | |
US8370935B1 (en) | Auditing a device | |
CN109325342A (zh) | 身份信息管理方法、装置、计算机设备和存储介质 | |
CN111886828B (zh) | 基于共识的在线认证 | |
JP2016531508A (ja) | データセキュアストレージ | |
CN108965222A (zh) | 身份认证方法、系统及计算机可读存储介质 | |
CN110222531A (zh) | 一种访问数据库的方法、系统及设备 | |
CN109325328A (zh) | 生物特征认证技术 | |
CZ2015473A3 (cs) | Způsob zabezpečení autentizace při elektronické komunikaci | |
CN107273736A (zh) | 密码输入方法、装置、计算机设备和存储介质 | |
CN100444184C (zh) | 软件身份认证的方法和系统 | |
CN105430649B (zh) | Wifi接入方法及设备 | |
US9977886B2 (en) | Methods, apparatus and computer programs for entity authentication | |
US8151111B2 (en) | Processing device constituting an authentication system, authentication system, and the operation method thereof | |
US11379568B2 (en) | Method and system for preventing unauthorized computer processing | |
CN105678149B (zh) | 一种解锁方法及终端 | |
CN104751042A (zh) | 基于密码哈希与生物特征识别的可信性检测方法 | |
CN101562523B (zh) | 应用在移动存储设备上的安全认证方法 | |
Zhao et al. | Feasibility of deploying biometric encryption in mobile cloud computing | |
CN115643081A (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 |
Application publication date: 20190614 |
|
RJ01 | Rejection of invention patent application after publication |