Binære krypteringsalgoritmer

Binære krypteringsalgoritmer


Krypteringsalgoritmer kommer i ulike former og terminologier, men har en tendens til å dele flere grunnleggende teorier som består kjernen av kryptografi siden menneskeheten først ønsket å skjule en melding fra nysgjerrige øyne. I dag er disse teoriene gjelder for de fleste krypteringsalgoritmer, uansett type eller programmeringsspråk til tider, ved først å bryte ned meldingen til binær kode.

Innbytte

En substitusjon chiffer erstatter en verdi med en annen; for eksempel, den binære "1001" kan bli "101" og "0101" vil bli erstattet av "111." Et klassisk eksempel på et bytte chiffer er Cæsars chiffer, som erstattet bokstavene i alfabetet med bokstaven tre trinn ned ( "C" blir "F"). Dessverre er substitusjon chifre lett sprekker, spesielt når det brukes til å kryptere bokstaver basert på frekvensanalyse eller sammenheng.

Et eksempel på algoritme for en substitusjonsfunksjon er "c = E (x, a) = (a + x) mod 26", som betyr at den krypterte tegn "c", er fra krypteringen (eller "E") av "x "og" a ", hvor" x "er graden av forskyvning fra bokstaven" a ". Mod delen er det hele tall gjenværende av det resulterende tall fra "x" og en delt ved 26, antallet bokstaver i det engelske alfabetet.

Innarbeiding / Permutasjon

Transponering chiffer skifte rundt verdier i en bestemt rekkefølge. En enkel ikke-binær eksempel presiserer: Med permutasjon, sekvensen "1234" kan bli "2314" ved å flytte det første sifferet til den tredje, andre til første, tredje til andre og forlate den fjerde. Med et binært mønster av biter og samme permutasjon regel, "1101" vil bli "1011." Rail Fence Cipher er et eksempel på en trans chiffer. Permutasjon chiffer er marginalt sterkere enn substitusjon chifre, men kan tydes med relativ letthet avhengig av chiffer lengde.

XOR

XOR, eller "eksklusiv ELLER," operasjon er en annen grunnleggende krypteringsprosessen som returnerer "true" hvis bare en av verdiene er sant. Med de tidligere eksemplene i tankene, "1001" sammenlignet med nøkkelen "0101" vil returnere verdien av "1100" og er lett reverseres i den opprinnelige med samme nøkkel - "1100" med "0101" blir "1001."

blokkchiffer

Blokk-kodenøkler bryte ned data til et gitt antall bits og bruke en hvilken som helst eller alle av de tidligere teorier om disse blokkene for å kryptere dem. Andre muligheter omfatter imidlertid Cipher Block Chaining, som bruker den foregående blokk for å kryptere den neste blokken i kjeden, ytterligere scrambling av data. Data Encryption Standard og Triple DES er gode eksempler på blokkchiffer med ulike operasjoner av substitusjon, permutasjon og XOR.