一种防止交易跨链重放的方法、装置及电子设备制造方法及图纸

技术编号:26226321 阅读:21 留言:0更新日期:2020-11-04 11:04
本说明书实施例涉及一种防止交易跨链重放的方法、装置及电子设备,主要包括:根据待签名的交易内容计算第一交易初始摘要;根据所述第一交易初始摘要和创世块摘要计算交易摘要;对所述交易摘要进行签名并发送交易;根据接收到的签名交易中的交易内容计算第二交易初始摘要;根据所述第二交易初始摘要和创世块摘要计算验证交易摘要;根据所述验证交易摘要和交易签名验证交易的合法性。通过在用户构造交易的过程中,需要将交易内容与创世块摘要一并参与计算交易摘要,用户再根据得到的交易摘要进行签名。节点在进行验签的时候,也需要包含创世块的摘要进行验证,从而经济便捷地解决了交易跨链重放的问题。

【技术实现步骤摘要】
一种防止交易跨链重放的方法、装置及电子设备
本说明书实施例涉及网络
,尤其涉及一种防止交易跨链重放的方法、装置及电子设备。
技术介绍
在联盟链中,存在多个私有化部署的联盟链。例如参与方M可以同时在两个不同的联盟链chain-A和chain-B中,在这两个区块链系统中M都有参与,也都有发送交易的权限。如果参与方M在两个链中使用的是同一个私钥,则其在chain-A发送过的交易,有可能被恶意攻击者拿到chain-B上进行重放,这样对于chain-B无法判断交易是由M主动发出的还是由恶意攻击者进行的跨链重放。现有的一种方案是在交易中增加字段,比如增加链ID(chain_id)的字段,chain_id是私有化部署的时候,链进行初始化随机生成的,然后固化到创世块中且不允许被修改。通过在交易中增加chain_id字段,用户在发送交易的时候指定chain_id,节点在收到交易的时候通过判断chain_id是否匹配,通过这种方式来防止交易跨链重放。这种方式存在两个缺点,如果chain_id的范围不够大,很容易产生碰撞,同时,交易中chain_id的本文档来自技高网...

【技术保护点】
1.一种防止交易跨链重放的方法,应用于区块链系统,所述方法包括:/n根据待签名的交易内容计算第一交易初始摘要;/n根据所述第一交易初始摘要和创世块摘要计算交易摘要;/n对所述交易摘要进行签名并发送交易;/n根据接收到的签名交易中的交易内容计算第二交易初始摘要;/n根据所述第二交易初始摘要和创世块摘要计算验证交易摘要;/n根据所述验证交易摘要和交易签名验证交易的合法性。/n

【技术特征摘要】
1.一种防止交易跨链重放的方法,应用于区块链系统,所述方法包括:
根据待签名的交易内容计算第一交易初始摘要;
根据所述第一交易初始摘要和创世块摘要计算交易摘要;
对所述交易摘要进行签名并发送交易;
根据接收到的签名交易中的交易内容计算第二交易初始摘要;
根据所述第二交易初始摘要和创世块摘要计算验证交易摘要;
根据所述验证交易摘要和交易签名验证交易的合法性。


2.如权利要求1所述的方法,进一步包括:根据所述验证交易摘要和交易签名验证交易为合法时,所述交易进入交易池;
根据所述验证交易摘要和交易签名验证交易为非法时,所述交易被终止。


3.如权利要求2所述的方法,进一步包括:对所述区块链系统设置RPC接口,调取所述RPC接口获取所述创世块摘要。


4.如权利要求1-3所述的方法,进一步包括:所述创世块摘要包括创世块的时间戳、初始共识列表、区块链识别标识、初始配置参数中的一个或多个。


5.一种防止交易跨链重放的装置,应用于区块链系统,所述装置包括:
第一交易初始摘要模块:用于根据待签名的交易内容计算第一交易初始摘要;
交易摘要模块:根据所述第一交易初始摘要和创世块摘要计...

【专利技术属性】
技术研发人员:王晓亮张亚宁
申请(专利权)人:杭州溪塔科技有限公司
类型:发明
国别省市:浙江;33

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

1