Hoe is Konijn (algoritme) ontstaan?
Rabbit werd in 2003 ontwikkeld door Martin Boesgaard, Mette Vesterager, Thomas Pedersen, Jesper Christiansen en Ove Scavenius bij het bedrijf Cryptico en werd voor het eerst gepresenteerd op de 10e FSE Workshop in februari 2003. Het algoritme wordt beschreven in RFC 4503. Cryptico diende een patent in voor het algoritme en eiste jarenlang een licentievergoeding voor commercieel gebruik van de versleuteling. Sinds oktober 2008 is de software gelicenseerd als publiek domein software. Dit betekent dat het gratis kan worden gebruikt voor commerciële doeleinden.
Wat is Konijn (algoritme)?
Rabbit is een stroomversleuteling die een sleutel gebruikt met een lengte van 128 bits en een initiële vector van 64 bits. Een initiële vector is een reeks willekeurige bits die wordt gebruikt om de versleuteling te starten.
Hoe het werkt:
- Het Rabbit-algoritme neemt een geheime sleutel van 128 bits en een initiële vector van 64 bits als invoer.
- Het genereert een uitvoerblok van 128 pseudowillekeurige bits voor elke iteratie door een combinatie van de interne statusbits.
- Versleuteling en ontsleuteling worden uitgevoerd door de pseudowillekeurige data bit voor bit te XOR’en met de heldere tekst of de versleutelde tekst. XOR’en betekent dat de bits van twee gegevensstukken worden vergeleken en omgezet volgens bepaalde regels.
- De grootte van de interne staat is 513 bits, verdeeld over:
- acht statusvariabelen van 32 bits,
- acht tellers van 32 bits,
- één overdrachtsbit.
Een sleutel van 128 bits maakt het bestand tegen brute force-aanvallen. Brute force-aanvallen zijn pogingen om een sleutel te raden door alle mogelijke combinaties te proberen. Het is ook vrij eenvoudig te implementeren en vereist minimale opslag van de interne staat. Vergeleken met AES, een ander versleutelingsalgoritme, heeft Rabbit voordelen in snelheid en robuustheid voor apparaten met een laag stroomverbruik. Tot nu toe zijn er geen kwetsbaarheden gevonden in de Rabbit-versleuteling.
Lees meer over Konijn (algoritme) op Wikipedia (en)
De functie Konijn (algoritme)
Bovenin het scherm staat een tekstveld waar je een tekst kunt invoeren die je wilt versleutelen of ontsleutelen.
Daaronder staat een keuzemenu waarmee je het formaat kunt opgeven:
- Automatisch
- Tekst
- Hexadecimaal
- Binair
- ASCII Waarden
In het gedeelte Sleutel staat nog een tekstveld met een keuzemenu waarmee je een formaat kunt opgeven. Hier vul je de geheime sleutel in en kiest het bijbehorende formaat.
In het gedeelte Initialisatie vector staat nog een tekstveld en een keuzemenu. Hier kun je de initiële vector met het bijbehorende formaat opgeven. Dit is niet verplicht.
Tot slot geef je in het gedeelte Uitvoer Formaat het formaat op waarin de versleutelde of ontsleutelde tekst moet worden weergegeven.
Het resultaat komt te staan onder Uitvoer.

