Forskjell mellom Stream Cipher og Block Cipher

Anonim

Stream Cipher vs Block Cipher | State Cipher vs Block Cipher

I kryptering er Stream ciphere og Block ciphers to krypterings- / dekrypteringsalgoritmer som tilhører familien til symmetriske nøkkelciphere. Typisk tar en kryptering en ren tekst som input og produserer en kryptert tekst som utgang. Blokkcifre krypterer fastlengdeblokken av biter ved hjelp av en uvanlig transformasjon. Stream-cifre krypterer strømmer av biter med varierende lengde og bruker varierende transformasjon på hver bit.

Hva er en Stream Cipher?

Stream-cifre tilhører familien til symmetriske nøkkelciphere. Stream-cifre kombinerer vanlig tekstbit med en pseudorandom-krypteringsbitstrøm ved bruk av XOR (eksklusiv eller) -operasjon. Stream-cifre krypterer plain-text siffer en om gangen med varierende transformasjoner for suksessive siffer. Fordi krypteringen av hvert siffer avhenger av den nåværende tilstanden til krypteringsmotoren, er strømkodene også kjent som statscifre. Vanligvis brukes enkle biter / biter som enkelt siffer. For å unngå sikkerhetsproblemer bør det sikres at samme startstatus ikke brukes mer enn en gang. Den mest brukte strømkodingen er RC4.

Hva er en Block Cipher?

En blokk-kryptering er en annen symmetrisk nøkkel-kryptering. Blokkcifre opererer på blokker (grupper av biter) med fast lengde. Blokkciphers bruker en fast (unvariant) transformasjon for alle siffer i blokken. For eksempel, når en x-bit blokk ren tekst (sammen med en hemmelig nøkkel) er gitt som inngang til blokk-krypteringsmaskinen, produserer den tilsvarende x-bit blokk av krypteringstekst. Den faktiske transformasjonen er avhengig av den hemmelige nøkkelen. På samme måte gjenoppretter dekrypteringsalgoritmen den opprinnelige x-bitblokken av ren tekst ved hjelp av x-bit-blokk av krypteringstekst og den ovenfor hemmelige nøkkelen som inngangen. Hvis inngangsmeddelelsen er for lang i forhold til størrelsen på blokken, vil den bli brutt ned til blokker og disse blokkene blir (individuelt) kryptert med samme tast. Men fordi den samme nøkkelen brukes, blir hver gjentatte sekvens i ren tekst den samme gjentatte sekvensen i chifferteksten, og dette kan forårsake sikkerhetsproblemer. Populære blokkcifre er DES (Data Encryption Standard) og AES (Advanced Encryption Standard).

Hva er forskjellen mellom en Stream Cipher og en Block Cipher?

Selv om både strømkipere og blokkcifre tilhører familien til symmetriske krypteringsfrekvenser, er det noen viktige forskjeller. Block-cifre krypterer faste lengdeblokker av biter, mens strømcifre kombinerer enkle tekstbiter med en pseudorandom-krypteringsbitstrøm ved hjelp av XOR-operasjon. Selv om blokkciphere bruker samme transformasjon, bruker strømciphere varierende transformasjoner basert på motorens tilstand.Stream-cifre utfører vanligvis hurtigere enn blokk-cifre. Når det gjelder maskinvarekompleksitet, er strømkodene relativt mindre komplekse. Stream-cifre er den typiske preferansen over blokk-cifre når den enkle teksten er tilgjengelig i varierende mengder (for eksempel en sikker wifi-tilkobling), fordi blokkcifre ikke kan operere direkte på blokker kortere enn blokkstørrelsen. Men noen ganger er forskjellen mellom stream-cifre og blokk-cifre ikke veldig tydelig. Årsaken er at når du bruker visse driftsformer, kan en blokk-kryptering brukes til å fungere som en strømkryptering ved å la den kryptere den minste dataenheten som er tilgjengelig.