Copyable Example Code
You can paste this into the code editor; still verify target image, region, color, text, and timing values in your own device flow.
-- Webhook imza dogrulama / Webhook signature verification
-- Gonderici taraf: HMAC-SHA256 ile imzalar
-- Alici taraf: ayni anahtar + sabit-sureli karsilastirma
local sharedSecret = "ornek-paylasilan-anahtar"
local payload = '{"event":"macro.completed","macroId":"abc123"}'
-- Imza uret (gonderici)
local signature = Crypto.hmacSha256(sharedSecret, payload)
toast("Imza: " .. signature:sub(1, 16) .. "...")
-- Simule edilen alinan imza
local receivedSignature = signature
-- Sabit-sureli karsilastirma — zamanlama saldirisina karsi guvenli
if Crypto.constantTimeEquals(signature, receivedSignature) then
toast("Imza gecerli, payload guvenli")
else
toast("Imza ESLESMIYOR — payload reddedildi")
end
-- Nonce orneği — replay saldirisi onleme
local nonce = Crypto.randomBytes(16)
local stampedPayload = payload .. "|" .. nonce
local stampedSig = Crypto.hmacSha256(sharedSecret, stampedPayload)
KV.set("son_nonce", nonce)