web3wagmi
← All standards

ERC-7573 Conditional-upon-Transfer-Decryption for DvP

DraftERCcreated 2023-12-05

A Protocol for Secure Delivery-versus-Payment across two Blockchains

Authors: Christian Fries (@cfries), Peter Kohl-Landgraf (@pekola)

ERC-165 interface ids

Computed here as the XOR of the selectors each interface defines.

ILockingContract0x565cc6b5
IDecryptionContractWithKeyGeneration0xeca75ea1

Functions this standard introduces (11)

0x14cd28f7cancelTransfer(uint256,int256,address,address,bytes,bytes,bytes)
0x59caecb5cancelTransfer(uint256)
0xdedd6f29completeLock(uint256)
0x47f48b5cconfirmTransfer(uint256,int256,address,address,bytes,bytes,bytes)
0xf1c64baagetInceptionContext(uint256)view
0xa3876e3egetInceptionKeyMaterial(uint256)view
0xbee67b35inceptTransfer(uint256,int256,address,address,bytes,address)
0xd391cd4finceptTransfer(uint256,int256,address,address,bytes,bytes,bytes)
0xc0406e5breleaseKey(uint256,bytes)
0x7f91094atransferAndDecrypt(uint256)
0xd6f4a851transferWithKey(uint256,bytes)

Inherited (1)

0xff3572bbonInceptionCompleted(uint256)IDECRYPTIONCONTRACTINCEPTIONCALLBACK

Events (6)

Topic0 is the keccak256 hash of the signature, which is what a log filter matches on.

0x56e98e2b1e9c0f252e3eab9d288774f4683dfc522194c5acc670c35594afd785TransferIncepted(uint256,int256,address,address,bytes,bytes,bytes)
0x17cfce3a2fabd452f2186411d47e179f3451278f038c617e2bbe058df780f8ccTransferConfirmed(uint256,int256,address,address,bytes,bytes,bytes)
0x726ca29b824ac540272a3ffa4bb935bc6e3ba655786c518b64f67ea6cadb0b8bTokenClaimed(uint256,bytes)
0x51ac4ceb0fd1f5a4c9e14a45a5752b8b50feb2d6df7ee13a0107bb935a321403TokenReclaimed(uint256,bytes)
0xc1a52360f3cec4442cfbf1d942bdf7de7c35e8f793a7168d2541ebd5df1d47c3TransferKeyRequested(address,uint256,bytes)
0xbbb8eee481e941905aa70814a90c555f03e9ea97f6c391aae6b9b482dd5b53d9TransferKeyReleased(address,uint256,bool,bytes)

What the specification covers

Compare with

Parsed from the canonical specification · discussion