会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 比特币钱包 / 用于增强型比特币钱包的交易方法、系统及计算机设备

用于增强型比特币钱包的交易方法、系统及计算机设备

申请号 CN202110139501.8 申请日 2021-02-01 公开(公告)号 CN113159940A 公开(公告)日 2021-07-23
申请人 四川记忆码科技有限公司; 发明人 韩岳忠;
摘要 本发明公开了一种用于增强型比特币钱包的交易方法、系统及计算机设备,属于区块链技术领域,该方法包括下述步骤:S1:生成用于从离线钱包定量输出比特币的输出私钥;其中,私钥为128位的散列值;S2:对输出私钥进行加密处理,得到密钥;S3:通过智能合约连接区块链网络,并在接收到区块链节点发送的解密请求后,发送解密公钥至区块链网络;解密公钥用于将密钥解密成输出私钥;与现有技术相比,在离线交易时,收款方无法连入网络对付款方拥有的比特币数量进行验证,因此付款方只提供密钥给收款方;这样收款方在线上后验证付款方的比特币数量,核实无误后;再由付款方通过线上提供唯一解密方式;从而实现在离线情况下建立公平。
权利要求

1.一种用于增强型比特币钱包的交易方法,其特征在于,包括生成用于从离线钱包定量输出比特币的输出私钥;其中,私钥为128位的散列值;

对输出私钥进行加密处理,得到密钥;

通过智能合约连接区块链网络,并在接收到区块链节点发送的解密请求后,发送解密公钥至区块链网络;解密公钥用于将密钥解密成输出私钥。

2.根据权利要求1所述的用于增强型比特币钱包的交易方法,其特征在于,离线钱包为存储输出私钥的软件,该软件安装在平板电脑、手机或者PC端电脑上;输出私钥用于登录区块链网络后,将比特币从该私钥对应的付款账户输出至收款账户中,收款账户的比特币输出由收款私钥控制。

3.根据权利要求2所述的用于增强型比特币钱包的交易方法,其特征在于,生成用于从离线钱包定量输出比特币的输出私钥前,先获取离线钱包对应的付款账户的总输入比特币和总输出比特币记录;并判断总输入比特币和总输出比特币的差值,与定量输出比特币值两者之间的大小关系;若总输入比特币和总输出比特币的差值大于定量输出比特币值,则生成输出私钥,否则生成失败。

4.根据权利要求3所述的用于增强型比特币钱包的交易方法,其特征在于,获取离线钱包对应的付款账户的总输入比特币和总输出比特币记录时,获取区块链网络中该付款账户的全部交易记录;获取该付款账户创立时生成的第一个区块中记录的全部交易信息,以及第一个区块与当前生成的最后一个区块之间全部区块的全部交易信息。

5.根据权利要求4所述的用于增强型比特币钱包的交易方法,其特征在于,获取该付款账户创立时生成的第一个区块与最后一个区块之间设有多个区块,每个区块均包括与上一区块数据关联的哈希值;修改第一区块中交易数据时,需要修改下一区块至最后一区块中全部区块的交易数据。

6.根据权利要求1所述的用于增强型比特币钱包的交易方法,其特征在于,对输出私钥进行加密处理时,对输出私钥先进行一次可反向破解加密处理再进行一次不可反向破解加密处理得到密钥;其中,不可反向破解加密处理需要通过公钥进行解密。

7.根据权利要求6所述的用于增强型比特币钱包的交易方法,其特征在于,解密时先对密钥进行不可反向破解解密再进行可反向破解解密;利用公钥解密密钥时,先将密钥嵌入执行软件中,向执行软件输入公钥后,执行软件作出解密响应,并生成规律码;再根据规律码快速解密可反向破解加密,得到输出私钥。

8.根据权利要求1所述的用于增强型比特币钱包的交易方法,其特征在于,通过智能合约连接区块链网络时,需要进行身份验证;身份验证通过后接收区块节点发送的解密请求;

并发送解密公钥至区块链网络。

9.一种用于增强型比特币钱包的交易系统,其特征在于,包括生成装置:生成用于从离线钱包定量输出比特币的输出私钥;其中,私钥为128位的散列值;

