CN108805537A - 一种利用tpm作为比特币客户端随机源的方法及系统 - Google Patents

一种利用tpm作为比特币客户端随机源的方法及系统 Download PDF

Info

Publication number
CN108805537A
CN108805537A CN201810488243.2A CN201810488243A CN108805537A CN 108805537 A CN108805537 A CN 108805537A CN 201810488243 A CN201810488243 A CN 201810488243A CN 108805537 A CN108805537 A CN 108805537A
Authority
CN
China
Prior art keywords
random number
tpm
bit coin
main program
stochastic source
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.)
Withdrawn
Application number
CN201810488243.2A
Other languages
English (en)
Inventor
曹永超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201810488243.2A priority Critical patent/CN108805537A/zh
Publication of CN108805537A publication Critical patent/CN108805537A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • G06Q20/0658Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed locally
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种利用TPM作为比特币客户端随机源的方法及系统,属于比特币技术领域。本发明的利用TPM作为比特币客户端随机源的方法,PoW程序需要随机数时,比特币主程序需要与TPM进行通信,提出随机数生成请求,TPM响应请求,生成随机数返回给比特币主程序。该发明的利用TPM作为比特币客户端随机源的方法及系统能提供高质量且稳定的随机数,具有很好的推广应用价值。

Description

一种利用TPM作为比特币客户端随机源的方法及系统
技术领域
本发明涉及比特币技术领域,具体提供一种利用TPM作为比特币客户端随机源的方法及系统。
背景技术
比特币是一种2009年诞生的加密数字货币,其去中心化、分布式记账的特点,吸引了众多的参与者与研究者。比特币的每笔交易需要挖矿节点(比特币交易中提供计算力,用于验证交易有效性的节点)的验证,以确定交易的有效性,只有确认了有效性的交易才能加入到交易链中,成为分布式账本的一部分。每个提供了计算力的挖矿节点,对于未验证的交易,运行PoW(Proof of Work)工作量证明程序,试图完成对未交易块的有效性确认,从而获得比特币奖励。完成每个交易块的确认需要大量的计算,具体说,每个节点重复获取随机数,填充成交易头数据,对该数据进行一定的运算,如果运算结果满足要求,该交易块被确认,对应的随机数写入交易块中;否则,重新获取随机数,直至找到满足要求的随机数。该过程中,随机源的稳定性至关重要。随机源是生成随机数的方法或设备,随机数是PoW中唯一变量,符合条件的随机数被写入交易区块。目前比特币交易的随机源是软件程序,如图1所示是软件生成随机数的方式。但是软件程序生成的随机数,其随机性质不如物理设备产生的随机数可靠。
TPM(Trusted Plaform Module)可信计算模块是一种可靠的安全芯片,内置物理随机源子模块和永久性安全存储空间,配合上层的软件套件,提供随机数生成,数据安全存储等功能。
发明内容
本发明的技术任务是针对上述存在的问题,提供一种能提供高质量且稳定的随机数的利用TPM作为比特币客户端随机源的方法。
本发明进一步的技术任务是提供一种利用TPM作为比特币客户端随机源的系统。
为实现上述目的,本发明提供了如下技术方案:
一种利用TPM作为比特币客户端随机源的方法,PoW程序需要随机数时,向TPM下发随机数生成指令,TPM根据指令请求,将随机数返回给PoW。
作为优选,PoW程序需要随机数时,比特币主程序需要与TPM进行通信,提出随机数生成请求,TPM响应请求,生成随机数返回给比特币主程序。
作为优选,比特币主程序通过软件栈TSS与TPM相通信。
作为优选,所述方法具体包括以下步骤:
S1:比特币主程序发出随机数生成请求;
S2:软件栈TSS接收比特币主程序的随机数生成请求,将请求封装为TPM识别的指令,发送给TPM;
S3:TPM接收到TSS的随机数生成指令,提取其中的长度参数,生成相应长度的随机数,并将生成的随机数返回给TSS;
S4:TSS接收TPM的相应结果,解析出随机数,将随机数返回给比特币主程序。
作为优选,步骤S1中,请求数据包包含随机数长度。
作为优选,步骤S3中调用随机数生成子模块生成相应长度的随机数。
作为优选,步骤S3中,对生成的随机数做自检测,通过检测的随机数被封装到指令相应结果中。
一种利用TPM作为比特币客户端随机源的系统,包括比特币主程序模块、TSS模块和TPM模块;
比特币主程序模块用于发出随机数请求并接收返回的随机数;
TSS模块用于连接比特币主程序模块和TPM模块;
TPM模块用于接收随机数请求指令,并返回随机数指令响应结果。
与现有技术相比,本发明的利用TPM作为比特币客户端随机源的方法具有以下突出的有益效果:该利用TPM作为比特币客户端随机源的方法提高了随机数生成的稳定性和性能,具有良好的推广应用价值。
附图说明
图1是现有技术中软件生成随机数的方式的示意图;
图2是本发明所述利用TPM作为比特币客户端随机源的方法的示意图。
具体实施方式
下面将结合附图和实施例,对本发明的利用TPM作为比特币客户端随机源的方法及系统作进一步详细说明。
实施例
如图2所示,本发明的利用TPM作为比特币客户端随机源的方法,PoW程序需要随机数时,比特币主程序与TPM进行通信,提出随机数生成请求,TPM响应请求,生成随机数返回给比特币主程序。具体包括以下步骤:
S1:比特币主程序发出随机数生成请求,请求数据包包含随机数长度。
S2:软件栈TSS接收比特币主程序的随机数生成请求,将请求封装为TPM识别的指令,发送给TPM。
S3:TPM接收到TSS的随机数生成指令,提取其中的长度参数,调用随机数生成子模块生成相应长度的随机数,并对生成的随机数做自检测,通过检测的随机数被封装到指令相应结果中,相应结果返回给TSS。
S4:TSS接收TPM的相应结果,解析出随机数,将随机数返回给比特币主程序。
本发明的利用TPM作为比特币客户端随机源的系统,包括比特币主程序模块、TSS模块和TPM模块。
比特币主程序模块用于发出随机数请求并接收返回的随机数。
TSS模块用于连接比特币主程序模块和TPM模块。
TPM模块用于接收随机数请求指令,并返回随机数指令响应结果。
以上所述的实施例,只是本发明较优选的具体实施方式,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

