Verskil tussen stroomsyfer en blokkode

Verskil tussen stroomsyfer en blokkode
Verskil tussen stroomsyfer en blokkode

Video: Verskil tussen stroomsyfer en blokkode

Video: Verskil tussen stroomsyfer en blokkode
Video: How To Achieve Synchronization In C# While Doing Async Await Multithreaded Programming - .NET Core 2024, Julie
Anonim

Stream Cipher vs Block Cipher | State Cipher vs Block Cipher

In kriptografie is stroomsyfers en bloksyfers twee enkripsie-/dekripsiealgoritmes wat aan die familie van simmetriese sleutelsyfers behoort. Tipies neem 'n syfer 'n gewone teks as invoer en produseer 'n syferteks as uitvoer. Bloksyfers enkripteer blokkies van vaste lengtes met behulp van 'n onveranderlike transformasie. Stroomsyfers enkripteer strome stukkies met verskillende lengtes en gebruik wisselende transformasie op elke stukkie.

Wat is 'n stroomsyfer?

Stroomsyfers behoort aan die familie van simmetriese sleutelsyfers. Stroomsyfers kombineer gewone teks stukkies met 'n pseudorandom syfer bis stroom met die gebruik van XOR (eksklusiewe-of) bewerking. Stroomsyfers enkripteer gewone tekssyfers een op 'n slag met wisselende transformasies vir opeenvolgende syfers. Omdat die enkripsie van elke syfer afhang van die huidige toestand van die syferenjin, staan stroomsyfers ook bekend as staatsyfers. Tipies word enkele bisse/byte as enkelsyfers gebruik. Om sekuriteitsbekommernisse te vermy, moet seker gemaak word dat dieselfde begintoestand nie meer as een keer gebruik word nie. Die mees gebruikte stroomsyfer is RC4.

Wat is 'n bloksyfer?

'n Bloksyfer is nog 'n simmetriese sleutelsyfer. Bloksyfers werk op blokke (groepe stukkies) met vaste lengte. Bloksyfers gebruik 'n vaste (onveranderlike) transformasie vir alle syfers in die blok. Byvoorbeeld, wanneer 'n x-bis blok gewone teks (saam met 'n geheime sleutel) as invoer na die blok syfer-enjin verskaf word, produseer dit die ooreenstemmende x-bis blok syferteks. Die werklike transformasie is afhanklik van die geheime sleutel. Net so herwin die dekripsie-algoritme die oorspronklike x-bis-blok van gewone teks deur die x-bis-blok van syferteks en die bogenoemde geheime sleutel as die invoer te gebruik. In die geval dat die invoerboodskap te lank is in vergelyking met die grootte van die blok, sal dit in blokke afgebreek word en hierdie blokke sal (afsonderlik) geïnkripteer word met dieselfde sleutel. Omdat dieselfde sleutel egter gebruik word, word elke herhaalde volgorde in die gewone teks dieselfde herhaalde volgorde in die syferteks, en dit kan sekuriteitsbekommernisse veroorsaak. Gewilde bloksyfers is DES (Data Encryption Standard) en AES (Advanced Encryption Standard).

Wat is die verskil tussen 'n stroomkripsie en 'n bloksyfer?

Alhoewel beide stroomsyfers en bloksyfers aan die familie van simmetriese enkripsie-syfers behoort, is daar 'n paar belangrike verskille. Bloksyfers enkripteer blokke van stukkies met vaste lengte, terwyl stroomsyfers gewone teksstukke kombineer met 'n pseudo-ewekansige syferbisstroom met behulp van XOR-bewerking. Alhoewel bloksyfers dieselfde transformasie gebruik, gebruik stroomsyfers verskillende transformasies gebaseer op die toestand van die enjin. Stroomsyfers word gewoonlik vinniger uitgevoer as bloksyfers. Wat hardeware-kompleksiteit betref, is stroomsyfers relatief minder kompleks. Stroomsyfers is die tipiese voorkeur bo bloksyfers wanneer die gewone teks in verskillende hoeveelhede beskikbaar is (byvoorbeeld 'n veilige wifi-verbinding), omdat bloksyfers nie direk op blokke korter as die blokgrootte kan werk nie. Maar soms is die verskil tussen stroomsyfers en bloksyfers nie baie duidelik nie. Die rede is dat, wanneer sekere werkswyses gebruik word, 'n blokkode gebruik kan word om as 'n stroomsyfer op te tree deur dit toe te laat om die kleinste eenheid data beskikbaar te enkripteer.

Aanbeveel: