Qu'est-ce que le format de fichier G3FC ?
Un fichier .g3fc est une archive au format Generation 3 File Container, un format d'archive ouvert publié par G3Pix (Lucas Guimarães) en 2025. Il regroupe un ou plusieurs fichiers dans un conteneur unique et les compresse avec Zstandard, le même algorithme rapide utilisé par le format .zst. En plus de la compression, le G3FC ajoute deux fonctionnalités rarement réunies dans un format d'archive grand public : un chiffrement authentifié AES-256-GCM optionnel, et une correction d'erreurs directe (Forward Error Correction) Reed-Solomon optionnelle qui permet à une archive de survivre à la dégradation de bits (« bit rot ») lors d'un stockage à long terme.
Le format commence chaque fichier par la signature ASCII G3FC et se termine par un pied de page de 40 octets dont la signature (« magic ») est G3CE. Ce pied de page pointe vers un index encodé en CBOR, permettant ainsi à un lecteur de lister et de rechercher le contenu sans scanner l'intégralité du fichier, ce qui est plus rapide que les lectures séquentielles requises par une archive .tar. Les valeurs sont stockées en « little-endian », le texte est en UTF-8 et l'intégrité est protégée par des sommes de contrôle CRC-32. La spécification est ouverte, avec des outils de référence en Rust, Go, C# et Python publiés sous la licence GNU General Public License v2.0.
Sécurité et sûreté
RISQUE : LOWG3FC is a data archive, not an executable, so opening one does not run code. As with any archive, treat files from unknown senders with caution and scan extracted contents. Encrypted archives require the correct password; AES-256-GCM also authenticates the data, so tampering is detected on extraction.
Détails du format
en bref- G3F (Guitar Pro 3 / fax G3) - The similar-looking .g3f extension is unrelated and refers to older fax or music-notation files, not the G3FC archive.
Programmes qui ouvrent les fichiers G3FC
Détails techniques
spécifications approfondies| Encoding | Binary container with a fixed 331-byte header, a data region, a CBOR-serialized file index, an optional FEC region, and a 40-byte footer. |
| Byte order | Little Endian for all multi-byte integers |
| Container | Single-file archive holding one or more member files plus a searchable index |
| Compression | Zstandard (Zstd, RFC 8878); per-file or global mode. CLI default level 6. |
| Encryption | Optional AES-256 in GCM mode. Payload layout: 12-byte nonce, 16-byte auth tag, then ciphertext. Keys derived with PBKDF2-HMAC-SHA256, 32-byte key, recommended 100,000 iterations, using separate 64-byte read and write salts stored in the header. |
| Integrity | CRC-32 (IEEE 802.3 polynomial 0xEDB88320) over file data, the header (bytes 0-276), and the footer (first 32 bytes). Reed-Solomon Forward Error Correction is optional (fec_scheme 1), percentage-based with fec_level 0-50, applied to a Data FEC block and a Metadata FEC block. |
| Typical size | Varies; benchmark compressed roughly 13,000 files (2 GB) into about 1 GB. |
| Structure | Header (magic 'G3FC', version, UUID, timestamps in .NET ticks, index offset/length, compression and encryption flags, salts, KDF iterations, FEC settings, header checksum) -> data region -> file index (CBOR then Zstd, optionally encrypted) -> optional FEC region -> 40-byte footer ending in magic 'G3CE'. |
| Platforms | Windows, macOS, Linux |
| Notes | The index is serialized with CBOR (RFC 8949) and lists per-file path, type, UUID, timestamps, permissions (octal), offsets, sizes, compression flag, and CRC-32. Split archives use block_file_index and chunk grouping fields. Text is UTF-8. Timestamps are 100-nanosecond intervals since 0001-01-01 UTC (.NET ticks). Reference implementations exist in Rust, Go, C#/.NET, and Python. |
| Publié | 2025 |
| Dernière version | Format version 1.0 (tooling v1.1.3, August 2025) |
| Standard ouvert | Oui · libre de droits |
| Spécification | github.com |
Conversions G3FC
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers G3FC.