[发明专利]区块链钱包的交易方法及系统有效
申请号: | 201911226055.3 | 申请日: | 2019-12-04 |
公开(公告)号: | CN110992182B | 公开(公告)日: | 2023-06-16 |
发明(设计)人: | 林哲明;陈浩;陈建秋 | 申请(专利权)人: | 福州博泉网络科技有限公司 |
主分类号: | G06Q40/04 | 分类号: | G06Q40/04;G06Q20/36;G06Q20/38 |
代理公司: | 福州市众韬专利代理事务所(普通合伙) 35220 | 代理人: | 陈智雄 |
地址: | 350026 福建省福州市仓山区盖山*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 钱包 交易 方法 系统 | ||
1.一种区块链钱包的交易方法,其特征在于,包括以下步骤:
默克树服务器获取并保存区块链中每个区块的默克树信息,具体步骤为:按照记录的顺序获取一个区块中的所有交易的编号;从第一个交易编号开始,将每两个相邻的奇数个交易编号与偶数个交易编号合并后计算生成上一层的哈希值,若交易总数为奇数,则对最后一个交易编号计算生成上一层哈希值;对生成的哈希值重复执行上述操作,直至生成唯一的哈希值,得到该区块的默克树结构;保存前述步骤生成的默克树结构及当前区块高度;
区块链钱包使用公钥作为身份信息与转发服务器建立连接,具体步骤为:所述区块链钱包使用所有公钥分别与转发服务器建立长连接;或所述区块链钱包使用所有公钥与钱包代理建立长连接,所述钱包代理使用自身公钥与转发服务器建立长连接,同时所述区块链钱包在所述转发服务器上设置所有公钥的代理信息;其中,所述转发服务器为多个,每个转发服务器都将接收到的默克路径信息和交易信息发送给其他所有的转发服务器;
交易发起方区块链钱包向区块链发送交易信息;所述交易信息包括交易编号、发起方公钥、接收方公钥以及交易金额信息;
所述交易发起方区块链钱包更新账户余额和交易历史记录;
所述交易发起方区块链钱包向所述默克树服务器查询当前交易的默克路径信息;
所述交易发起方区块链钱包将所述默克路径信息和所述交易信息发送给所述转发服务器;
所述转发服务器根据所述交易信息中的接收方公钥将所述交易信息以及所述默克路径信息发送给交易接收方;
所述交易接收方根据所述默克路径信息进行交易验证并确认交易。
2.如权利要求1所述的区块链钱包的交易方法,其特征在于,所述交易发起方区块链钱包更新账户余额和交易历史记录,具体为:
若所述交易发起方区块链钱包与转发服务器直接连接,则在本地更新账户余额和交易历史记录;
若所述交易发起方区块链钱包通过钱包代理与转发服务器进行连接,则将所述账户余额和交易历史记录发送给钱包代理,由所述钱包代理更新账户余额和交易历史记录。
3.如权利要求1所述的区块链钱包的交易方法,其特征在于,所述交易发起方区块链钱包将所述默克路径信息和所述交易信息发送给所述转发服务器,具体为:
若所述交易发起方区块链钱包与转发服务器直接连接,则发送所述默克路径信息和所述交易信息给所述转发服务器;
若所述交易发起方区块链钱包通过钱包代理与转发服务器进行连接,则将所述默克路径信息和所述交易信息发送给钱包代理,由所述钱包代理再发送给转发服务器。
4.如权利要求1所述的区块链钱包的交易方法,其特征在于,所述转发服务器根据所述交易信息中的接收方公钥将所述交易信息以及所述默克路径信息发送给交易接收方,具体为:
所述转发服务器将接收到的消息进行保存;
若所述交易接收方区块链钱包的公钥已指定代理信息,则根据钱包代理的公钥查找相应的连接,并发送所述交易信息以及所述默克路径信息;
若所述交易接收方区块链钱包的公钥未指定代理信息,则根据所述交易接收方区块链钱包的公钥查找相应的连接,并发送所述交易信息以及所述默克路径信息。
5.如权利要求1所述的区块链钱包的交易方法,其特征在于,所述交易接收方根据所述默克路径信息进行交易验证并确认交易,包括以下步骤:
交易接收方获取并保存区块链中每个区块的头部信息;所述交易接收方为区块链钱包或钱包代理;
所述交易接收方根据交易编号和所述默克路径信息计算默克树的根;
所述交易接收方将计算得到的默克树的根与从对应高度区块头部信息获取的默克树的根进行对比,若两者相等,则认为该交易有效,更新账户余额和交易历史记录。
6.一种区块链钱包的交易系统,其特征在于,包括默克树服务器、区块链钱包、转发服务器以及钱包代理,其中,
默克树服务器,用于获取并保存区块链中每个区块的默克树信息,具体步骤为:按照记录的顺序获取一个区块中的所有交易的编号;从第一个交易编号开始,将每两个相邻的奇数个交易编号与偶数个交易编号合并后计算生成上一层的哈希值,若交易总数为奇数,则对最后一个交易编号计算生成上一层哈希值;对生成的哈希值重复执行上述操作,直至生成唯一的哈希值,得到该区块的默克树结构;保存前述步骤生成的默克树结构及当前区块高度;同时可根据提供的交易编号进行默克路径信息查询;
区块链钱包,用于使用公钥作为身份信息与转发服务器建立连接,具体步骤为:所述区块链钱包使用所有公钥分别与转发服务器建立长连接;或所述区块链钱包使用所有公钥与钱包代理建立长连接,所述钱包代理使用自身公钥与转发服务器建立长连接,同时所述区块链钱包在所述转发服务器上设置所有公钥的代理信息;用于向区块链发送交易信息,并更新账户余额和交易历史记录;用于向所述默克树服务器查询当前交易的默克路径信息,同时将所述默克路径信息和所述交易信息发送给所述转发服务器;用于接收转发服务器发送的所述默克路径信息以及所述交易信息,并根据所述默克路径信息进行交易验证并确认交易;
转发服务器,用于所述区块链钱包、钱包代理的身份验证及连接管理;用于接收交易发起方区块链钱包发送的所述默克路径信息和所述交易信息;用于根据所述交易信息中的接收方公钥将所述交易信息以及所述默克路径信息发送给交易接收方;所述交易接收方为区块链钱包或钱包代理;所述转发服务器为多个,每个转发服务器都将接收到的所述默克路径信息和所述交易信息发送给其他所有的转发服务器;
钱包代理,使用自身公钥与转发服务器建立长连接,同时与其管理的区块链钱包建立长连接,用于更新其管理的交易发起方区块链钱包的账户余额和交易历史记录信息;用于接收其管理的交易发起方区块链钱包发送的所述默克路径信息和所述交易信息,并发送给转发服务器;用于接收转发服务器发送的所述默克路径信息以及所述交易信息,并根据所述默克路径信息进行交易验证并确认交易。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福州博泉网络科技有限公司,未经福州博泉网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911226055.3/1.html,转载请声明来源钻瓜专利网。