Aller au contenu

Chaîne de preuves

Une chaîne de preuves est une séquence d’attestations cryptographiquement liées qui prouvent la chronologie de votre travail. Chaque attestation référence les précédentes, formant un faisceau d’indices convergents.

Le principe fondamental : un hash isolé ne prouve rien, mais quand vous liez une note de recherche (Obsidian / Notion) à un commit Git, à une PR mergée, à un worklog Jira, à un tag release — chaque couche de preuve renforce les autres. La valeur juridique vient de la convergence des sources indépendantes.

graph TD
A[Note de recherche] -->|SHA-512| B[Attestation 1]
C[Commit Git] -->|Tree hash| D[Attestation 2]
E[PR #42] -->|Tree hash| F[Attestation 3]
G[Tag v1.0.0] -->|Tree hash| H[Attestation 4]
B --> I[Bundle Release]
D --> I
F --> I
H --> I
I --> J[Certificat eIDAS]

Chaque contenu est hashé en SHA-512 :

SHA-512("Votre note de recherche...")
→ "e3b0c44298fc1c149afbf4c8996fb924..." (128 caractères hexadécimaux)

Cette empreinte est :

  • Unique : un contenu différent → un hash différent (effet avalanche : 51,4 % des bits changent si 1 octet est modifié)
  • Déterministe : le même contenu → le même hash, toujours
  • Irréversible : impossible de retrouver le contenu original depuis le hash

Chaque empreinte est stockée dans le ledger SQLite local avec :

  • La date d’insertion (timestamp système)
  • La catégorie (research, pr, tag, release, content, file)
  • L’ipsecure_contribution_id si l’ancrage eIDAS est activé
  • Les relations entre entrées (ledger_relations)

Quand IP_SECURE_API_KEY est configuré, Jinnove transmet l’empreinte à Certigna (QTSP qualifié eIDAS) qui émet un timestamp qualifié au sens du Règlement UE 910/2014. Ce certificat est auto-porteur — vérifiable sans SESHAT.

La table ledger_relations lie les attestations :

note_de_recherche →derives_from→ commit
commit →implements→ pr_43
pr_43 →refines→ tag_v1.0.0
tag_v1.0.0 →releases→ bundle_legal

Ces liens rendent le faisceau visualisable, requêtable et exportable (OData, dashboard).

Vérifier votre chaîne de preuves ne nécessite que des outils standard :

Fenêtre de terminal
# 1. Recalculer l'empreinte SHA-512
shasum -a 512 votre-fichier.pdf
# 2. Comparer avec le ledger
seshat verify votre-fichier.pdf
# 3. Vérifier le certificat eIDAS (si disponible)
# L'URL du certificat Certigna est dans ipsecure_certificate_url
# La vérification se fait avec les outils PKI standard (openssl, Adobe...)

La chaîne de preuves fournit :

Type de preuveMéthode traditionnelleSESHAT
HorodatageAuto-déclaréTimestamp qualifié eIDAS (Certigna)
Preuve de contenuTémoignageHash SHA-512 cryptographique
Résistance à la falsificationAucuneLedger append-only + certificat eIDAS
Vérification tierceNotaire (coûteux)Certificat PKI standard (gratuit à vérifier)
Source indépendanteUniqueFaisceau : notes + commits + PRs + Jira