比特币交易转帐方法以及比特币交易转帐系统
技术领域
[0001] 本
发明涉及计算机领域,特别地涉及比特币的交易转帐方法以及比特币交易转帐系统。
背景技术
[0002] 比特币(BitCoin)的概念最初由中本聪在2009年提出,根据中本聪的思路设计发布的开源
软件以及建构其上的P2P网络。比特币是一种P2P形式的
数字货币。点对点的传输意味着一个去中心化的
支付系统。
[0003] 与大多数货币不同,比特币不依靠特定货币机构发行,它依据特定
算法,通过大量的计算产生,比特币经济使用整个P2P网络中众多
节点构成的分布式
数据库来确认并记录所有的交易行为,并使用
密码学的设计来确保货币流通各个环节安全性。P2P的去中心化特性与算法本身可以确保无法通过大量制造比特币来人为操控币值。基于密码学的设计可以使比特币只能被真实的拥有者转移或支付。这同样确保了货币所有权与流通交易的匿名性。比特币与其他
虚拟货币最大的不同,是其总数量非常有限,具有极强的稀缺性。该货币系统曾在4年内只有不超过1050万个,之后的总数量将被永久限制在2100万个。
[0004] 比特币可以用来兑现,可以兑换成大多数国家的货币。使用者可以用比特币购买一些虚拟物品,比如网络游戏当中的衣服、帽子、装备等,只要有人接受,也可以使用比特币购买现实生活当中的物品。
[0005] 随着比特币技术的日趋成熟,基于比特币的金融业务研究也不断深入,对于最主要的金融业务——比特币转账交易进行
接口封装,遇到了交易过程中用户私钥可能泄露的问题。
发明内容
[0006] 鉴于上述问题,本发明的目的在于,提供一种能够防止比特币交易过程中私钥的泄露的比特币交易转帐方法以及比特币交易转帐系统。
[0007] 本发明的比特币交易转帐方法,其特征在于,包括下述步骤:
[0008] 网络类型判断步骤,判断比特币网络的网络类型;
[0009] 初始化步骤,根据所述网络判断步骤判断的网络类型使用该网络类型对应的网络参数对
比特币钱包对象进行初始化;
[0010] 密钥生成步骤,将用户私钥与所述网络参数组合生成新密钥并加入到比特币钱包对象中;以及
[0011] 签名转帐步骤,在本地使用比特币钱包对象中的新密钥对转帐交易数据进行签名并将该签名后的转帐交易数据上传到比特币网络以实现比特币转帐交易。
[0012] 优选地,在所述网络类型判断步骤中,判断比特币网络是测试网还是公网。
[0013] 优选地,在所述密钥生成步骤,将用户私钥与所述网络参数利用加密算法组合生成新密钥并加入到比特币钱包对象中。
[0014] 优选地,在所述密钥生成步骤,将用户私钥与所述网络参数利用不可逆的加密算法组合生成新密钥并加入到比特币钱包对象中。
[0015] 优选地,在所述密钥生成步骤,对于每笔交易生成一个新密钥。
[0016] 优选地,所述加密算法为SHA256。
[0017] 本发明的比特币交易转帐系统,其特征在于,包括:
[0018] 网络类型判断模
块,用于判断比特币网络的网络类型;
[0019] 初始化模块,用于根据所述网络判断模块判断的网络类型使用该网络类型对应的网络参数对比特币钱包对象进行初始化;
[0020] 密钥生成模块,用于将用户私钥与所述网络参数组合生成新密钥并加入到比特币钱包对象中;以及
[0021] 签名转帐模块,用于在本地使用比特币钱包对象中的新密钥对转帐交易数据进行签名并将该签名后的转帐交易数据上传到比特币网络实现比特币转帐交易。
[0022] 优选地,所述网络类型判断模块用于判断比特币网络是测试网还是公网。
[0023] 优选地,所述密钥生成模块对于每笔交易生成一个新密钥。
[0024] 优选地,所述密钥生成模块采用SHA256算法将用户私钥与所述网络参数组合生成新密钥。
[0025] 根据本发明的比特币交易转帐系统以及比特币交易转帐方法能够获能够提供比特币交易本地化签名接口,通过比特币钱包对交易进行签名,实现交易签名的本地化;能够杜绝用户交易过程中私钥泄露
风险,保障用户财产安全;能够提供安全的比特币转账交易接口,将交易与签名分离,能够有效保证交易的安全性。
附图说明
[0026] 图1是表示本发明的比特币交易转帐方法的
流程图。
[0027] 图2是表示本发明的比特币交易转帐系统的结构示意图。
具体实施方式
[0028] 下面介绍的是本发明的多个
实施例中的一些,旨在提供对本发明的基本了解。并不旨在确认本发明的关键或决定性的要素或限定所要保护的范围。
[0029] 在本发明中,针对使用比特币接口进行转账交易过程中用户私钥可能泄露的问题提出了一种转账方法以及转帐系统,能够实现比特币交易签名本地化,杜绝了用户私钥泄露风险,实现安全的比特币转账交易。本发明的要点一:在本地将用户私钥与网络参数组合形成新的密钥,将新密钥加入比特币钱包;要点二:在本地使用比特币钱包中的新密钥对转账交易数据进行签名;要点三:将已签名的转账交易数据上传至比特币网络,实现比特币转账交易。
[0030] 接着,对于本发明的比特币交易转帐方法进行说明。
[0031] 图1是表示本发明的比特币交易转帐方法的流程图。
[0032] 如图1所示,本发明的比特币交易转帐方法包括下述步骤:
[0033] 步骤S101:判断比特币网络的网络类型,例如通常判断比特币网络是公网还是测试网。所谓公网是指真正实现比特币交易的网络,所谓测试网是指进行比特币交易测试的网络,它不是真正实现比特币交易的网络。
[0034] 步骤S102:如果判断是测试网,则采用测试网的网络参数对比特币钱包对象进行初始化。
[0035] 步骤S103:如果判断是公网,则采用公网的网络参数对比特币钱包对象进行初始化。
[0036] 步骤S104:完成比特币钱包对象的初始化。
[0037] 步骤S105:将用户私钥与网络参数组合生成新密钥,具体地,如果网络是测试网的情况下,则采用测试网的网络参数与用户私钥组合生成新密钥,如果网络是公网的情况下,则采用公网的网络参数与用户私钥组合生成新密钥。在将网络参数和用户私钥组合的情况下,将用户私钥与网络参数利用不可逆的加密算法组合生成新密钥,例如,作为加密算法,可以采用SHA256算法。利用这样的不可逆的加密算法,即使将密钥传输到比特币网,也不会被他人获取。另外,在本发明中,对于每笔交易生成一个新密钥,由此,也能够保证密钥的安全性。
[0038] 步骤S106:将步骤S105生成的新密钥加入到比特币钱包对象中。
[0039] 步骤S107:在本地使用比特币钱包对象中的新密钥对转帐交易数据进行签名。
[0040] 步骤S108:将已签名的转帐交易数据上传到比特币网络以实现比特币转帐交易。
[0041] 以上对于本发明的比特币交易转帐方法进行了说明。接着对于本发明的比特币交易转帐系统进行说明。
[0042] 图2是表示本发明的比特币交易转帐系统的结构示意图。
[0043] 如图2所示,本发明的比特币交易转帐系统100包括:网络类型判断模块101,用于判断比特币网络的网络类型;初始化模块102,用于根据所述网络判断模块101判断的网络类型使用该网络类型对应的网络参数对比特币钱包对象进行初始化;密钥生成模块103,用于将用户私钥与所述网络参数组合生成新密钥并加入到比特币钱包对象中;以及签名转帐模块104,用于在本地使用比特币钱包对象中的新密钥对转帐交易数据进行签名并将该签名后的转帐交易数据上传到比特币网络实现比特币转帐交易。
[0044] 其中,网络类型判断模块101用于判断比特币网络是测试网还是公网。密钥生成模块103对于每笔交易生成一个新密钥,密钥生成模块103采用SHA256算法将用户私钥与所述网络参数组合生成新密钥。
[0045] 利用本发明的比特币交易转帐系统以及比特币交易转帐方法,通过本提案有效解决了比特币转账交易过程中用户私钥可能泄露的问题,在本地通过比特币钱包对转账交易进行签名,实现了转账交易与签名分离,将签名后的转账交易数据上传至比特币网络,实现比特币转账。
[0046] 根据本发明的比特币交易转帐系统以及比特币交易转帐方法能够获得以下技术效果:
[0047] (1)能够提供比特币交易本地化签名接口,通过比特币钱包对交易进行签名,实现交易签名的本地化;
[0048] (2)能够杜绝用户交易过程中私钥泄露风险,保障用户财产安全;
[0049] (3)能够提供安全的比特币转账交易接口,将交易与签名分离,既保证了交易的安全性,又实现了转账交易。
[0050] 以上例子主要说明了本发明的比特币交易转帐系统以及比特币交易转帐方法。尽管只对其中一些本发明的具体实施方式进行了描述,但是本领域普通技术人员应当了解,本发明可以在不偏离其主旨与范围内以许多其他的形式实施。因此,所展示的例子与实施方式被视为示意性的而非限制性的,在不脱离如所附各
权利要求所定义的本发明精神及范围的情况下,本发明可能涵盖各种的
修改与替换。