Ga naar inhoud
TextArray
100% lokaal

Affiene code

Versleutel tekst met behulp van het affiene cijfer, een lineaire wiskundige codering gebaseerd op modulaire rekenkunde.

Invoer
Uitvoer

Affiene code

Het affiene cijfer is een klassieke encryptiemethode die vermenigvuldiging en optelling combineert in modulaire rekenkunde. Elke letter wordt getransformeerd door de formule E(x) = (a*x + b) mod 26, waarbij a en b de door jou gekozen sleutels zijn en x de positie van de letter (0–25). Om te ontsleutelen, pas je de inverse transformatie toe met behulp van de modulaire multiplicatieve inverse van a.

In tegenstelling tot eenvoudigere cijfers zoals Caesar (die alleen verschuift), biedt het affiene cijfer meer veiligheid via twee onafhankelijke parameters. De vermenigvuldiger a moet coprime zijn met 26 – wat betekent dat hij geen andere gemeenschappelijke factoren deelt dan 1 – waardoor je twaalf geldige keuzes krijgt: 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25. Gecombineerd met 26 mogelijke offsets (b), levert dit 312 verschillende toetscombinaties op, een aanzienlijke stap omhoog ten opzichte van Caesars 25.

Plak uw leesbare tekst en selecteer coderen om deze te coderen, of plak de cijfertekst en selecteer decoderen om het origineel te herstellen. De vermenigvuldiger bepaalt hoe letters worden gecodeerd, terwijl de offset ze daarna verschuift. Hoofdletters en niet-lettertekens worden ongewijzigd doorgegeven. Alles draait in uw browser, zodat uw tekst en sleutels uw apparaat nooit verlaten. De live telling laat zien hoeveel letters er zijn getransformeerd en het totale aantal tekens.

FAQ

Wat is een affiene cipher?
Een affiene code is een vervangingscode waarbij elke letter wordt gecodeerd met behulp van een lineaire transformatie: E(x) = (a*x + b) mod 26. Het combineert vermenigvuldiging en optelling om tekst te versleutelen en biedt meer variatie dan een eenvoudige Caesar-verschuiving.
Waarom moet een coprime zijn met 26?
Om de decodering te laten werken, moet de vermenigvuldiger a een modulaire multiplicatieve inverse modulo 26 hebben. Dit bestaat alleen als a en 26 geen gemeenschappelijke factoren delen, dat wil zeggen dat ze coprime zijn. Geldige waarden zijn 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25.
Hoe ontsleutel ik een bericht?
Schakel de modus naar Decoderen, voer dezelfde a- en b-waarden in die zijn gebruikt voor het coderen en plak de cijfertekst. De tool berekent de modulaire inverse van a en keert de transformatie om: D(y) = a_inv * (y - b) mod 26.
Is het affiene cijfer veilig?
Nee. Met slechts 312 mogelijke sleutels is het kwetsbaar voor aanvallen met brute kracht en frequentieanalyse. Het is geschikt voor puzzels en het aanleren van cryptografie, maar niet voor het beschermen van gevoelige informatie.
Wordt mijn tekst ergens geüpload?
Nee. De codering en decodering worden volledig in uw browser uitgevoerd. Uw tekst en sleutels worden nooit naar een server verzonden.