[发明专利]一种基于区块链多因子交叉验证的虚拟货币交易验证方法在审
申请号: | 201610250198.8 | 申请日: | 2016-04-21 |
公开(公告)号: | CN105931052A | 公开(公告)日: | 2016-09-07 |
发明(设计)人: | 陈文;李涛;董雪 | 申请(专利权)人: | 四川大学 |
主分类号: | G06Q20/40 | 分类号: | G06Q20/40 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 610065 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明针对基于区块链的虚拟货币易受到51%攻击而产生交易的双花问题,提出了一种基于多因子交叉验证的虚拟货币交易验证方法,该方法周期性的查询并备份历史区块链分支,将已确认过的交易信息组织成易于查询的哈希链表数组,避免了由于区块链进化而导致分支交易信息丢失;在虚拟货币进行交易时,不仅对当前主区块链中记录的支付方信息、接收方信息、资金来源、货币交易数量等进行检查,同时查询备份的分支区块链,检查当前交易是否与分支链上记录的历史交易存在同一资金来源,若有交易未能通过检查,则矿工针对该交易发出全网告警,从而避免由非法交易引起的double‑spending问题。 | ||
搜索关键词: | 一种 基于 区块 因子 交叉 验证 虚拟 货币 交易 方法 | ||
【主权项】:
一种基于多因子交叉验证的虚拟货币交易验证方法,其特征在于,所述方法包括以下步骤:(1)区块链周期性扫描步骤,采用如下方法:1)在主链上查找前一个周期扫描结束的区块,采用如下方法:(a) 若找到该结束区块,则以该区块作为本次扫描的起点区块StartBlock;(b)若主链发生变化,未能找到上一个周期的扫描结束区块,则继续查找前一个周期的结束区块,直至找到主区块链上某一个周期的扫描结束区块作为本周期的扫描起点区块StartBlock;2)从StartBlock开始沿主区块链向后检查分支区块链,采用如下方法:(a)若当前检测区块存在两个或两个以上直接后继区块,则检测到分支区块链,将块链最长的分支作为主区块链,其余为分支区块链,然后沿主区块链后移一个区块,继续查找分支区块链;(b)若当前检测区块只有一个后继区块,则沿主区块链后移一个区块,继续查找分支区块链;(c)若当前检测区块没有后继区块,则本周期的扫描过程结束,记录本次扫描结束时主链上区块号,作为下一扫描周期的起始区块;(2) 分支区块链交易信息保存步骤,采用如下方法:1) 以交易付款方地址address作为输入产生哈希值index = hash(address);2) 在哈希链表数组中查找索引值等于index的目标链表头,如未找到,则新建链表头,设置链表的索引值为index;3)在目标链表中插入新的交易记录节点,用于保存分支区块中的交易信息,包括:交易资金来源,付款方地址,收款人地址,交易金额,时间戳,以及付款方签名;(3) 基于主区块链的交易合法性验证步骤,采用如下方法:1) 资金来源追溯验证:该步骤根据交易单上注明的资金来源信息,回溯主区块链,查询虚拟货币的来源是否与交易付款方地址一致,且资源来源金额应大于或等于交易转账金额,否则发出非法交易警报;2) 交易有效性验证:该步骤根据付款方地址,资金来源信息,交易金额查询主区块链,验证付款方给出的资金来源信息的有效性,若本次交易的资金来源已在过去的交易中支付给了其他收款方,则认为发生了双花交易,矿工向全网发出双花警报;(4) 基于分支区块链的交易合法性验证步骤,采用如下方法:1) 以交易付款方地址address作为输入产生哈希值index = hash(address);2)在哈希链表数组中查找索引值等于index的目标链表头,如未找到,则直接通过分支验证;3)从链表头开始逐一查找链表中的节点,若本次交易的资金来源已在某一链表节点记录的交易中支付给了其他收款方,则认为发生了双花交易,矿工向全网发出双花告警。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川大学,未经四川大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610250198.8/,转载请声明来源钻瓜专利网。