Stream Cipher vs Block Cipher | State Cipher vs Block Cipher
I kryptografi er Stream-chiffer og Block-chiffer to krypterings-/dekrypteringsalgoritmer som tilhører familien av symmetriske nøkkelsiffer. Vanligvis tar en chiffer en ren tekst som input og produserer en chiffertekst som utdata. Blokkchiffer krypterer blokk med biter med fast lengde ved å bruke en uforanderlig transformasjon. Strømchiffer krypterer strømmer av biter med varierende lengde og bruker varierende transformasjon på hver bit.
Hva er en strømkryptering?
Strømmechiffer tilhører familien av symmetriske nøkkelsiffer. Strømchiffer kombinerer rentekstbiter med en pseudorandom chifferbitstrøm med bruk av XOR (eksklusiv-eller) operasjon. Strømchiffer krypterer ren tekstsifre ett om gangen med varierende transformasjoner for påfølgende sifre. Fordi krypteringen av hvert siffer avhenger av den nåværende tilstanden til chiffermotoren, er strømchiffer også kjent som tilstandssiffer. Vanligvis brukes enkeltbiter/biter som enkeltsiffer. For å unngå sikkerhetsproblemer, bør det sørges for at den samme starttilstanden ikke brukes mer enn én gang. Det mest brukte strømchifferet er RC4.
Hva er en blokkchiffer?
Et blokkchiffer er et annet symmetrisk nøkkelchiffer. Blokkchiffer opererer på blokker (grupper av biter) med fast lengde. Blokkchiffer bruker en fast (uvarierende) transformasjon for alle sifre i blokken. For eksempel, når en x-bit blokk ren tekst (sammen med en hemmelig nøkkel) er gitt som input til blokk chiffer-motoren, produserer den tilsvarende x-bit blokk med chiffertekst. Selve transformasjonen er avhengig av den hemmelige nøkkelen. Tilsvarende gjenoppretter dekrypteringsalgoritmen den opprinnelige x-bit-blokken med ren tekst ved å bruke x-bit-blokken med chiffertekst og den hemmelige nøkkelen ovenfor som input. I tilfelle inndatameldingen er for lang sammenlignet med størrelsen på blokken, vil den bli brutt ned til blokker og disse blokkene vil (individuelt) krypteres med samme nøkkel. Men fordi den samme nøkkelen brukes, blir hver gjentatt sekvens i ren tekst den samme gjentatte sekvensen i chifferteksten, og dette kan forårsake sikkerhetsproblemer. Populære blokkchiffer er DES (Data Encryption Standard) og AES (Advanced Encryption Standard).
Hva er forskjellen mellom en stream-chiffer og en blokk-chiffer?
Selv om både strøm-chiffer og blokk-chiffer tilhører familien av symmetriske krypterings-chiffer, er det noen viktige forskjeller. Blokkchiffer krypterer blokker med biter med fast lengde, mens strømchiffer kombinerer ren tekstbit med en pseudorandom chifferbitstrøm ved å bruke XOR-operasjon. Selv om blokkchiffer bruker samme transformasjon, bruker strømchiffer varierende transformasjoner basert på tilstanden til motoren. Strømchiffer utføres vanligvis raskere enn blokkchiffer. Når det gjelder maskinvarekompleksitet, er strømchiffer relativt mindre komplekse. Strømchiffer er den typiske preferansen fremfor blokkchiffer når ren tekst er tilgjengelig i varierende mengder (for eksempel en sikker wifi-tilkobling), fordi blokkchiffer ikke kan fungere direkte på blokker som er kortere enn blokkstørrelsen. Men noen ganger er forskjellen mellom strømchiffer og blokkchiffer ikke veldig tydelig. Årsaken er at når du bruker visse driftsmoduser, kan et blokkchiffer brukes til å fungere som et strømchiffer ved å la det kryptere den minste tilgjengelige dataenheten.