Intégrez la preuve d'authenticité
en quelques minutes
Certifiez n'importe quel fichier avec un horodatage et une signature cryptographique. Les fichiers de vos utilisateurs sont hachés côté client — jamais téléversés, jamais stockés.
Comment ça marche
Trois étapes. Aucun fichier téléversé. La preuve est vérifiable mathématiquement par quiconque, partout, pour toujours.
Le SDK calcule une empreinte numérique du fichier sur l'appareil de l'utilisateur. Le fichier original ne quitte jamais le navigateur ni le serveur.
Côté clientEvidencia signe l'empreinte avec une clé cryptographique et émet un reçu horodaté — la preuve d'existence.
Serveur EvidenciaN'importe qui peut vérifier le reçu contre la clé publique — hors ligne, en tribunal, ou via le portail de vérification.
PartoutDémarrage rapide
Créez votre première preuve en moins de 10 lignes de code.
import { Evidencia } from 'evidencia';
const client = new Evidencia({ apiKey: 'evd_sk_live_...' });
// Certifier une photo depuis un input fichier
const file = document.querySelector('#photo').files[0];
const proof = await client.proofs.create({
file,
captureMethod: 'mobile_camera',
});
console.log(proof.id); // "prf_01J4X9..."
console.log(proof.receipt.signature); // signature cryptographique en base64
console.log(proof.receipt.timestamp); // "2026-03-14T10:42:00.000Z"
const { Evidencia, hashFile } = require('evidencia');
const fs = require('fs');
const client = new Evidencia({
apiKey: process.env.EVIDENCIA_API_KEY,
});
// Hacher un fichier et créer une preuve
const buffer = fs.readFileSync('./evidence.pdf');
const fileHash = await hashFile(buffer);
const proof = await client.proofs.create({
fileHash,
captureMethod: 'server',
metadata: { caseId: 'INS-2026-4821' },
});
// Vérifier la preuve
const result = await client.proofs.verify({
proofId: proof.id,
fileHash,
});
console.log(result.valid); // true
console.log(result.checks.signatureValid); // true
Référence API
Tous les endpoints acceptent et retournent du JSON. L'authentification utilise un token Bearer dans le header Authorization.
| Méthode | Endpoint | Auth | Description |
|---|---|---|---|
| POST | /v1/proofs |
API key | Créer une nouvelle preuve à partir d'un hash de fichier |
| GET | /v1/proofs |
API key | Lister les preuves récentes (max 100, retourne proofs[], total, limit) |
| POST | /v1/verify |
Public | Vérifier la signature et le hash d'une preuve |
| GET | /v1/publicKey |
Public | Obtenir la clé publique active |
| GET | /v1/info |
Public | Métadonnées et capacités de l'API |
| GET | /health |
Public | Vérification de santé pour le monitoring |
Format du reçu
Chaque preuve retourne un reçu autonome — un objet JSON signé, vérifiable hors ligne sans contacter Evidencia.
{
"proofId": "prf_01J4X9K2M8...",
"fileHash": "sha256:e3b0c44298fc...",
"timestamp": "2026-03-14T10:42:00.000Z",
"signature": "base64...",
"verificationUrl": "https://verify.evidencia.tech/prf_01J4..."
}
mediaRef — références média durables
Le champ mediaRef permet aux clients B2B d'attacher une référence durable au fichier certifié — un numéro de sinistre, un identifiant d'annonce ou une URL d'article. Il est stocké dans le reçu mais ne fait jamais partie du payload de signature. La preuve cryptographique est toujours le hash du fichier.
const proof = await client.proofs.create({
fileHash: 'sha256:e3b0c44298fc1c14...',
captureMethod: 'mobile_camera',
metadata: {
mediaRef: {
type: 'insurance_claim',
claimId: 'CLM-2026-4821',
storage: 's3://bucket/claims/CLM-2026-4821/photo_001.jpg',
},
},
});
Associez des numéros de sinistre et des chemins de stockage aux photos de dommages certifiées. Prouvez quand la photo a été prise, pas seulement quand le sinistre a été déclaré.
Certifiez les photos produit à la mise en ligne. Les acheteurs et équipes de litiges peuvent vérifier que l'original n'a pas été modifié après la vente.
Certifiez les images brutes à la capture. Reliez-les à l'article publié ou à l'identifiant CMS pour une traçabilité de bout en bout.
SDK JavaScript
Le SDK officiel gère le hachage côté client, l'authentification, les tentatives automatiques et les types TypeScript. Compatible Node.js 18+ et tous les navigateurs modernes.
npm install evidencia
<script src="https://cdn.jsdelivr.net/npm/evidencia@1/evidencia.js"></script>
<script>
const client = new Evidencia({ apiKey: 'evd_sk_live_...' });
</script>
| Méthode | Description |
|---|---|
client.proofs.create(params) |
Créer une preuve. Accepte file ou fileHash, plus captureMethod et metadata optionnels. |
client.proofs.retrieve(proofId) |
Récupérer un reçu de preuve par son identifiant. |
client.proofs.verify(params) |
Vérifier la signature et optionnellement le hash du fichier. Accepte proofId ou un receipt inline. |
client.publicKey.retrieve() |
Obtenir la clé publique active. |
hashFile(input) |
Utilitaire d'empreinte numérique autonome. Accepte File, Blob, Buffer, ArrayBuffer, Uint8Array. Retourne une empreinte préfixée. |
Sécurité
Evidencia est conçu pour l'intégrité cryptographique de bout en bout.
Prêt à intégrer ?
Demandez une clé API et commencez à certifier vos fichiers en quelques minutes.
Demander une clé API