Intégrité

Vérifiez cette archive par vous-même.

Chaque fichier livré avec cette archive possède un hachage SHA-256 publié. Cette page recalcule ces hachages dans votre navigateur — à l'aide de l'API Web Crypto déjà intégrée à votre navigateur — et les compare au manifeste. Aucun point d'accès au serveur kakao.io n'est sollicité dans la chaîne de confiance. Si quoi que ce soit a été altéré entre le dépôt source et votre écran, la vérification échoue de manière visible.

Posture « zéro confiance » — le vérificateur est du JavaScript ordinaire intégré à cette page. Vous pouvez le lire avec « Afficher la source ». Il récupère le jeu de données, en calcule le hachage localement, récupère le manifeste, puis compare. Le résultat est calculé sur votre machine.

Vérifier cacao-origins.json

Vérifier tous les fichiers sources

Vérifier un enregistrement d'origine précis

Vérifier le hachage du jeu de données en ligne de commande

Si vous préférez ne pas vous fier au code du navigateur, la même vérification est triviale avec les outils Unix standards.

# Verify the dataset hash matches:
curl -s https://kakao.io/data/cacao-origins.json | shasum -a 256
# Compare against the hash in:
curl -s https://kakao.io/.well-known/source-manifest.json \
  | jq '.files["data/cacao-origins.json"]'

Vérifier les preuves OpenTimestamps localement

Chaque enregistrement d'origine est également horodaté avec OpenTimestamps — un protocole d'horodatage gratuit ancré dans Bitcoin. La preuve replie le SHA-256 de l'enregistrement dans un en-tête de bloc Bitcoin publié, de sorte que l'existence de l'enregistrement à l'horodatage de ce bloc est cryptographiquement attestable sans nous faire confiance ni dépendre d'une autorité d'horodatage.

# Install the OpenTimestamps client:
pip3 install opentimestamps-client

# Download an origin record and its proof:
curl -O https://kakao.io/data/ots/records/ve-chuao.json
curl -O https://kakao.io/data/ots/records/ve-chuao.json.ots

# Verify — folds the Bitcoin block hash into a verification chain:
ots verify ve-chuao.json.ots

Fonctionnement

Le SHA-256 est calculé dans votre navigateur via window.crypto.subtle.digest — la même primitive que celle utilisée par TLS et HTTPS, disponible dans tous les navigateurs modernes sans polyfill. Le manifeste est un petit fichier JSON qui liste le hachage attendu pour chaque fichier livré. Les preuves OpenTimestamps sont soumises à des serveurs de calendrier publics puis agrégées dans la blockchain Bitcoin — sans compte, sans frais, sans autorité centrale à qui faire confiance. Les trois vérifications ci-dessus sont du pur calcul côté client.