技术领域
[0001] 本
发明实施例涉及
加密货币提取技术领域,具体涉及一种加密货币自动提取方法及系统。
背景技术
[0002] 近年来,随着的基于
区块链技术的加密货币广为应用,越来越多的B2C模式的互联网平台开始支持加密货币如
比特币、以太坊等,这些平台上的会员使用加密货币支付平台上的服务,会员也可以在平台付出精
力赚取加密货币收入,这些平台通常在
数据库中保存平台会员的账户余额,会员在平台消费时会扣减余额,会员赚取了加密货币会增加余额。因此平台需要提供一个支持加密货币的提取系统,这个系统也叫平台的热钱包,会员可以充值加密货币到余额,也可以将余额对应的加密货币提取到个人
加密货币钱包。加密货币充值是一个入金方向比较简单,平台提供地址给会员即可,平台加密货币安全能够保证,而加密货币提取属于平台资金出口,保证加密货币资金安全非常重要。
[0003] 现有这些互联网平台通常的做法是采用某个加密货币官方提供的带有区块链全
节点的加密货币钱包来完成会员提取加密货币,这种加密货币的提取方式存在如下
缺陷:
[0004] (1)此钱包为加密货币全节点钱包,钱包私钥和区块链全节点无法做到分离,钱包私钥存在触网的安全
风险,一旦有安全漏洞被黑客攻破,黑客从加密货币钱包所在的
服务器拿到钱包私钥,则钱包内的所有加密货币都可能被黑客盗取;
[0005] (2)为了要实现加密货币提取的自动化,
现有技术是通过业务系统调用钱包提供的
接口实现货币提取,这样会将钱包的
访问接口暴露出来,一旦调用权限被恶意控制,存在钱包的加密资产可能被恶意提取的危险。
发明内容
[0006] 为此,本发明实施例提供一种加密货币自动提取方法及系统,采用一种交易、签名、区块数据分离的系统结构,将与P2P网络同步的区块链全节点和钱包分离,保证钱包不触网防止外来攻击风险,屏蔽了业务系统直接调用钱包接口,能够防止钱包接口调用权限被恶意控制和调用,避免来自平台内部攻击风险,以解决现有技术中的问题。
[0007] 为了实现上述目的,本发明的实施方式提供如下技术方案:一种加密货币自动提取系统,包括交易机、签名机和节点机;
[0008] 所述节点机是加密货币的区块链网络全节点,与区块链P2P网络保持同步,用于获取最新的区块数据信息和交易信息;
[0009] 所述交易机负责从业务系统获取加密货币的提取
请求,并生成未签名的提币交易;
[0010] 所述签名机存储加密的钱包私钥,负责接受来自交易机的交易签名请求,将签名后的交易发送回交易机。
[0011] 作为本发明的一种优选方案,所述交易机通过轮询方式获取业务系统的加密货币提取请求,验证提取请求信息的有效性后,生成加密货币的未签名交易。
[0012] 作为本发明的一种优选方案,所述交易机将未签名提币交易发给签名机进行签名认证,同时所述交易机还可接收签名机的已签名提币交易,并将已签名的提币交易转发到节点机广播。
[0013] 作为本发明的一种优选方案,所述交易机不接受其他系统直接访问,所述交易机可以访问节点机和签名机,而所述签名机只接受交易机访问。
[0014] 作为本发明的一种优选方案,所述节点机可高效查找区块链状态数据,所述交易机从节点机内获取区块数据,查询用户的所有交易信息。
[0015] 另外本发明还提供了一种加密货币自动提取方法,包括如下步骤:
[0016] 步骤100、业务端发生提取加密货币操作,业务系统生成货币待提取记录,并对货币待提取记录标记出防篡改签名;
[0017] 步骤200、交易机从业务系统内拉取货币待提取记录,并校验防篡改签名的真伪;
[0018] 步骤300、交易机根据防篡改签名后的待提取记录信息,构建待签名加密货币转账交易,并且交易机通过加密通信协议将加密货币转账交易发送给签名机;
[0019] 步骤400、签名机验证交易
机身份和待签名加密货币转账交易的有效性,实时从签名机本地的加密私钥文件中提取出私钥,将待签名转账交易进行签名,生成签名转账交易,并将已签名的转账交易信息重新发送给交易机;
[0020] 步骤500、交易机收到签名机返回的已签名转账交易,调用节点机提供的接口,将已签名货币交易广播到区块链网络,完成加密货币的提取。
[0021] 作为本发明的一种优选方案,在步骤100中,所述业务系统用于与
网站会员直接交互,接受网站会员提交的加密货币提取表单,并将加密货币提取表单组装成加密货币自动提取系统能够接受的待提取记录格式。
[0022] 作为本发明的一种优选方案,在步骤300中,构建待签名加密货币转账交易时,通常需要查询节点验证平台
虚拟货币地址上拥有的未花费交易集。
[0023] 作为本发明的一种优选方案,在步骤500中,所述交易机将已签名交易广播到区块链网络,所述已签名交易加入到节点机的一个区块。
[0024] 作为本发明的一种优选方案,在步骤500中,当交易机通过节点机提供的接口广播已签名交易到区块链网络后,交易机通知业务系统该笔交易发送成功。
[0025] 本发明的实施方式具有如下优点:
[0026] (1)本发明的加密货币提取系统采用一种交易、签名、区块数据分离的系统结构,将区块链全节点和钱包分离,保证钱包不触网防止外来攻击风险;
[0027] (2)本发明的加密货币提取系统中屏蔽了业务系统直接调用钱包接口,能够防止钱包接口调用权限被恶意控制和调用,避免来自平台内部攻击风险。
附图说明
[0028] 为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
[0029] 本
说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。
[0030] 图1为本发明提取加密货币系统的结构
框图;
[0031] 图2为本发明提取加密货币方法的结构框图;
[0032] 图3为本发明提取加密货币方法的操作示意图。
具体实施方式
[0033] 以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0034] 如图1所示,本发明提供了一种加密货币自动提取系统,包括交易机、签名机和节点机。本发明交易机、签名机和节点机三个区块链的全节点为分离状态,并且网络同步的区块链全节点和钱包分离,保证签名机不触网,从而防止钱包私钥受到外来攻击风险。
[0035] 节点机是加密货币的区块链网络全节点,与区块链P2P网络保持同步,用于获取最新的区块数据信息和交易信息,区块数据具体是指被所有节点共享的账本数据,节点机可高效查找区块链状态数据。
[0036] 在这里需要说明的是,P2P(peer-to-peer)网络又称为对等式网络,或者点对点网络,这是一种无中心服务器、完全由用户群进行交换信息的互联网体系,P2P网络的每一个用户即是一个客户端,同时也具备服务器的功能。
[0037] 采用P2P技术实现的每台计算机既是客户端,也是服务器,他们的功能都是对等的。对于安装了P2P
软件的计算机加入一个共同的P2P网络,网络中的节点之间可以直接进行数据传输和通信。
[0038] 因此本实施方式的节点机、交易机和签名机使用同一个P2P网络,相互之间可以直接进行数据传输和通信。
[0039] 交易机负责从业务系统获取加密货币的提取请求,并生成未签名的货币提币交易,交易机不接受其他系统直接访问,并且交易机可以访问节点机和签名机,而签名机只接受交易机访问。
[0040] 签名机存储加密的钱包私钥,负责接受来自交易机的交易签名请求,将签名后的交易发送回交易机。
[0041] 交易机和签名机主要负责对货币提取请求的响应处理,交易机通过轮询方式获取业务系统的加密货币提取请求,验证提取请求信息的有效性后,生成加密货币的未签名交易,并且将未签名的提币交易发给签名机进行签名认证。
[0042] 签名完成后,交易机反向接收签名机的已签名提币交易,并将已签名的提币交易转发到节点机广播,完成加密货币的提取,交易机可以从节点机内获取区块数据,查询用户的所有交易信息。
[0043] 根据上述加密货币的提取过程可知,在整个货币提取过程,数据传输的只是提币交易信息表,因此整个系统在货币提取交易过程中,不采用钱包接口外暴露的方式,而是采用逆向拉取业务系统中的待提取记录的通信方式,因此保证签名机不触网,能够保护热钱包系统免受外来攻击。
[0044] 为了细化自动提取系统的工作步骤,如图2和图3所示,本发明还提供了一种加密货币自动提取方法,包括如下步骤:
[0045] 步骤100、业务端发生提取加密货币操作,业务系统生成货币待提取记录,并对货币待提取记录标记防篡改签名。
[0046] 业务系统用于与网站会员直接交互,接受网站会员提交的加密货币提取表单,并将加密货币提取表单组装成加密货币自动提取系统能够接受的待提取记录格式,生成货币待提取交易表格。
[0047] 步骤200、交易机从业务系统内拉取货币待提取记录,并校验防篡改签名的真伪。
[0048] 交易机验证货币待提取记录的真伪,实现整个货币提取过程中的一级保护,如果交易机验证防篡改签名是伪造的,则直接拒绝货币提取交易的继续进行,如果交易机验证防篡改签名是真实的,则可进行下一步的签名认证操作。
[0049] 步骤300、交易机根据防篡改签名后的待提取记录信息,构建待签名加密货币转账交易,并且交易机通过加密通信协议将加密货币转账交易发送给签名机。
[0050] 在构建待签名加密货币转账交易时,通常需要查询节点验证平台虚拟货币地址上拥有的未花费交易集,如果未花费交易集的总额度小于提取额度,则可以进行提醒操作。
[0051] 步骤400、签名机验证交易机身份和待签名加密货币转账交易的有效性,实时从签名机本地的加密私钥文件中提取出私钥,对待签名转账交易进行签名,生成签名转账交易,并将已签名的转账交易信息重新发送给交易机。
[0052] 此步骤进行签名时,利用签名机内部使用私钥确认货币提取,屏蔽了业务系统直接调用钱包接口,能够防止钱包接口调用权限被恶意控制和调用,避免来自平台内部攻击风险。
[0053] 并且由于交易、签名、节点区块数据为分离的系统结构,因此加密私钥不能被其他的结构任意调用,因此保证钱包不触网防止外来攻击风险。
[0054] 步骤500、交易机收到签名机返回的已签名转账交易,调用节点机提供的接口,交易机将已签名转账交易广播到区块链网络,完成加密货币的提取。
[0055] 在步骤500中,交易机将已签名转账交易广播到区块链网络,所述已签名转账交易加入到节点机的一个区块形成区块数据,可保留
交易记录,方便后期的查询校对。并且当交易机通过节点机提供的接口广播已签名交易到区块链网络后,交易机通知业务系统该笔交易发送成功。
[0056] 虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明
基础上,可以对之作一些
修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。