一种区块链交易发起、验证方法及系统技术方案

技术编号:26690988 阅读:23 留言:0更新日期:2020-12-12 02:42
本说明书实施例公开了一种区块链交易发起、验证方法及系统。对于固定的交易内容,用户端发起以交易哈希值为标识的第一交易,第一交易包括交易内容和第一时间戳,所述交易哈希值为变色龙哈希函数以第一交易数据、第一随机因子和用户的公钥为输入时的输出。用户端确认第一交易上链失败后,至少基于第二交易数据和用户的私钥计算第二随机因子,并将以所述交易哈希值为标识的第二交易发送至所述区块链网络,第二交易包括第二交易数据、所述交易哈希值和第二随机因子,第二交易数据包括所述交易内容和第二时间戳。其中,第二随机因子使得所述变色龙哈希函数以第二交易数据、第二随机因子和所述用户的公钥为输入时的输出等于所述交易哈希值。

【技术实现步骤摘要】
一种区块链交易发起、验证方法及系统
本说明书涉及信息
,特别涉及一种区块链交易发起、验证方法及系统。
技术介绍
在区块链系统中,用户端发起的交易最终未必会被区块链节点执行(也称作上链失败)。用户端重新发起的交易不仅包含固定的交易内容,还包含修改过的交易时间戳,会出现固定的交易内容产生不同的交易哈希值的问题,对用户造成困扰。有鉴于此,希望提供一种修改交易时间戳后仍能保持交易哈希值不变的方案。
技术实现思路
本说明书实施例之一提供一种区块链交易发起方法。所述方法包括:获得第一交易数据,其中,所述第一交易数据包括交易内容和第一时间戳;获得第一随机因子;获得交易哈希值,并将以所述交易哈希值为标识的第一交易发送至区块链网络,其中,所述交易哈希值为变色龙哈希函数以将所述第一交易数据、所述第一随机因子和用户的公钥为输入时的输出,所述第一交易包括所述第一交易数据、所述交易哈希值和所述第一随机因子;确认所述第一交易的上链结果,若所述第一交易上链失败,则:获得第二交易数据,所述第二交易数据包括所述交易内容和第二时间戳;至少基于所述本文档来自技高网...

【技术保护点】
1.一种区块链交易发起方法,其中,包括:/n获得第一交易数据,其中,所述第一交易数据包括交易内容和第一时间戳;/n获得第一随机因子;/n获得交易哈希值,并将以所述交易哈希值为标识的第一交易发送至区块链网络,其中,所述交易哈希值为变色龙哈希函数以所述第一交易数据、所述第一随机因子和用户的公钥为输入时的输出,所述第一交易包括所述第一交易数据、所述交易哈希值和所述第一随机因子;/n确认所述第一交易的上链结果,若所述第一交易上链失败,则:获得第二交易数据,所述第二交易数据包括所述交易内容和第二时间戳;至少基于所述第二交易数据和所述用户的私钥计算第二随机因子,并将以所述交易哈希值为标识的第二交易发送至所...

【技术特征摘要】
1.一种区块链交易发起方法,其中,包括:
获得第一交易数据,其中,所述第一交易数据包括交易内容和第一时间戳;
获得第一随机因子;
获得交易哈希值,并将以所述交易哈希值为标识的第一交易发送至区块链网络,其中,所述交易哈希值为变色龙哈希函数以所述第一交易数据、所述第一随机因子和用户的公钥为输入时的输出,所述第一交易包括所述第一交易数据、所述交易哈希值和所述第一随机因子;
确认所述第一交易的上链结果,若所述第一交易上链失败,则:获得第二交易数据,所述第二交易数据包括所述交易内容和第二时间戳;至少基于所述第二交易数据和所述用户的私钥计算第二随机因子,并将以所述交易哈希值为标识的第二交易发送至所述区块链网络,其中,所述第二随机因子使得所述变色龙哈希函数以所述第二交易数据、所述第二随机因子和所述公钥为输入时的输出等于所述交易哈希值,所述第二交易包括所述第二交易数据、所述交易哈希值和所述第二随机因子。


2.如权利要求1所述的方法,其中,所述获得交易哈希值,包括:
将所述第一交易数据、所述第一随机因子和所述用户的公钥输入变色龙哈希函数,以计算所述交易哈希值。


3.如权利要求1所述的方法,其中,还包括:
将所述第二交易数据、所述第二随机因子和所述公钥输入所述变色龙哈希函数,以得到所述交易哈希值。


4.如权利要求1所述的方法,其中,所述第一交易还包括利用所述用户的私钥对第一签名消息的摘要生成的第一数字签名,所述第二交易还包括利用所述用户的私钥对第二签名消息的摘要生成的第二数字签名,所述第一签名消息包括所述第一交易数据、所述第一随机因子和所述交易哈希值,所述第二签名消息包括所述第二交易数据、所述第二随机因子和所述交易哈希值。


5.如权利要求1所述的方法,其中,所述方法还包括:
向所述用户返回所述交易哈希值。


6.如权利要求1所述的方法,其中,所述至少基于所述第二交易数据和所述用户的私钥计算第二随机因子,包括:
将所述第二交易数据、所述用户的私钥以及所述交易哈希值输入随机因子函数,以计算所述第二随机因子。


7.一种区块链交易发起系统,其中,包括:
第一交易数据获得模块,用于获得第一交易数据,其中,所述第一交易数据包括交易内容和第一时间戳;
第一随机因子获得模块,用于获得第一随机因子;
交易哈希值获得模块,用于获得交易哈...

【专利技术属性】
技术研发人员:李艳鹏陆旭明
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1