
SAT-OBELISK
A small sponge-based cryptosystem
SAT-OBELISK is a complete cryptosystem built from one primitive: a 384-bit permutation I designed. It is a research and teaching project, and it is honest about that.
At a glance
- 384-bit
- permutation state, six 64-bit lanes
- 16 / 10
- rounds for setup and for data
- 128-bit
- security target
- 3
- rounds until full diffusion
The story
- 01
One permutation, everything
Like Ascon, the winner of NIST's lightweight cryptography competition, OBELISK uses a sponge and duplex construction. One permutation gives authenticated encryption, hashing, key derivation, key wrapping and file encryption. Taming one primitive well is safer than combining four mediocre ones.
- 02
Inside the permutation
The state is six 64-bit lanes. Each round mixes them with ARX boxes (add, rotate, xor) and a linear layer of rotations. The round constants come from the digits of pi, so there is nowhere to hide a backdoor. Setup and hashing use 16 rounds, data processing uses 10.
- 03
Honest about security
The custom cipher has never been independently reviewed, so it is not for real secrets. For real data the app uses vetted backends, ChaCha20 or AES-256-GCM. Instead of claiming it is unbreakable, the repository invites anyone to break it, and reduced-round attacks count too.
- 04
Measured, not assumed
Avalanche tests, known-answer tests and tamper tests check the design. A single changed input bit flips about half of the output bits, and full diffusion is reached after only three rounds. The weak spots are documented next to the strong ones.
Live demo
Hash and encrypt in your browser
This demo runs the real OBELISK Python code in your browser with Pyodide. Starting it downloads a Python runtime of about 10 MB, once. Nothing you type leaves your device.
Research cipher: never independently reviewed. Do not use it for real secrets.