From 47ef42d5e4eb965eb2303d8dab143570e15ff331 Mon Sep 17 00:00:00 2001 From: derpy-duck <115193320+derpy-duck@users.noreply.github.com> Date: Tue, 19 Sep 2023 12:00:29 -0400 Subject: [PATCH] remove replay protection --- src/HelloWormhole.sol | 8 +------- src/extensions/HelloWormholeConfirmation.sol | 3 +-- src/extensions/HelloWormholeProtections.sol | 3 +-- 3 files changed, 3 insertions(+), 11 deletions(-) diff --git a/src/HelloWormhole.sol b/src/HelloWormhole.sol index 7acdad8..fcaac63 100644 --- a/src/HelloWormhole.sol +++ b/src/HelloWormhole.sol @@ -33,21 +33,15 @@ contract HelloWormhole is IWormholeReceiver { ); } - mapping(bytes32 => bool) public seenDeliveryVaaHashes; - function receiveWormholeMessages( bytes memory payload, bytes[] memory, // additionalVaas bytes32, // address that called 'sendPayloadToEvm' (HelloWormhole contract address) uint16 sourceChain, - bytes32 deliveryHash // this can be stored in a mapping deliveryHash => bool to prevent duplicate deliveries + bytes32 // delivery hash - unique identifier of delivery ) public payable override { require(msg.sender == address(wormholeRelayer), "Only relayer allowed"); - // Ensure no duplicate deliveries - require(!seenDeliveryVaaHashes[deliveryHash], "Message already processed"); - seenDeliveryVaaHashes[deliveryHash] = true; - // Parse the payload and do the corresponding actions! (string memory greeting, address sender) = abi.decode(payload, (string, address)); latestGreeting = greeting; diff --git a/src/extensions/HelloWormholeConfirmation.sol b/src/extensions/HelloWormholeConfirmation.sol index 5cd9918..c11fd5e 100644 --- a/src/extensions/HelloWormholeConfirmation.sol +++ b/src/extensions/HelloWormholeConfirmation.sol @@ -52,14 +52,13 @@ contract HelloWormholeConfirmation is Base, IWormholeReceiver { bytes[] memory, // additionalVaas bytes32 sourceAddress, uint16 sourceChain, - bytes32 deliveryHash + bytes32 // delivery hash ) public payable override onlyWormholeRelayer isRegisteredSender(sourceChain, sourceAddress) - replayProtect(deliveryHash) { MessageType msgType = abi.decode(payload, (MessageType)); diff --git a/src/extensions/HelloWormholeProtections.sol b/src/extensions/HelloWormholeProtections.sol index 2755aa2..2067219 100644 --- a/src/extensions/HelloWormholeProtections.sol +++ b/src/extensions/HelloWormholeProtections.sol @@ -35,14 +35,13 @@ contract HelloWormholeProtections is Base, IWormholeReceiver { bytes[] memory, // additionalVaas bytes32 sourceAddress, uint16 sourceChain, - bytes32 deliveryHash + bytes32 // delivery hash ) public payable override onlyWormholeRelayer isRegisteredSender(sourceChain, sourceAddress) - replayProtect(deliveryHash) { (string memory greeting, address sender) = abi.decode(payload, (string, address)); latestGreeting = greeting;