Attestations eIDAS (Jinnove / Certigna)
Architecture des attestations
Section intitulée « Architecture des attestations »SESHAT produit des preuves en deux couches indépendantes :
| Couche | Activation | Ce qu’elle prouve |
|---|---|---|
| Sceau local | Toujours actif | SHA-512 + date d’insertion SQLite. Preuve interne. |
| Certificat eIDAS | IP_SECURE_API_KEY configuré | Horodatage qualifié Certigna. Preuve juridiquement opposable aux tiers. |
Jinnove / Certigna
Section intitulée « Jinnove / Certigna »Jinnove est la plateforme IP Secure qui orchestre l’ancrage. Elle utilise Certigna comme QTSP (Qualified Trust Service Provider) inscrit sur la Trusted List européenne (EUTL) — le même niveau de confiance qu’une signature qualifiée d’avocat ou de notaire électronique en droit européen.
Le certificat résultant :
- Est conforme au Règlement UE 910/2014 (eIDAS)
- Inclut un timestamp qualifié RFC 3161 émis par Certigna
- Est vérifiable sans SESHAT (les standards PKI suffisent)
- Reste valide même si Jinnove ou SESHAT cessent d’exister
Cycle de vie d’une attestation
Section intitulée « Cycle de vie d’une attestation »-
Contenu créé
Vous écrivez du code, des notes, mergez une PR.
-
Hash calculé localement
SESHAT calcule l’empreinte SHA-512 du contenu. Ce hash n’est jamais transmis en clair — seule l’empreinte part vers Jinnove.
-
Contribution soumise à Jinnove
SESHAT envoie la contribution (fingerprint, métadonnées, catégorie) à l’API Jinnove via HTTPS signé.
-
Certigna horodate
Jinnove transmet à Certigna qui applique un timestamp qualifié et génère le certificat eIDAS.
-
Ledger SQLite mis à jour
L’
ipsecure_contribution_idest stocké — c’est la source de vérité sur l’ancrage. -
Certificat récupéré
Le certificat (
ipsecure_certificate_url) est disponible quelques minutes après viafetch_certificate. Il est ensuite persisté dans le ledger.
Comportement asynchrone
Section intitulée « Comportement asynchrone »Jinnove génère le certificat en arrière-plan. À l’instant T du scellement, ipsecure_certificate_url est null. Pour le récupérer :
Récupère le certificat eIDAS pour l'entrée ledger #42L’outil fetch_certificate interroge Jinnove et persiste l’URL si le certificat est prêt. Statuts : ready, already_persisted, pending, not_configured.
Vérification d’une attestation
Section intitulée « Vérification d’une attestation »# Recompute the SHA-512 fingerprintshasum -a 512 votre-fichier.pdf
# Compare with the stored fingerprintseshat verify votre-fichier.pdf
# The certificate URL points to the eIDAS document# No SESHAT installation needed for verificationSans IP Secure
Section intitulée « Sans IP Secure »Sans IP_SECURE_API_KEY, SESHAT fonctionne en mode souverain local :
- SHA-512 + ledger SQLite uniquement
- Pas de certificat tiers
- Suffisant pour preuve interne (audit, contentieux entre parties qui font confiance au ledger)
- L’
ipsecure_contribution_idrestenull
Ce mode est le défaut — l’eIDAS est une option, pas un prérequis.