Replay Attack
Definition
In blockchain industry, a Replay Attack is an attack technique that acquires transaction info from old transactions and submits it to new chains, smart contracts or other targets.
Generally in Ethereum-like chains, there are two kinds of replay attacks:
Transaction signature replay: Send the raw signature of one transaction to a chain. If it's the same chain as the original transaction, it won't work since there is
nonce
prohibiting this kind of behaviour. When it's a cross-chain transaction replay, it depends on whether the original transaction and target chain consensus have utilised EIP-155, which containschainId
to prevent cross-chain replay.Transaction data replay: Here
data
means exactly thedata
field in one transaction. By data copied from someone else, the attack could exploit a contract with awful membership/identity verification.
In transaction signature replay, the transaction looks like it was sent by the original sender, but actually it's the hacker who initiated the transaction, but we barely have measures to distinguish.
Other Details
Obtain raw signature of one transaction
Web3.js
From Etherscan.io
Some transaction -> ...
Icon -> Get Raw Tx Hex.
Note: The result is in serialised format(RLP encoded). You need to convert it to human readable format with some tools like https://flightwallet.github.io/decode-eth-tx/.
Last updated