Kryptografinen tosiasioiden varmennus tekoalylle
Maailman ensimmainen avoin protokolla yritysfaktojen varmennukseen.
Kuvaile faktat JSON-tiedostossa
Jokainen fakta allekirjoitetaan ed25519:lla
Kuka tahansa voi varmistaa allekirjoitukset
Liita verified-facts.json URL
Yritykset joilla on varmennetut allekirjoitukset
Luo verified-facts.json ja laheta tarkistettavaksi
Spesifikaatio ja esimerkki
// Verify a fact from verified-facts.json
import { verify } from '@noble/ed25519';
async function verifyFact(claim, signature, publicKey) {
const msgHash = new Uint8Array(
await crypto.subtle.digest('SHA-256',
new TextEncoder().encode(claim))
);
const sig = Uint8Array.from(atob(signature), c => c.charCodeAt(0));
const pub = Uint8Array.from(atob(publicKey), c => c.charCodeAt(0));
return verify(sig, msgHash, pub);
}
// Usage:
const url = 'https://example.com/.well-known/verified-facts.json';
const data = await fetch(url).then(r => r.json());
for (const fact of data.facts) {
const valid = await verifyFact(
fact.claim, fact.signature, data.publicKey.value
);
console.log(fact.id, valid ? '✓' : '✗', fact.claim);
}Muuttumattomat aikaleimat Polygonissa + NFT-todistus.