Il modo più forte di controllare una ricevuta Trustvice è con codice che controlli tu, su una macchina che controlli tu, con chiavi che hai fissato tu. Questo post costruisce quel verificatore da zero. Alla fine avrai un unico modulo JavaScript senza dipendenze, un test vector che prova che funziona e una lista di casi che provano che fallisce quando deve.
Cosa ti serve#
Node 20 o successivo, o qualsiasi runtime il cui crypto.subtle supporti Ed25519: browser attuali, Deno, Bun e Cloudflare Workers vanno tutti bene. Nessun pacchetto da installare. Non ti serve nemmeno un account Trustvice: il test vector qui sotto è firmato con una chiave usa e getta generata per questo post.
Passo 1: salva il test vector#
Salva questo come receipt.json. È una ricevuta di test firmata con quella chiave usa e getta. Il body è solo illustrativo; conta che sia firmata davvero.
{
"version": "1",
"receiptId": "01JTEST0000000000000000000",
"issuedAt": "2026-10-01T00:00:00.000Z",
"type": "example.receipt",
"signatureKeyId": "LfPAIisXFvNmFhD6vBQbBw",
"body": {
"type": "example.receipt",
"contentSha256": "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
: ,
:
},
:
}
