Spécification GKP 2.0

Le format .gkp est un format ouvert de scellage de fichiers qui préserve les originaux de manière inviolable

Structure du Fichier .gkp

Un fichier GKP scelle votre fichier original avec toutes les preuves cryptographiques nécessaires

1. En-tête (Header)

  • Magic bytes : 47 4B 50 00 (GKP)
  • Version : 02 00 (2.0)
  • Flags : chiffrement, compression, métadonnées étendues
  • Checksum global Blake3

2. Métadonnées

  • Nom du fichier original
  • Type MIME
  • Taille du contenu
  • Date de création
  • Métadonnées personnalisées (optionnel)

3. Contenu (Fichier Scellé)

  • Fichier original scellé et protégé
  • Hash Blake3 du contenu
  • Optionnel : chiffrement AES-256-GCM ou ChaCha20-Poly1305

4. Signature

  • Certificat X.509 du signataire
  • Signature Ed25519 sur le hash du contenu
  • Chaîne de certificats complète
  • Révocation OCSP/CRL

5. Horodatage

  • Token TSA RFC 3161
  • Certificat de l'autorité d'horodatage
  • Timestamp signé cryptographiquement
  • Preuve d'inclusion (optionnel)

Algorithmes Cryptographiques

Le format GKP utilise les algorithmes cryptographiques les plus robustes et modernes

Signature

  • Ed25519 (courbe elliptique)
  • RSA-PSS 4096 bits (optionnel)

Hachage

  • Blake3 (principal)
  • SHA-256 (compatibilité)

Chiffrement

  • AES-256-GCM
  • ChaCha20-Poly1305

Dérivation de clé

  • Argon2id
  • PBKDF2 (compatibilité)

Implémentations de Référence

Des bibliothèques open source sont disponibles pour faciliter l'intégration du format GKP dans vos applications :

Rust

cargo add gankpo-core

JavaScript/TypeScript

npm install @gankpo/core

Python

pip install gankpo