CN110874726A - 一种基于tpm的数字货币安全保护方法 - Google Patents
一种基于tpm的数字货币安全保护方法 Download PDFInfo
- Publication number
- CN110874726A CN110874726A CN201911138715.2A CN201911138715A CN110874726A CN 110874726 A CN110874726 A CN 110874726A CN 201911138715 A CN201911138715 A CN 201911138715A CN 110874726 A CN110874726 A CN 110874726A
- Authority
- CN
- China
- Prior art keywords
- key
- tpm
- transaction
- digital currency
- generating
- 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
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000001343 mnemonic effect Effects 0.000 claims abstract description 4
- 230000002085 persistent effect Effects 0.000 claims abstract description 4
- 150000003839 salts Chemical class 0.000 claims abstract description 4
- 230000015654 memory Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- JBWKIWSBJXDJDT-UHFFFAOYSA-N triphenylmethyl chloride Chemical compound C=1C=CC=CC=1C(C=1C=CC=CC=1)(Cl)C1=CC=CC=C1 JBWKIWSBJXDJDT-UHFFFAOYSA-N 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- 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
-
- 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
- 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/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种基于TPM的数字货币安全保护方法,包括初始化过程和交易过程,初始化过程:使用助记词和盐通过PBKDF2生成密钥种子SEED,使用HMAC‑SHA512算法通过SEED生成ROOT Key,使用ROOT Key生成Private Key,使用SECP256K1算法通过Private Key生成Public Key,再将Private Key,调用TPM命令tpm2_loadexternal,通过外部密钥方式装载到TPM,并使用tpm2_evictcontrol做持久化存储,销毁原SEED和Private Key,完成数字货币密钥对生成、地址生成,及TPM密钥等工作;交易过程:按照数字货币交易格式,将交易信息打包为signin.data,调用TPM,命令TPM2_SIGN签名signin.data,生成签名数据,输出signout.data,将交易信广播数字货币网络,由矿工验证交易,最终完成交易。有益效果:本发明使用这种方法将密钥存在TPM中,可以有效的保护密钥,在使用过程中密钥不会出TPM模块,避免密钥泄露风险。
Description
技术领域
本发明涉及信息安全技术领域,具体来说,涉及一种基于TPM的数字货币安全保护方法。
背景技术
数字货币是一种基于密码学原理的虚拟货币,随着区块链的发展越来越多的人开始关注和拥有数字货币资产,数字货币都是匿名的,是通过密码学原理来确认货币拥有着,谁拥有对应货币地址的私钥,谁就可以支配这些数字货币资产。数字货币钱包是管理数字货币的应用,他的本质是一个密钥(包含私钥和公钥) 的管理容器。它一般提供钱包地址的创建、转账、交易查询等功能。目前大部分的数字钱包都是将密钥以明文形式存储在本地,即使经过一些安全处理,也因安全强度不够,很容易被黑客破解,从而窃取数字货币密钥。没有实际的硬件密码安全设备支持,软件始终无法解决密钥存放的问题,而专有的安全设备不仅会增加成本,软件也必须根据硬件做针对性开发,与硬件绑定,软硬件开发周期长,而且通用性差,本文提出一种新的方法,即使用TPM模块来解决数字货币安全保护问题。
现在很多计算机出厂的时候都带有可信平台模块(TPM/TPCM),TPM/TPCM是一种安全模块,用于保护计算机系统的完整性和正确性,提供平台身份认证等,保障使用PC时硬件配置和操作系统没有被篡改过,可信计算通过芯片厂家植入在可信硬件中的算法和秘钥,以及集成的专用微控制器对系统和应用进行度量、验证来确保平台可信。芯片达到EAL 4+安全等级,自身安全强度非常高,如果使用TPM来保护数字货币密钥,因其芯片安全强度非常高,被破解数字货币密钥的可能性极低,并且因可信平台模块在计算机上多有预装,有操作系统底层支持,软件容易访问和使用可信平台模块,但TPM设计之初是用来护计算机系统的完整性和正确性的,其密码体系是基于可信根度量根,可信存储根,可信报告根衍生的可信计算体系结构,是符合TCG 标准的可信计算体系,而数字货币密码体系使用的是BIP标准,TCG标准与BIP标准并不相同,无法将TPM的直接用于数字货币应用,因此想要使用可信平台模块来保护数字货币,必须创建一种新的流程体系,能够利用TPM,充分发挥TPM的安全性,同时又能符合BIP标准,满足通用性要求。
数字货币钱包为实现数字货币的密钥管理,数字货币查询、转账管理的应用软件,数字货币钱包为生成确定性密钥,需遵循BIP(Bitcoin Improvement Proposal)标准生成密钥,数字货币采用的是非对称密钥体系,是由公钥和私钥组成的密钥对,私钥主要用于对应钱包地址的数字货币交易签名,生成公钥等,公钥是可公开的密钥,主要用于生成钱包地址、提供给第三方进行验签等。
当数字钱包发起一个转账交易时,会将自己钱包地址,对方钱包地址,交易数量,自己公钥等关键信息作为明文信息打包,再用自己的私钥进行签名,将明文和签名发送到区块链网络,最后由矿工验证签名信息,完成交易确认。这个过程中私钥是安全核心,私钥如果泄露会导致用户丢失数字货币所有权。
几乎所有的纯软件应用都面临一个问题,即如何安全的保存和使用密钥,因为无论采取什么样的保护方法,最终都会将密钥解码为明文,存在内存或磁盘上,供应用软件使用。如果受到恶意攻击,很容易造成密钥泄露。
一些软件使用类似加密存储器等硬件设备来保护密钥,但使用这类硬件设备仅能实现存储安全,也存在同样的安全问题,即最终提供给在使用时的密钥还得以明文形式提供给软件。如何保护数字货币是一个需要解决的问题。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
本发明的目的在于提供一种基于TPM的数字货币安全保护方法,通过计算机或嵌入式系统上内置的TPM模块,利用TPM模块保护数字货币密钥,实现交易签名,保护数字货币安全,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种基于TPM的数字货币安全保护方法,包括初始化过程和交易过程。
进一步的,初始化过程:使用助记词和盐通过PBKDF2生成密钥种子SEED,使用HMAC-SHA512算法通过SEED生成ROOT Key,使用ROOT Key生成Private Key,使用SECP256K1算法通过Private Key生成Public Key,再将Private Key,调用TPM命令tpm2_loadexternal,通过外部密钥方式装载到TPM,并使用tpm2_evictcontrol做持久化存储,销毁原SEED和Private Key,完成数字货币密钥对生成、地址生成,及TPM密钥等工作。
进一步的,交易过程:按照数字货币交易格式,将交易信息打包为signin.data,调用TPM,命令TPM2_SIGN 签名signin.data,生成签名数据,输出signout.data,将交易信广播数字货币网络,由矿工验证交易,最终完成交易。
与现有技术相比,本发明具有以下有益效果:本发明使用这种方法将密钥存在TPM中,可以有效的保护密钥,在使用过程中密钥不会出TPM模块,避免密钥泄露风险。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种基于TPM的数字货币安全保护方法的初始化过程流程示意图;
图2是根据本发明实施例的一种基于TPM的数字货币安全保护方法的交易过程流程示意图。
具体实施方式
下面,结合附图以及具体实施方式,对发明做出进一步的描述:
请参阅图1-2,根据本发明实施例的一种基于TPM的数字货币安全保护方法,包括初始化过程和交易过程。
请参阅图1,初始化过程:使用助记词和盐通过PBKDF2生成密钥种子SEED,使用HMAC-SHA512算法通过SEED生成ROOT Key,使用ROOT Key生成Private Key,使用SECP256K1算法通过Private Key生成Public Key,再将Private Key,调用TPM命令tpm2_loadexternal,通过外部密钥方式装载到TPM,并使用tpm2_evictcontrol做持久化存储,销毁原SEED和Private Key,完成数字货币密钥对生成、地址生成,及TPM密钥等工作。
请参阅图2,交易过程:按照数字货币交易格式,将交易信息打包为signin.data,调用TPM,命令TPM2_SIGN 签名signin.data,生成签名数据,输出signout.data,将交易信广播数字货币网络,由矿工验证交易,最终完成交易。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限定本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种基于TPM的数字货币安全保护方法,其特征在于,包括初始化过程和交易过程。
2.根据权利要求1所述的一种基于TPM的数字货币安全保护方法,其特征在于,初始化过程:使用助记词和盐通过PBKDF2生成密钥种子SEED,使用HMAC-SHA512算法通过SEED生成ROOT Key,使用ROOT Key生成Private Key,使用SECP256K1算法通过Private Key生成Public Key,再将Private Key,调用TPM命令tpm2_loadexternal,通过外部密钥方式装载到TPM,并使用tpm2_evictcontrol做持久化存储,销毁原SEED和Private Key,完成数字货币密钥对生成、地址生成,及TPM密钥等工作。
3.根据权利要求1所述的一种基于TPM的数字货币安全保护方法,其特征在于,交易过程:按照数字货币交易格式,将交易信息打包为signin.data,调用TPM,命令TPM2_SIGN 签名signin.data,生成签名数据,输出signout.data,将交易信广播数字货币网络,由矿工验证交易,最终完成交易。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911138715.2A CN110874726A (zh) | 2019-11-20 | 2019-11-20 | 一种基于tpm的数字货币安全保护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911138715.2A CN110874726A (zh) | 2019-11-20 | 2019-11-20 | 一种基于tpm的数字货币安全保护方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110874726A true CN110874726A (zh) | 2020-03-10 |
Family
ID=69718047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911138715.2A Pending CN110874726A (zh) | 2019-11-20 | 2019-11-20 | 一种基于tpm的数字货币安全保护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110874726A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111865616A (zh) * | 2020-07-31 | 2020-10-30 | 海尔优家智能科技(北京)有限公司 | 基于ecdsa算法生成密钥对的方法及装置 |
CN111967864A (zh) * | 2020-09-02 | 2020-11-20 | 上海思赞博微信息科技有限公司 | 一种将可信计算芯片集成数字货币钱包及其工作流程 |
CN112001717A (zh) * | 2020-10-27 | 2020-11-27 | 四川泰立科技股份有限公司 | 一种数字电视的加密货币计算方法、系统及存储介质 |
CN112073183A (zh) * | 2020-08-07 | 2020-12-11 | 深圳区块大陆科技有限公司 | 一种区块链账户生成的方法 |
CN111507713B (zh) * | 2020-04-09 | 2021-06-29 | 链博(成都)科技有限公司 | 一种基于区块链的资产与数据集成管理方法、系统及终端 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103746805A (zh) * | 2013-12-05 | 2014-04-23 | 广东数字证书认证中心有限公司 | 外部认证密钥的生成方法和系统 |
CN107480986A (zh) * | 2017-08-14 | 2017-12-15 | 飞天诚信科技股份有限公司 | 一种利用硬件实现数字货币钱包的方法及硬件钱包 |
CN107533501A (zh) * | 2015-03-20 | 2018-01-02 | 里维茨公司 | 使用区块链自动认证设备完整性 |
CN107659402A (zh) * | 2017-10-18 | 2018-02-02 | 浪潮(北京)电子信息产业有限公司 | 一种数字加密货币的交易数据签名方法、装置及介质 |
CN108846662A (zh) * | 2018-05-29 | 2018-11-20 | 数字乾元科技有限公司 | 无线支付方法及可穿戴设备 |
CN109039639A (zh) * | 2018-08-01 | 2018-12-18 | 国网江苏招标有限公司 | 基于分层确定性密码学技术的投标方法 |
CN109615351A (zh) * | 2018-11-09 | 2019-04-12 | 元灵通智能科技(深圳)有限公司 | Sim卡、终端机和数字货币管理系统 |
-
2019
- 2019-11-20 CN CN201911138715.2A patent/CN110874726A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103746805A (zh) * | 2013-12-05 | 2014-04-23 | 广东数字证书认证中心有限公司 | 外部认证密钥的生成方法和系统 |
CN107533501A (zh) * | 2015-03-20 | 2018-01-02 | 里维茨公司 | 使用区块链自动认证设备完整性 |
CN107480986A (zh) * | 2017-08-14 | 2017-12-15 | 飞天诚信科技股份有限公司 | 一种利用硬件实现数字货币钱包的方法及硬件钱包 |
CN107659402A (zh) * | 2017-10-18 | 2018-02-02 | 浪潮(北京)电子信息产业有限公司 | 一种数字加密货币的交易数据签名方法、装置及介质 |
CN108846662A (zh) * | 2018-05-29 | 2018-11-20 | 数字乾元科技有限公司 | 无线支付方法及可穿戴设备 |
CN109039639A (zh) * | 2018-08-01 | 2018-12-18 | 国网江苏招标有限公司 | 基于分层确定性密码学技术的投标方法 |
CN109615351A (zh) * | 2018-11-09 | 2019-04-12 | 元灵通智能科技(深圳)有限公司 | Sim卡、终端机和数字货币管理系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111507713B (zh) * | 2020-04-09 | 2021-06-29 | 链博(成都)科技有限公司 | 一种基于区块链的资产与数据集成管理方法、系统及终端 |
CN111865616A (zh) * | 2020-07-31 | 2020-10-30 | 海尔优家智能科技(北京)有限公司 | 基于ecdsa算法生成密钥对的方法及装置 |
CN111865616B (zh) * | 2020-07-31 | 2024-03-22 | 海尔优家智能科技(北京)有限公司 | 基于ecdsa算法生成密钥对的方法及装置 |
CN112073183A (zh) * | 2020-08-07 | 2020-12-11 | 深圳区块大陆科技有限公司 | 一种区块链账户生成的方法 |
CN111967864A (zh) * | 2020-09-02 | 2020-11-20 | 上海思赞博微信息科技有限公司 | 一种将可信计算芯片集成数字货币钱包及其工作流程 |
CN112001717A (zh) * | 2020-10-27 | 2020-11-27 | 四川泰立科技股份有限公司 | 一种数字电视的加密货币计算方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111082934B (zh) | 基于可信执行环境的跨域安全多方计算的方法及装置 | |
CN106850200B (zh) | 一种使用基于区块链的数字货币的安全方法、系统及终端 | |
CN110874726A (zh) | 一种基于tpm的数字货币安全保护方法 | |
CN100586065C (zh) | Cpk可信认证系统 | |
CN108055133B (zh) | 一种基于区块链技术的密钥安全签名方法 | |
CN102646077B (zh) | 一种基于可信密码模块的全盘加密的方法 | |
CN110266467B (zh) | 基于区块高度实现动态加密的方法及装置 | |
CN109858265A (zh) | 一种加密方法、装置及相关设备 | |
CN107908574B (zh) | 固态盘数据存储的安全保护方法 | |
CN102262599B (zh) | 一种基于可信根的移动硬盘指纹认证方法 | |
CN103221961A (zh) | 包括用于保护多用户敏感代码和数据的架构的方法和装置 | |
KR20140099325A (ko) | 글로벌 플랫폼 규격을 사용하는 발행자 보안 도메인에 대한 키 관리 시스템 및 방법 | |
PT94307B (pt) | Metodo de transferencia de dados de um documento ou semelhante, sistema de transferencia de dados, documento electronico ou semelhante e um cartao para ser utilizado pelo referido metodo | |
JPWO2004006075A1 (ja) | 開放型汎用耐攻撃cpu及びその応用システム | |
CN107294710B (zh) | 一种vTPM2.0的密钥迁移方法及装置 | |
CN105022966A (zh) | 数据库数据加密解密方法和系统 | |
CN109190401A (zh) | 一种Qemu虚拟可信根的数据存储方法、装置及相关组件 | |
CN109903052A (zh) | 一种区块链签名方法和移动设备 | |
CN113435883A (zh) | 基于交易偏移量实现动态加密的方法及装置 | |
CN107911221B (zh) | 固态盘数据安全存储的密钥管理方法 | |
WO2020238958A1 (zh) | 基于合约状态的修改次序实现动态加密的方法及装置 | |
CN110837634B (zh) | 基于硬件加密机的电子签章方法 | |
CN110417557B (zh) | 智能终端外设数据安全控制方法及装置 | |
Cooijmans et al. | Secure key storage and secure computation in Android | |
US20110145568A1 (en) | Handling of the usage of software in a disconnected computing environment |
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: 20200310 |