加密装置:对输出私钥进行加密处理,得到密钥;

通讯装置:通过智能合约连接区块链网络,并在接收到区块链节点发送的解密请求后,发送解密公钥至区块链网络;解密公钥用于将密钥解密成输出私钥。

10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时执行权利要求1‑8任意一项所述的方法。

说明书全文

用于增强型比特币钱包的交易方法、系统及计算机设备

技术领域

[0001] 本发明涉及分布式账本(区块链)技术,具体为一种用于增强型比特币钱包的交易方法、系统及计算机设备,可用于增强比特币交易安全。

背景技术

[0002] 区块链是一种点对点的电子账本,该账本被实现为基于计算机的去中心化的分布式系统,该系统由区块组成,而区块又由交易组成。每个交易都是对区块链系统中参与者之
间的数字资产控制权的转移进行编码的数据结构,并且包括至少一个输入和至少一个输
出;每个区块都包含前一区块的散列,如此,这些区块被链接在一起,以创建自区块链诞生
以来写入区块链的所有交易的永久的不可更改的记录;为了将交易写入区块链,必须对其
进行“验证”。网络节点(矿工)执行工作以确保每笔交易均有效,而无效交易则被网络拒绝。
[0003] 比特币是当前虚拟经济中最具代表性的一种虚拟货币,它使用区块链作为底层技术;比特币系统通常要求交易双方的客户端在线执行交易,并且使用区块链技术来验证交
易的合法性;因此在线交易时,商家可以通过监听网络,获得交易的区块确认以决定该交易
是否合法;而离线场景下由于收款方无法连入网络,因此也就无法获得挖矿节点对交易的
区块确认,此时付款方就可以声称自己拥有比特币去和收款方进行交易导致付款方的财产
损失。

发明内容

[0004] 针对上述技术中存在的不足之处,本发明提供一种用于增强型比特币钱包的交易方法、系统及计算机设备,通过对离线过程中交易的私钥进行加密锁止处理,并在上线验证
后解锁,防止收款方在离线情况下无法验证私钥的真伪性,被欺骗。
[0005] 为实现上述目的,本发明提供一种用于增强型比特币钱包的交易方法,包括
[0006] 生成用于从离线钱包定量输出比特币的输出私钥;其中,私钥为128位的散列值;
[0007] 对输出私钥进行加密处理,得到密钥;
[0008] 通过智能合约连接区块链网络,并在接收到区块链节点发送的解密请求后,发送解密公钥至区块链网络;解密公钥用于将密钥解密成输出私钥。
[0009] 其中,离线钱包为存储输出私钥的软件,该软件安装在平板电脑、手机或者PC端电脑上;输出私钥用于登录区块链网络后,将比特币从该私钥对应的付款账户输出至收款账
户中,收款账户的比特币输出由收款私钥控制。
[0010] 其中,生成用于从离线钱包定量输出比特币的输出私钥前,先获取离线钱包对应的付款账户的总输入比特币和总输出比特币记录;并判断总输入比特币和总输出比特币的
差值,与定量输出比特币值两者之间的大小关系;若总输入比特币和总输出比特币的差值
大于定量输出比特币值,则生成输出私钥,否则生成失败。
[0011] 其中,获取离线钱包对应的付款账户的总输入比特币和总输出比特币记录时,获取区块链网络中该付款账户的全部交易记录;获取该付款账户创立时生成的第一个区块中
记录的全部交易信息,以及第一个区块与当前生成的最后一个区块之间全部区块的全部交
易信息。
[0012] 其中,获取该付款账户创立时生成的第一个区块与最后一个区块之间设有多个区块,每个区块均包括与上一区块数据关联的哈希值;修改第一区块中交易数据时,需要修改
下一区块至最后一区块中全部区块的交易数据。
[0013] 其中,对输出私钥进行加密处理时,对输出私钥先进行一次可反向破解加密处理再进行一次不可反向破解加密处理得到密钥;其中,不可反向破解加密处理需要通过公钥
进行解密。
[0014] 其中,解密时先对密钥进行不可反向破解解密再进行可反向破解解密;利用公钥解密密钥时,先将密钥嵌入执行软件中,向执行软件输入公钥后,执行软件作出解密响应,
并生成规律码;再根据规律码快速解密可反向破解加密,得到输出私钥。
[0015] 其中,通过智能合约连接区块链网络时,需要进行身份验证;身份验证通过后接收区块节点发送的解密请求;并发送解密公钥至区块链网络。
[0016] 为了实现上述目的,本发明还提供了一种用于增强型比特币钱包的交易系统,包括
[0017] 生成装置:生成用于从离线钱包定量输出比特币的输出私钥;其中,私钥为128位的散列值;
[0018] 加密装置:对输出私钥进行加密处理,得到密钥;
[0019] 通讯装置:通过智能合约连接区块链网络,并在接收到区块链节点发送的解密请求后,发送解密公钥至区块链网络;解密公钥用于将密钥解密成输出私钥。
[0020] 为了实现上述目的,本发明还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现用于增强型比特币钱包
的交易方法。
[0021] 本发明的有益效果是:本发明提供的用于增强型比特币钱包的交易方法,包括下述步骤:S1:生成用于从离线钱包定量输出比特币的输出私钥;其中,私钥为128位的散列
值;S2:对输出私钥进行加密处理,得到密钥;S3:通过智能合约连接区块链网络,并在接收
到区块链节点发送的解密请求后,发送解密公钥至区块链网络;解密公钥用于将密钥解密
成输出私钥;与现有技术相比,在离线交易时,收款方无法连入网络对付款方拥有的比特币
数量进行验证,收款方对付款方是不信任的,要保证交易的公平性,付款方也不能完全信任
收款方,因此付款方只提供密钥给收款方;这样收款方在线上后验证付款方的比特币数量,
核实无误后;再由付款方通过线上提供唯一解密方式;从而实现在离线情况下建立公平的
交易方式。

