我读过关于事务可伸缩性的文章,并对此提出了一些问题,请帮助:It states, for transaction malleability a person changes the signature such that the transaction remains valid,所以我的问题是,尽管它是私钥,但任何人如何才能看到和更改发件人的签名呢?接收方如何能够更改签名?
发布于 2020-05-08 18:28:58
签名不是发件人的私钥,但它指的是用发件人的私钥签名的消息或事务。由于矿工必须用发送者的公钥来验证交易的签名,所以网络中的每个人都必须看到这些签名。
如何在不改变其有效性的情况下实际修改这些签名是另一个主题,我认为这篇关于比特币的文章解释得相当好:比特币的交易延展性。
发布于 2022-01-12 08:27:53
来自这里
交易可延展性是由于比特币实现中的一个缺陷而出现的比特币攻击。由于这个错误,对手可能在事务“确认”之前更改其事务ID,从而导致出现一个似乎没有执行某个事务的场景。这可以允许出现双重存款或提款的情况。换句话说,该bug允许在比特币交易被确认之前更改其唯一ID。如果在确认之前更改了ID,而没有使事务无效,则事务似乎根本没有发生,这会给人一种错误的印象,认为事务没有被执行,从而允许双重存款或取款攻击。
假设A把钱寄给B,B把这笔未经证实的资金寄给C。
A => B => C同时,C将其产品装运给B,B在收到其产品后,再向A付款。因此,事务A到B将使用不同的事务id进行确认。因此,事务B到C现在将是无效的,因为它依赖于事务A到B的id,而该id现在已经不存在了,因为它被更改了。所以C不会得到报酬,但是B会得到它的产品
你可以更多在这里
SegWit解决了这个问题:您可以在这里读
https://ethereum.stackexchange.com/questions/83187
复制相似问题