SeqBox

From Just Solve the File Format Problem
Jump to: navigation, search
File Format
Name SeqBox
Ontology
Extension(s) .sbx, .seqbox
Reference Implementation http://mark0.net/soft-seqbox-e.html
Endianness Big_endian
Developed By Marco Pontello
Released 2017

SeqBox - Sequenced Box container

SeqBox - Sequenced Box container

SeqBox (Sequenced Box container; SBX) is a single file container/archive that can be reconstructed even after total loss of file system structures.

An SBX container is composed of a collection of blocks with size sub/equal to that of a sector, so they can survive any level of fragmentation. Each block has a minimal header that includes a unique file identifier, block sequence number, checksum, version. Additional non critical info/metadata are contained in block 0 (like name, file size, crypto-hash, other attributes, etc.).

If disaster strikes, recovery can be performed simply scanning a volume/image, reading sector sized slices and checking blocks signatures and then CRCs to detect valid SBX blocks. Then the blocks can be grouped by UIDs, sorted by sequence number, and reassembled to form the original SeqBox containers.

Does not work on encrypted filesystems or filesystems that don't have a multiple of 128-byte block size.

Striping/RAID instead is usually not a problem.

With password set, can be used for steganography (attach to another file and it won't be recognizable unless password is provided).

If multiple copies are stored, can automatically pull together all the good segments.

Adds < 3.5% to file size.

The format has been extended to Error-correcting SeqBox (EC-SeqBox) by Blockyarchive/blkar


Identification

A SeqBox files start with bytes 53 42 78, or "SBx" in ASCII.

Format description

Links

  • SeqBox, Marco Pontello's Home Page
  • osbx - OCaml implementation of SeqBox by darrenldl (Darren Li)
  • Blockyarchive/blkar - handles both SeqBox and EC-SeqBox in a more robust manner
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox