diff --git a/src/main/java/com/adyen/util/HMACValidator.java b/src/main/java/com/adyen/util/HMACValidator.java index f19fb07a1..c915c273b 100644 --- a/src/main/java/com/adyen/util/HMACValidator.java +++ b/src/main/java/com/adyen/util/HMACValidator.java @@ -73,11 +73,12 @@ public String calculateHMAC(NotificationRequestItem notificationRequestItem, Str return calculateHMAC(getDataToSign(notificationRequestItem), key); } - // Calculate HMAC for BankingWebhooks and ManagementWebhooks (Generic webhooks) - public boolean validateHMAC(String hmacKey, String hmacSignature, String payload) throws SignatureException { - String calculatedSign = calculateHMAC(payload, hmacSignature); - final byte [] expectedSign = calculatedSign.getBytes(StandardCharsets.UTF_8); - final byte[] merchantSign = hmacKey.getBytes(StandardCharsets.UTF_8); + //Calculate HMAC for BankingWebhooks and ManagementWebhooks (Generic webhooks) + //First parameter is hmacSignature which is get from webhook and the second hmackey which is configured + public boolean validateHMAC(String hmacSignature, String hmacKey, String payload) throws SignatureException { + String calculatedSign = calculateHMAC(payload, hmacKey); + final byte[] expectedSign = calculatedSign.getBytes(StandardCharsets.UTF_8); + final byte[] merchantSign = hmacSignature.getBytes(StandardCharsets.UTF_8); return MessageDigest.isEqual(expectedSign, merchantSign); }