Claims (8)

1.一种利用TPM作为比特币客户端随机源的方法,其特征在于:PoW程序需要随机数时,向TPM下发随机数生成指令,TPM根据指令请求,将随机数返回给PoW。
2.根据权利要求1所述的利用TPM作为比特币客户端随机源的方法,其特征在于:PoW程序需要随机数时,比特币主程序需要与TPM进行通信,提出随机数生成请求,TPM响应请求,生成随机数返回给比特币主程序。
3.根据权利要求2所述的利用TPM作为比特币客户端随机源的方法,其特征在于:比特币主程序通过软件栈TSS与TPM相通信。
4.根据权利要求1、2或3所述的利用TPM作为比特币客户端随机源的方法,其特征在于:所述方法具体包括以下步骤:
S1:比特币主程序发出随机数生成请求;
S2:软件栈TSS接收比特币主程序的随机数生成请求,将请求封装为TPM识别的指令,发送给TPM;
S3:TPM接收到TSS的随机数生成指令,提取其中的长度参数,生成相应长度的随机数,并将生成的随机数返回给TSS;
S4:TSS接收TPM的相应结果,解析出随机数,将随机数返回给比特币主程序。
5.根据权利要求4所述的利用TPM作为比特币客户端随机源的方法,其特征在于:步骤S1中,请求数据包包含随机数长度。
6.根据权利要求5所述的利用TPM作为比特币客户端随机源的方法,其特征在于:步骤S3中调用随机数生成子模块生成相应长度的随机数。
7.根据权利要求5所述的利用TPM作为比特币客户端随机源的方法,其特征在于:步骤S3中,对生成的随机数做自检测,通过检测的随机数被封装到指令相应结果中。
8.一种利用TPM作为比特币客户端随机源的系统,其特征在于:包括比特币主程序模块、TSS模块和TPM模块;
比特币主程序模块用于发出随机数请求并接收返回的随机数;
TSS模块用于连接比特币主程序模块和TPM模块;
TPM模块用于接收随机数请求指令,并返回随机数指令响应结果。
CN201810488243.2A 2018-05-21 2018-05-21 一种利用tpm作为比特币客户端随机源的方法及系统 Withdrawn CN108805537A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810488243.2A CN108805537A (zh) 2018-05-21 2018-05-21 一种利用tpm作为比特币客户端随机源的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810488243.2A CN108805537A (zh) 2018-05-21 2018-05-21 一种利用tpm作为比特币客户端随机源的方法及系统

Publications (1)

Publication Number Publication Date
CN108805537A true CN108805537A (zh) 2018-11-13

Family

ID=64091177

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810488243.2A Withdrawn CN108805537A (zh) 2018-05-21 2018-05-21 一种利用tpm作为比特币客户端随机源的方法及系统

Country Status (1)

