Comment vérifier les horodatages de vos commits Git
Comment vérifier les horodatages de vos commits Git
Un horodatage de commit Git est une affirmation. La vérification en est la preuve. Dans Git, les dates de commit sont des métadonnées modifiables — git commit --date peut définir des dates arbitraires, le rebase réécrit l’historique et le force-push peut réécrire un dépôt distant partagé. Si vous vous appuyez sur les horodatages de commit pour prouver un état de la technique antérieur, vous avez besoin de quelque chose de plus solide qu’une chaîne de date dans votre journal.
Timestamp GIT comble cette lacune en ancrant les hachages de vos commits Git dans la blockchain Bitcoin à l’aide du protocole OpenTimestamps. C’est un SaaS géré et une GitHub App : installez l’application une fois, connectez un dépôt, et chaque commit est ancré automatiquement chaque nuit. Pas d’outils CLI, pas d’étapes protocolaires manuelles.
Cet article se concentre sur le volet vérification : à quoi ressemble une preuve, comment la vérifier avec les outils intégrés de Timestamp GIT et comment interpréter le résultat. Si vous avez besoin de la motivation complète expliquant pourquoi cela compte dans les litiges de brevets, consultez Défendez votre logiciel contre les trolls de brevets avec les horodatages.
Pourquoi la vérification compte pour l’état de la technique de votre code
Un horodatage n’a de valeur que si vous pouvez le prouver plus tard. Les journaux Git internes échouent généralement à ce test car ils vivent sur des serveurs que vous ne contrôlez pas entièrement ou dans des bases de données qui peuvent être modifiées. Lors d’un audit juridique ou d’un examen de conformité, ces journaux sont souvent rejetés comme étant intéressés.
Timestamp GIT génère des preuves cryptographiques ancrées dans Bitcoin. Cela change la donne :
- Public : L’ancre est intégrée dans la blockchain Bitcoin, où n’importe qui peut la vérifier.
- Immuable : Une fois qu’un bloc Bitcoin est confirmé, aucune entité — y compris Timestamp GIT — ne peut altérer ou falsifier l’ancre.
- Zero-knowledge : La vérification s’effectue sans révéler votre code source. Le service ne lit que les hachages de commit, jamais les fichiers sous-jacents.
- Indépendant : La preuve repose sur SHA-256 et les données de blocs Bitcoin. Elle ne dépend pas de la disponibilité en ligne de Timestamp GIT.
Comme la preuve n’implique que les hachages de commit, n’importe qui peut vérifier qu’un commit donné existait à un moment donné sans accéder à votre code source. Cela fait de la vérification une étape pratique que vous pouvez confier à un avocat, un auditeur ou un responsable de la conformité.
À quoi ressemble une preuve Timestamp GIT
Lorsque vous connectez un dépôt à la GitHub App Timestamp GIT, le service ne lit pas votre code. Il ne lit que les hachages de commit. Chaque nuit, un worker rassemble les hachages en attente dans un fichier manifeste par dépôt, construit un arbre de Merkle, crée des preuves OpenTimestamps et ancre la racine de Merkle dans la blockchain Bitcoin.
Les artefacts de preuve résultants sont poussés vers une branche d’horodatages dédiée ou un dépôt miroir. Une branche d’horodatages typique peut ressembler conceptuellement à ceci :
timestamps/
└── 2026/
└── 08/
└── 22/
├── manifest.txt
└── manifest.txt.ots
Les deux fichiers clés sont :
manifest.txt: Le fichier manifeste quotidien. Il regroupe les hachages de commit pour ce dépôt et cette date.- Fichier de reçu
.ots: La preuve cryptographique. Il contient le condensat, les attestations de calendrier et les données d’en-tête de bloc Bitcoin nécessaires pour prouver que le manifeste a été ancré dans un bloc et une transaction Bitcoin spécifiques.
La preuve est autonome. Vous pouvez télécharger le fichier .ots et le vérifier contre la blockchain Bitcoin à l’aide des outils de vérification OpenTimestamps standard, entièrement hors ligne et sans l’infrastructure de Timestamp GIT. Timestamp GIT vous offre le chemin convivial ; la preuve sous-jacente reste la vôtre.
Vérification étape par étape avec les outils Timestamp GIT
Timestamp GIT fournit plusieurs surfaces de vérification. Vous pouvez utiliser celle qui convient à votre flux de travail.
1. Consulter la page de statut publique
Pour tout dépôt connecté, accédez à :
https://timestampgit.dev/status/{user}/{repo}
Remplacez {user} par votre utilisateur ou organisation GitHub et {repo} par le nom du dépôt.
La page de statut affiche la longévité de la preuve, la date d’ancrage la plus ancienne, la régularité quotidienne, les données de bloc et de transaction Bitcoin, ainsi qu’une carte thermique du calendrier. Depuis cette page, vous pouvez également télécharger un CSV d’audit ou un certificat PDF pour une date spécifique.
Pour les dépôts publics, n’importe qui peut visiter cette page. Pour les dépôts privés, l’accès est restreint par un HMAC chiffré, de sorte que seuls les utilisateurs autorisés peuvent consulter le statut.
2. Intégrer un badge de vérification dans votre README
Les horodatages d’un dépôt deviennent plus utiles lorsque vos contributeurs, clients ou auditeurs peuvent les voir d’un coup d’œil. Timestamp GIT fournit des badges Shields.io intégrables.
Tout d’abord, obtenez l’extrait du badge depuis le point de terminaison authentifié :
curl https://timestampgit.dev/api/badgeLink/your-org/your-repo
La réponse inclut une URL de badge et un extrait markdown prêt à coller :
{
"badgeUrl": "https://img.shields.io/endpoint?url=https://timestampgit.dev/api/statusSummary/your-org/your-repo",
"markdown": "[](https://timestampgit.dev/status/your-org/your-repo)"
}
Collez le markdown dans votre README.md. Le badge renvoie vers la page de statut publique, afin que n’importe qui puisse cliquer et vérifier le dernier horodatage.
3. Exécuter la page de vérification cryptographique
La page de vérification vous donne une vue étape par étape de la chaîne de Merkle pour un jour spécifique :
https://timestampgit.dev/verification/{user}/{repo}/{date}
Par exemple, pour vérifier un dépôt horodaté le 22 août 2026 :
https://timestampgit.dev/verification/your-org/your-repo/2026-08-22
Cette page montre la vérification multi-niveaux de la chaîne de Merkle. Tous les calculs cryptographiques s’exécutent localement dans votre navigateur — Timestamp GIT ne voit pas ce que vous vérifiez.
Si vous préférez travailler avec les données brutes de la chaîne de Merkle de manière programmatique, utilisez le point de terminaison de vérification public :
curl https://timestampgit.dev/api/verify/your-org/your-repo/2026-08-22
4. Télécharger un certificat PDF
Pour les réunions, les litiges juridiques ou les dossiers de conformité, vous avez souvent besoin d’un document portable. Timestamp GIT peut générer un certificat PDF pour une date spécifique.
Depuis la page de statut, utilisez l’option de téléchargement. Ou appelez directement le point de terminaison de rapport :
curl -o timestamp-proof-2026-08-22.pdf \
https://timestampgit.dev/api/report/your-org/your-repo/2026-08-22
Le PDF inclut les détails de la preuve pour cette date et est formaté pour une lecture humaine.
5. Utiliser l’API publique pour l’automatisation
Si vous souhaitez intégrer la vérification dans des contrôles CI/CD, des tableaux de bord internes ou des scripts de conformité, Timestamp GIT expose des points de terminaison de statut publics.
Vérifier le dernier bloc Bitcoin ancré :
curl https://timestampgit.dev/api/statusLast/your-org/your-repo
Vérifier le nombre total de commits committés et horodatés :
curl https://timestampgit.dev/api/statusCount/your-org/your-repo
Vérifier un résumé combiné qui peut être consommé par Shields.io :
curl https://timestampgit.dev/api/statusSummary/your-org/your-repo
Une réponse statusSummary typique ressemble à ceci :
{
"schemaVersion": 1,
"label": "timestamped",
"message": "42 commits",
"color": "brightgreen"
}
Interpréter les résultats de vérification et les cas limites
Une vérification réussie signifie que la chaîne suivante a tenu :
- Votre hachage de commit a été inclus dans le manifeste quotidien du dépôt.
- Le manifeste a été inclus dans un arbre de Merkle.
- La racine de Merkle a été ancrée dans une transaction Bitcoin.
- Cette transaction a été confirmée dans un bloc Bitcoin.
En clair : le hachage de commit existait avant l’heure du bloc Bitcoin. Cette heure de bloc devient la borne supérieure de votre revendication d’état de la technique antérieur.
Preuves en attente et délai de confirmation
Timestamp GIT regroupe les commits chaque nuit. Une fois le lot créé, le réseau Bitcoin doit confirmer la transaction d’ancrage. Cela prend normalement quelques heures. Un commit effectué aujourd’hui peut ne pas apparaître comme entièrement vérifié avant le lendemain.
La page de statut est votre alliée ici : elle affiche la date d’ancrage la plus ancienne et la régularité quotidienne, afin que vous puissiez voir si un dépôt est dans les temps ou si un jour spécifique est encore en attente.
Dépôts privés et accès HMAC
Les liens de vérification pour les dépôts privés incluent un HMAC chiffré. Ce HMAC est spécifique à l’instance du serveur Timestamp GIT et empêche les utilisateurs non autorisés de consulter les informations de statut privées.
La GitHub App elle-même nécessite des autorisations appropriées pour accéder aux dépôts privés. Sans ces autorisations, Timestamp GIT ne peut pas lire le hachage de commit en premier lieu.
Indépendance vis-à-vis de Timestamp GIT
Les fichiers de reçu .ots ne sont pas liés aux serveurs de Timestamp GIT. Ce sont des preuves construites sur le protocole OpenTimestamps et ancrées dans Bitcoin. Même si Timestamp GIT disparaît, vous pouvez toujours vérifier les reçus à l’aide des outils OpenTimestamps standard contre la blockchain Bitcoin.
Pour un registre complet de tous les horodatages d’un dépôt, téléchargez le CSV d’audit :
curl -o audit-ledger.csv https://timestampgit.dev/api/audit/your-org/your-repo
Ce CSV est utile pour la découverte juridique, les audits internes ou pour démontrer un historique d’horodatage continu.
FAQ
Puis-je vérifier un horodatage de commit Git sans installer de logiciel ?
Oui. Timestamp GIT fournit une page de vérification web où tous les contrôles cryptographiques s’exécutent localement dans votre navigateur. Vous pouvez également utiliser la page de statut publique ou le badge intégrable pour consulter le statut de vérification sans aucune installation.
Que se passe-t-il si Timestamp GIT cesse son activité ? Puis-je toujours vérifier mes horodatages ?
Absolument. Les preuves reposent sur le protocole OpenTimestamps et sont ancrées dans la blockchain Bitcoin. Vous pouvez télécharger le fichier de reçu .ots et le vérifier à l’aide des outils OpenTimestamps standard contre la blockchain Bitcoin, indépendamment de Timestamp GIT.
Combien de temps faut-il pour qu’un commit soit vérifiable ?
Timestamp GIT regroupe les commits quotidiennement et les ancre dans la blockchain Bitcoin. La confirmation prend généralement quelques heures après le traitement du lot quotidien. La page de statut affiche la date d’ancrage la plus ancienne et la régularité quotidienne.
Puis-je vérifier les horodatages des dépôts privés ?
Oui, mais l’accès est restreint. Les liens de vérification pour les dépôts privés incluent un HMAC chiffré, de sorte que seuls les utilisateurs autorisés peuvent consulter le statut. La GitHub App nécessite des autorisations appropriées pour accéder aux dépôts privés.
Que se passe-t-il si je supprime la GitHub App ?
Les reçus .ots et les manifestes déjà générés restent dans votre dépôt et peuvent toujours être vérifiés indépendamment. Les nouveaux commits ne seront pas horodatés automatiquement tant que vous n’aurez pas réinstallé la GitHub App.
Conclusion : Faites confiance, mais vérifiez
La vérification est le moment où un horodatage devient une preuve. Timestamp GIT supprime la charge opérationnelle de la création de ces preuves tout en vous offrant des moyens simples et adaptés aux développeurs pour les vérifier : une page de statut publique, des badges README, un visualiseur de chaîne de Merkle dans le navigateur, des certificats PDF, des CSV d’audit et des API publiques.
Vous n’avez pas besoin d’apprendre les commandes OpenTimestamps brutes, d’exécuter un nœud Bitcoin ou de gérer manuellement les reçus. La GitHub App gère le pipeline ; les pages de vérification gèrent le reste. Mais comme la preuve sous-jacente est standard et ancrée dans Bitcoin, vous n’êtes jamais enfermé.
Si vous n’avez pas encore commencé à horodater, le chemin le plus rapide est d’installer la GitHub App Timestamp GIT, de connecter un dépôt et d’observer la première ancre nocturne apparaître. Si vous avez besoin d’une configuration air-gapped ou auto-hébergée, Timestamp GIT est également disponible sous forme d’image Docker avec une licence de démonstration à durée limitée.
Commencez sur https://timestampgit.dev.
Articles connexes
- Défendez votre logiciel contre les trolls de brevets avec les horodatages
- OpenTimestamps vs Timestamp GIT : lequel convient à votre code ?
- Configurez l’horodatage automatique des commits Git en quelques minutes