Wat is het G3FC-bestandsformaat?
Een .g3fc-bestand is een archief in het Generation 3 File Container-formaat, een open archiefformaat gepubliceerd door G3Pix (Lucas Guimarães) in 2025. Het verpakt een of meer bestanden in een enkele container en comprimeert deze met Zstandard, hetzelfde snelle algoritme achter het .zst-formaat. Naast compressie voegt G3FC twee functies toe die zelden samen worden gevonden in een consumenten-archiefformaat: optionele AES-256-GCM geauthenticeerde versleuteling, en optionele Reed-Solomon Forward Error Correction waarmee een archief bitrot kan overleven tijdens langdurige opslag.
Het formaat begint elk bestand met de ASCII-handtekening G3FC en eindigt met een 40-byte footer waarvan de magic bytes G3CE zijn. Die footer verwijst naar een CBOR-gecodeerde index, zodat een lezer de inhoud kan weergeven en doorzoeken zonder het hele bestand te scannen, wat sneller is dan de sequentiële leesbewerkingen die een .tar-archief vereist. Waarden worden opgeslagen in little-endian, tekst is UTF-8 en de integriteit wordt beschermd door CRC-32-controlesommen. De specificatie is open, met referentietools in Rust, Go, C# en Python uitgebracht onder de GNU General Public License v2.0.
Beveiliging & veiligheid
RISICO: 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.
Formaatdetails
in een notendop- 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.
Programma's die G3FC-bestanden openen
Technische details
diepe specificaties| 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. |
| Uitgebracht | 2025 |
| Laatste versie | Format version 1.0 (tooling v1.1.3, August 2025) |
| Open standaard | Ja · royaltyvrij |
| Specificatie | github.com |
G3FC conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over G3FC-bestanden.