Country Link
CN (1) CN108805537A (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2914193Y (zh) * 2006-05-10 2007-06-20 上海一维科技有限公司 一种tpm指纹生物识别装置
CN101042720A (zh) * 2006-03-22 2007-09-26 富士通株式会社 具有启动验证功能的信息处理装置
CN101162998A (zh) * 2006-10-13 2008-04-16 上海华虹Nec电子有限公司 真随机数发生器
CN101165696A (zh) * 2006-10-16 2008-04-23 中国长城计算机深圳股份有限公司 一种基于安全计算机的安全认证方法
CN101833503A (zh) * 2010-04-14 2010-09-15 武汉大学 基于模糊技术的可信软件栈测试系统
CN103414564A (zh) * 2013-08-07 2013-11-27 成都卫士通信息产业股份有限公司 一种密钥卡、密钥设备及其保护私钥的方法
CN104298486A (zh) * 2014-10-23 2015-01-21 山东维固信息科技股份有限公司 一种嵌入式数据安全系统用soc芯片的随机数发生器
CN106296191A (zh) * 2016-08-13 2017-01-04 深圳市樊溪电子有限公司 一种区块链功耗感知的PoW共识机制
CN106326751A (zh) * 2016-08-09 2017-01-11 中国船舶重工集团公司第七0九研究所 一种可信道系统及其实现方法
CN106875254A (zh) * 2017-01-20 2017-06-20 暨南大学 一种基于区块链技术的Android恶意应用程序控制方法
CN107103472A (zh) * 2017-04-26 2017-08-29 北京计算机技术及应用研究所 一种用于区块链的算法处理模块
CN107579814A (zh) * 2017-08-03 2018-01-12 北京比特大陆科技有限公司 工作量证明的计算方法的装置、计算芯片、挖矿机
US20180131511A1 (en) * 2016-08-03 2018-05-10 James Taylor Systems and Methods for Dynamic Cypher Key Management

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101042720A (zh) * 2006-03-22 2007-09-26 富士通株式会社 具有启动验证功能的信息处理装置
CN2914193Y (zh) * 2006-05-10 2007-06-20 上海一维科技有限公司 一种tpm指纹生物识别装置
CN101162998A (zh) * 2006-10-13 2008-04-16 上海华虹Nec电子有限公司 真随机数发生器
CN101165696A (zh) * 2006-10-16 2008-04-23 中国长城计算机深圳股份有限公司 一种基于安全计算机的安全认证方法
CN101833503A (zh) * 2010-04-14 2010-09-15 武汉大学 基于模糊技术的可信软件栈测试系统
CN103414564A (zh) * 2013-08-07 2013-11-27 成都卫士通信息产业股份有限公司 一种密钥卡、密钥设备及其保护私钥的方法
CN104298486A (zh) * 2014-10-23 2015-01-21 山东维固信息科技股份有限公司 一种嵌入式数据安全系统用soc芯片的随机数发生器
US20180131511A1 (en) * 2016-08-03 2018-05-10 James Taylor Systems and Methods for Dynamic Cypher Key Management
CN106326751A (zh) * 2016-08-09 2017-01-11 中国船舶重工集团公司第七0九研究所 一种可信道系统及其实现方法
CN106296191A (zh) * 2016-08-13 2017-01-04 深圳市樊溪电子有限公司 一种区块链功耗感知的PoW共识机制
CN106875254A (zh) * 2017-01-20 2017-06-20 暨南大学 一种基于区块链技术的Android恶意应用程序控制方法
CN107103472A (zh) * 2017-04-26 2017-08-29 北京计算机技术及应用研究所 一种用于区块链的算法处理模块
CN107579814A (zh) * 2017-08-03 2018-01-12 北京比特大陆科技有限公司 工作量证明的计算方法的装置、计算芯片、挖矿机

Similar Documents

Publication Publication Date Title
US10839107B2 (en) Managing a smart contract on a blockchain
CN107612697B (zh) 数字证书申请方法和装置
US10891384B2 (en) Blockchain transaction device and method
US6704870B2 (en) Digital signatures on a Smartcard
US7590846B2 (en) Public key cryptographic method of protecting an electronic chip against fraud
WO2020233638A1 (zh) 结合代码标注与交易类型的收据存储方法和节点
WO2020233637A1 (zh) 结合代码标注与用户类型的收据存储方法和节点
WO2020233615A1 (zh) 结合用户类型与事件函数类型的收据存储方法和节点
US8428252B1 (en) Using multiples above two with running totals in elliptic curve cryptography scalar multiplication acceleration tables
CN111767555A (zh) 区块链中实现隐私保护的方法及节点、存储介质
CN108269062A (zh) 基于h5的电子合同制作方法、装置、设备及介质
EP3804218B1 (en) Blockchain based access control using time-dependent obfuscation of access tokens
CN108615151A (zh) 数据处理方法、区块链服务器以及节点设备
CN104364760A (zh) 采用多个存储器件的并行计算
CN111080296B (zh) 一种基于区块链系统的验证方法及装置
CN103049710A (zh) 用于sm2数字签名验证算法的fpga芯片
Xiong et al. {VeriZexe}: Decentralized Private Computation with Universal Setup
CN109271189A (zh) 一种嵌入式系统固件的处理方法以及相关装置
CN108805537A (zh) 一种利用tpm作为比特币客户端随机源的方法及系统
Wiersema et al. Memory security in reconfigurable computers: Combining formal verification with monitoring
CN111404685B (zh) 一种属性基签名方法及系统
US7454625B2 (en) Method and apparatus for protecting a calculation in a cryptographic algorithm
WO2021068290A1 (zh) 基于区块链的密钥生成方法、相关装置及计算机存储介质
CN107688750A (zh) 用于集成存储介质的静止数据(dar)加密
CN104901959A (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
WW01 Invention patent application withdrawn after publication

Application publication date: 20181113

WW01 Invention patent application withdrawn after publication