Comment horodater des documents sans les uploader

Si un service d'horodatage vous demande d'uploader votre document, il sollicite plus que nécessaire. Toute la technique repose sur un hash, et ce hash peut être calculé sur votre propre machine en moins d'une seconde.
Cela importe surtout pour les documents qui valent vraiment la peine d'être horodatés : brevets non déposés, contrats en brouillon, manuscrits, travaux clients sous NDA. Uploader ces fichiers chez un tiers constitue une divulgation, et souvent une divulgation que vous n'êtes pas autorisé à faire.
Pourquoi le fichier n'a jamais besoin de quitter vos locaux
L'horodatage publie une empreinte numérique, pas le document. SHA-256 transforme n'importe quel fichier en 64 caractères hexadécimaux, et c'est cette chaîne qui est enregistrée.
L'empreinte suffit car elle est :
- Unique au fichier. Deux fichiers sensiblement différents ne partagent jamais le même hash.
- À sens unique. Le hash ne peut pas être inversé pour retrouver le document.
- Reproductible. Quiconque possède le fichier peut recalculer le hash et comparer.
Ainsi, le scénario de vérification fonctionne parfaitement sans que le fichier ne bouge : vous hachez localement, le hash est publié, et plus tard vous produisez le fichier et n'importe qui peut le re-hacher pour confirmer la correspondance.
Comment fonctionne le hachage côté client
Les navigateurs modernes intègrent une API Web Crypto qui calcule nativement du SHA-256. La séquence est la suivante :
- Vous sélectionnez un fichier. Le navigateur le lit depuis le disque vers la mémoire — une opération locale, sans réseau impliqué.
crypto.subtle.digest('SHA-256', bytes)retourne le digest.- La chaîne hexadécimale de 64 caractères s'affiche.
- Seule cette chaîne est jamais transmise.
Vous pouvez observer cela se produire. Notre générateur de hash fait exactement cela, et la page continue de fonctionner avec votre réseau déconnecté — une bonne démonstration qu'aucun envoi n'a lieu.
Vérifier la revendication vous-même
Ne faites confiance aux dires d'aucun service, y compris le nôtre. Trois vérifications, par ordre de rigueur croissante :
1. Surveillez l'onglet réseau. Ouvrez les outils de développement, passez à Network, et hachez un fichier. Si le document était uploadé, vous verriez une requête transportant des mégaoctets. Vous ne devriez rien voir.
2. Coupez la connexion. Chargez la page, déconnectez-vous d'internet, puis hachez un fichier. S'il produit toujours un hash, le calcul est local. C'est le test le plus convaincant et il prend dix secondes.
3. Comparez avec vos propres outils. Hachez le fichier avec un outil en ligne de commande et vérifiez que les valeurs correspondent :
# macOS / Linux
shasum -a 256 contract.pdf
# Windows PowerShell
Get-FileHash contract.pdf -Algorithm SHA256
Une sortie identique signifie que le service a calculé le SHA-256 standard de votre fichier et qu'il ne se passe rien d'exotique.
Signaux d'alarme
Considérez ceci comme des raisons de regarder ailleurs :
- L'upload est obligatoire sans option côté client. Le fichier n'est pas nécessaire ; le demander est un choix.
- Le service propose de stocker votre document. Pratique, mais un produit différent avec des risques différents. Le stockage n'est pas de l'horodatage.
- On vous demande le fichier pour vérifier. La vérification nécessite aussi uniquement le hash.
- Aucune explication sur ce qui est publié. Un service devrait vous dire clairement que seul le hash va sur la blockchain.
- Des limites de taille mesurées en mégaoctets. Un indice que le fichier traverse le réseau.
Quand vous voulez effectivement uploader quelque chose
Une exception honnête : certains workflows intègrent un horodatage à l'intérieur du fichier — signatures PAdES dans un PDF, par exemple. Là, le fichier doit être modifié, donc l'outil en a besoin. C'est un objectif légitime différent, couvert dans comment horodater un PDF.
Si tout ce dont vous avez besoin est la preuve que le document existait et est inchangé, aucun upload n'est requis à aucun moment.
Ce que vous obtenez finalement
Un registre public contenant votre hash, une transaction que n'importe qui peut inspecter, et un document qui n'a jamais quitté votre ordinateur portable. Pour prouver le point plus tard, vous produisez le fichier vous-même et laissez l'autre partie le re-hacher.
Soyons précis sur la limite : cela prouve l'existence et l'intégrité à un moment donné, pas la paternité — voir preuve d'existence vs preuve de paternité.