Co to jest format pliku G3FC?
Plik .g3fc to archiwum w formacie Generation 3 File Container, otwartym formacie archiwizacji opublikowanym przez G3Pix (Lucas Guimarães) w 2025 roku. Pakuje on jeden lub więcej plików do pojedynczego kontenera i kompresuje je za pomocą Zstandard, tego samego szybkiego algorytmu, który stoi za formatem .zst. Oprócz kompresji, G3FC dodaje dwie funkcje rzadko spotykane razem w konsumenckich formatach archiwów: opcjonalne uwierzytelnione szyfrowanie AES-256-GCM oraz opcjonalną korekcję błędów w przód (Forward Error Correction) Reeda-Solomona, która pozwala archiwum przetrwać degradację bitów (bit rot) podczas długoterminowego przechowywania.
Format rozpoczyna każdy plik sygnaturą ASCII G3FC, a kończy 40-bajtową stopką z magicznymi bajtami G3CE. Stopka ta wskazuje na indeks zakodowany w formacie CBOR, dzięki czemu czytnik może listować i przeszukiwać zawartość bez skanowania całego pliku, co jest szybsze niż sekwencyjny odczyt wymagany przez archiwum .tar. Wartości są przechowywane w formacie little-endian, tekst to UTF-8, a integralność jest chroniona przez sumy kontrolne CRC-32. Specyfikacja jest otwarta, a narzędzia referencyjne w językach Rust, Go, C# i Python zostały wydane na licencji GNU General Public License v2.0.
Bezpieczeństwo
RYZYKO: 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.
Szczegóły formatu
w pigułce- 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.
Programy otwierające pliki G3FC
Szczegóły techniczne
specyfikacja| 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. |
| Wydano | 2025 |
| Najnowsza wersja | Format version 1.0 (tooling v1.1.3, August 2025) |
| Otwarty standard | Tak · bezpłatny (royalty-free) |
| Specyfikacja | github.com |
Konwersje G3FC
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki G3FC.