附图说明

[0022] 图1为本发明的交易方法流程图;
[0023] 图2为本发明的交易方法方框图。

具体实施方式

[0024] 为了更清楚地表述本发明,下面结合附图对本发明作进一步地描述。
[0025] 如背景技术所述,在线交易比特币时,商家可以通过监听网络,获得交易的区块确认以决定该交易是否合法;而离线场景下由于收款方无法连入网络,因此也就无法获得挖
矿节点对交易的区块确认,此时付款方和收款方之间是相互不信任的,导致交易难以进行;
如果一方单方面信任另一方,极其容易给信任方造成财产损失;基于此,本发明提供了一种
用于增强型比特币钱包的交易方法,参阅图1,其包括
[0026] S1:生成用于从离线钱包定量输出比特币的输出私钥;其中,私钥为128位的散列值;
[0027] S2:对输出私钥进行加密处理,得到密钥;
[0028] S3:通过智能合约连接区块链网络,并在接收到区块链节点发送的解密请求后,发送解密公钥至区块链网络;解密公钥用于将密钥解密成输出私钥。
[0029] 与现有技术相比,在离线交易时,收款方无法连入网络对付款方拥有的比特币数量进行验证,收款方对付款方是不信任的,要保证交易的公平性,付款方也不能完全信任收
款方,因此付款方只提供密钥给收款方;这样收款方在线上后验证付款方的比特币数量,核
实无误后;再由付款方通过线上提供唯一解密方式;从而实现在离线情况下建立公平的交
易方式。
[0030] 在本实施例中,离线钱包为存储输出私钥的软件,该软件安装在平板电脑、手机或者PC端电脑上;输出私钥用于登录区块链网络后,将比特币从该私钥对应的付款账户输出
至收款账户中,收款账户的比特币输出由收款私钥控制。
[0031] 在本实施例中,我们使用术语“区块链”来涵盖所有形式的电子的、基于计算机的分布式账本。这些电子的、基于计算机的分布式账本包括但不限于区块链和交易链技术、许
可及未经许可的账本、共享账本及其变型。虽然已经提出并开发了其他区块链实施方案,但
是区块链技术最广为人知的应用是比特币账本。尽管出于方便和说明的目的,本文中涉及
的是比特币,但应当指出的是,本发明不限于与比特币区块链一起使用,其他的区块链实施
方式和协议也落入本发明的范围内。术语“比特币”可以包括比特币区块链的任何分支、版
本或变体。
[0032] 在本实施例中,为了将交易写入区块链,必须对其进行“验证”。网络节点(矿工)执行工作以确保每笔交易均有效,而无效交易则被网络拒绝。安装在节点上的软件客户端通
过执行其锁定和解锁脚本对未花费的交易支出(Unspent Transaction Output,简称UTXO)
执行此验证工作。如果锁定和解锁脚本的执行评估为真(TRUE),则该交易有效,并且可以将
该交易写入区块链。因此,为了将交易写入区块链,该交易必须:i)由接收交易的节点进行
验证—如果该交易通过验证,则该节点将该交易中继到网络中的其他节点;ii)添加到矿工
建造的新区块中;iii)被挖矿,即添加到过去交易的公共账本中。
[0033] 在S1中,生成用于从离线钱包定量输出比特币的输出私钥前,先获取离线钱包对应的付款账户的总输入比特币和总输出比特币记录;并判断总输入比特币和总输出比特币
的差值,与定量输出比特币值两者之间的大小关系;若总输入比特币和总输出比特币的差
值大于定量输出比特币值,则生成输出私钥,否则生成失败;以此来确保付款方生成的私钥
是真实可靠的;因为从该付款账户创立起的全部交易记录在区块链上是公开透明,且不可
更改的,所以该账户拥有的比特币数量也是不能更改的信息,输出私钥的输出比特币值若
大于该输出账户的总比特币值,则显然该输出私钥是不可靠的,付款方会被欺骗;因此在生
成输出私钥前先验证、判断可以保证交易的公平性。
[0034] 在本实施例中,获取离线钱包对应的付款账户的总输入比特币和总输出比特币记录时,获取区块链网络中该付款账户的全部交易记录;获取该付款账户创立时生成的第一
个区块中记录的全部交易信息,以及第一个区块与当前生成的最后一个区块之间全部区块
的全部交易信息;每个区块的中交易信息一致;获取每个区块的交易信息后,可以根据每个
区块中的交易信息进行多次计算验证;核对该输出账户中比特币的数量。
[0035] 在本实施例中,获取该付款账户创立时生成的第一个区块与最后一个区块之间设有多个区块,每个区块均包括与上一区块数据关联的哈希值;修改第一区块中交易数据时,
需要修改下一区块至最后一区块中全部区块的交易数据;这样防止出现单个或者几个区块
的数据被更改的情况发生。
[0036] 在本实施例中,对输出私钥进行加密处理时,对输出私钥先进行一次可反向破解加密处理再进行一次不可反向破解加密处理得到密钥;其中,不可反向破解加密处理需要
通过公钥进行解密;其中,解密时先对密钥进行不可反向破解解密再进行可反向破解解密;
利用公钥解密密钥时,先将密钥嵌入执行软件中,向执行软件输入公钥后,执行软件作出解
密响应,并生成规律码;再根据规律码快速解密可反向破解加密,得到输出私钥。
[0037] 因为密钥的公钥需要在区块链上公布,所以,如果第三人通过各种手段得到了密钥也有可能将密钥解密成私钥;因此进行二次加密;第一次不可反向破解加密处理是为了
防止收款方(收比特币方)直接反向破解该密钥得到输出私钥,从而导致付款方的权宜收到
侵害;只有付款方(卖出比特币方)提供的公钥才能解密;第二次可反向破解加密是为了防
止第三人利用公钥解密密钥后和收款方同时得到输出私钥;因为收款方在利用公钥解密密
钥的同时会生成规律码;利用该规律码解密的速度快,远远快于第三人反向破解的速度;所
以收款方可以快速得到输出私钥,完成比特币的账户转移,第三人没有可乘之机。
[0038] 在本实施例中,不可以反向破解的加密方式是没有规律的,只能通过逐个验证的方式去尝试,而输出私钥为28位的散列值,每一位可以为数字、字母或者字符;因此这种逐
一尝试的方式运算量堪称天文数字,是不可能破解的;而可以存在规律的加密是一定可以
反向破解的,所以第二次加密时采用可反向破解的加密方式;如果不采用不可反向破解的
加密方式,则需要将该不可破解的加密方式的对应公钥必须在区块链上公布,第三人可以
和收款方同时得到该公钥,有可能第三方先解密得到输出私钥,转走交易的比特币;给收款
方和付款方同时造成损失;如果不将公钥在区块链上公布,则收款方可能抵赖,表示未收到
该公钥;也会影响到交易的公平;考虑到上述因素,故对输出私钥进行二次加密处理。
[0039] 在本实施例中,通过智能合约连接区块链网络时,需要进行身份验证;身份验证通过后接收区块链节点发送的解密请求;并发送解密公钥至区块链网络。
[0040] 在本实施例中,智能合约是旨在自动执行机器可读合同或协议的条款的计算机程序。与使用自然语言编写的传统合约不同,智能合约是一种机器可执行程序,它包含可以处
理输入以产生结果的规则,然后可以根据这些结果执行操作。
[0041] 在本实施例中,智能合约连接区块链网络时,需要进行身份验证是为了进一步保证只有付款方才能发出公钥;避免其他人发的公钥的干扰。
[0042] 本发明还提供了一种用于增强型比特币钱包的交易系统,包括
[0043] 生成装置:生成用于从离线钱包定量输出比特币的输出私钥;其中,私钥为128位的散列值;
[0044] 加密装置:对输出私钥进行加密处理,得到密钥;
[0045] 通讯装置:通过智能合约连接区块链网络,并在接收到区块链节点发送的解密请求后,发送解密公钥至区块链网络;解密公钥用于将密钥解密成输出私钥。
[0046] 实例1:参阅图2,收款方账户A,付款方账户B;付款方通过生成装置生成输出私钥S,再将输出私钥S进行二次加密得到密钥M;付款方将密钥M通过离线方式提供给收款方后;
收款方再通过线上区块链网络查询该付款方的账户比特币额度是够满足交易条件;在核对
无误后向付款方支付相应的等价物,再通过区块链网络发送解密请求,付款方在收到付款
方支付相应的等价物后,通过智能合约连接区块链网络,并进行身份验证,验证通过后发送
解密公钥G至区块链网络;收款方利用该公钥对密钥M进行快速解密得到,输出私钥S,最后
通过输出私钥将比特币从付款方账户转移至自己账户(收款方账户)。
[0047] 本发明还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现用于增强型比特币钱包的交易方法。
[0048] 本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的增强型比特币钱包的交易方法。
[0049] 另外,本申请的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行
时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的增
强型比特币钱包的交易方法。
[0050] 其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的
方法中的有益效果,此处不再赘述。
[0051] 通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中可以根据需要而将上述功能分
配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述
的全部或者部分功能。
[0052] 在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,
仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以
结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论
的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或
通信连接,可以是电性,机械或其它的形式。
[0053] 作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个
不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目
的。
[0054] 另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单
元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0055] 集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者
说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现
出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片
机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述
的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器
(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0056] 本发明的优势在于:
[0057] 1、与现有技术相比,在离线交易时,收款方无法连入网络对付款方拥有的比特币数量进行验证,收款方对付款方是不信任的,要保证交易的公平性,付款方也不能完全信任
收款方,因此付款方只提供密钥给收款方;这样收款方在线上后验证付款方的比特币数量,
核实无误后;再由付款方通过线上提供唯一解密方式;从而实现在离线情况下建立公平的
交易方式。
[0058] 2、第一次不可反向破解加密处理是为了防止收款方(收比特币方)直接反向破解该密钥得到输出私钥,从而导致付款方的权宜收到侵害;只有付款方(卖出比特币方)提供
的公钥才能解密;
[0059] 3、第二次可反向破解加密是为了防止第三人利用公钥解密密钥后和收款方同时得到输出私钥;因为收款方在利用公钥解密密钥的同时会生成规律码;利用该规律码解密
的速度快,远远快于第三人反向破解的速度;所以收款方可以快速得到输出私钥,完成比特
币的账户转移,第三人没有可乘之机。
[0060] 以上公开的仅为本发明的几个具体实施例,但是本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。