ThiersLabs
<- Alle projecten

SAT-OBELISK

Een klein sponge-cryptosysteem

SAT-OBELISK is een compleet cryptosysteem gebouwd op een enkele bouwsteen: een 384-bit permutatie die ik zelf ontwierp. Het is een onderzoeks- en leerproject, en daar is het eerlijk over.

DownloadenNieuwste release ophalen
Broncode
  • Python
  • Cryptography

In het kort

384-bit
permutatiestaat, zes lanes van 64 bit
16 / 10
rondes voor setup en voor data
128-bit
beveiligingsdoel
3
rondes tot volledige diffusie

Het verhaal

  1. 01

    Een permutatie, alles

    Net als Ascon, de winnaar van de NIST-competitie voor lichtgewicht cryptografie, gebruikt OBELISK een sponge- en duplexconstructie. Een permutatie levert geauthenticeerde encryptie, hashing, sleutelafleiding, key wrapping en bestandsencryptie. Een bouwsteen goed temmen is veiliger dan vier middelmatige combineren.

  2. 02

    In de permutatie

    De staat bestaat uit zes lanes van 64 bit. Elke ronde mengt ze met ARX-boxen (optellen, roteren, xor) en een lineaire laag van rotaties. De rondeconstanten komen uit de cijfers van pi, dus er is geen plek om een achterdeur te verstoppen. Setup en hashing gebruiken 16 rondes, dataverwerking 10.

  3. 03

    Eerlijk over veiligheid

    De eigen cipher is nooit onafhankelijk beoordeeld, dus hij is niet voor echte geheimen. Voor echte data gebruikt de app beproefde backends: ChaCha20 of AES-256-GCM. In plaats van te beweren dat hij onkraakbaar is, nodigt de repository iedereen uit om hem te kraken, en aanvallen op minder rondes tellen ook.

  4. 04

    Gemeten, niet aangenomen

    Avalanchetests, known-answer-tests en manipulatietests controleren het ontwerp. Een enkele gewijzigde invoerbit flipt ongeveer de helft van de uitvoerbits, en na slechts drie rondes is de diffusie volledig. De zwakke plekken staan gedocumenteerd naast de sterke.

Live demo

Hash en versleutel in je browser

Deze demo draait de echte OBELISK-Pythoncode in je browser met Pyodide. Bij het starten wordt eenmalig een Python-runtime van ongeveer 10 MB gedownload. Niets wat je typt verlaat je apparaat.

Onderzoeks-cipher: nooit onafhankelijk beoordeeld. Niet gebruiken voor echte geheimen.

Meer projecten