Crisper
An archiver that edits the archive instead of repacking it: its own container format with partitions, ten compression algorithms, AES encryption, search inside and integrity checks. A desktop application for people and a command-line version for servers.
An archive you work with like a folder
- Edit in place. Add, delete, move and rename files and folders inside an existing archive; create folders and symbolic links.
- Partitions. Split an archive into parts of a given size — convenient for media and transfer.
- Encryption with AES-128, AES-192 and AES-256 by password.
- Author details — name, contacts, copyright and licence stored in the archive itself.
- Search inside — fuzzy name search survives typos: a vector index plus Levenshtein distance.
- Diagnostics — integrity check and index rebuild with a detailed log.
- View text files straight from the archive, drag and drop.
- Russian and English interface.
Ten algorithms to choose from
The method is set as a default and per archive: denser for storage, faster for exchange. Block sizes, cache and the archive size limit are configurable.
For people and for servers
Desktop application
An archive file manager: folder tree, action panel, file properties, compression and encryption settings, a log. Windows, macOS and Linux.
Command line and library
The danube engine builds on macOS, Linux, FreeBSD, Solaris and Windows, as a static or shared library. Suitable for scripts, servers and embedding in your own software.
Smart container: a file system in one file
The second version of the format is no longer an archive but a store: versions, deduplication, search inside, encryption for several owners, and mounting as a disk. The plan has twelve stages, each with acceptance criteria.
| Property | How it works |
|---|---|
| Opens instantly | only the header and the index root are read: 10 M nodes in under 100 ms |
| Edits in place | copy-on-write index: a power cut never destroys the previous version |
| Remembers versions | every commit is a snapshot; any past file can be retrieved in full |
| Stores duplicates once | content-defined blocks, the block address is its hash |
| Survives damage | per-partition redundancy, a Merkle tree with a signed root |
| Mounts as a disk | Explorer, Finder and any program work with the contents without extraction |
One container — different rights for everyone
Addressed reading
The author says whom a file is for — people or groups. Anyone not on the list cannot decrypt it: their key simply isn't in the container. A single file can have its own password.
Read-only
The container is signed with the author's key; the recipient can read but cannot extract the contents if the author forbids it. Built-in viewers and editors work inside.
History with authorship
Every file carries a signature: who added, changed or deleted it, and when. An owner can protect their files while others may add their own — version control without a server.
Encryption is our own A-NTS library: GOST, the classics and post-quantum ML-KEM in a hybrid scheme. An archive intercepted today stays sealed tomorrow.
Find without unpacking
By name
Fuzzy search survives typos — works in the current version.
By content
Full-text index: Cyrillic without dictionaries, substrings and regular expressions — inside the container and across ordinary folders on disk.
Extraction by query
From the command line — not the whole container but the search result: a file, a mask, a type, everything changed after a date, or everything containing a text.
Compression is chosen per block in three steps: already-compressed data is stored as is, a quick probe rejects useless work, text goes to a dense codec and binary to a fast one. For millions of small files the container trains a dictionary on them.