Accept spaced CoinPay signature parts (#17)

This commit is contained in:
Autowebassat-blip 2026-06-12 06:04:41 +02:00 committed by GitHub
parent d558554da3
commit 9ed98ceaf7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 2 additions and 1 deletions

View file

@ -408,6 +408,7 @@ describe("POST /api/webhooks/coinpay", () => {
const timestamp = Math.floor(Date.now() / 1000).toString();
const signature = createHmac("sha256", secret).update(`${timestamp}.${payload}`).digest("hex");
expect(verifyCoinPayWebhook(payload, `t=${timestamp},v1=${signature}`, secret)).toBe(true);
expect(verifyCoinPayWebhook(payload, `t=${timestamp}, v1=${signature}`, secret)).toBe(true);
const response = await coinpayWebhook(

View file

@ -114,7 +114,7 @@ export function verifyCoinPayWebhook(
}
try {
const parts = signatureHeader.split(",");
const parts = signatureHeader.split(",").map((part) => part.trim());
const timestamp = parts.find((part) => part.startsWith("t="))?.slice(2);
const signature = parts.find((part) => part.startsWith("v1="))?.slice(3);
if (!timestamp || !signature) {