Ukubethela kwe-Blowfish: Isebenza Kanjani, Izinzuzo, Nokuqhathanisa

Isibuyekezo sokugcina: I-24 March ka-2025
  • I-Blowfish iyi-64-bit symmetric block cipher enokhiye abafika kumabhithi angu-448.
  • Isebenzisa uhlaka lwe-Feistel oluyimizuliswano engu-16 namabhokisi ashintshayo ukuze kuvikeleke okwengeziwe.
  • Inikeza isivinini esikhulu nokuguquguquka, kodwa i-AES ithathe indawo yokusetshenziswa kwayo ezinhlelweni eziningi.
  • Naphezu kweminyaka yayo, ihlala iyindlela ethembekile ezindaweni ezithile.

I-Blowfish cipher diagram
El I-Blowfish cipher Kuyi-algorithm ye-block cipher eyakhiwe ngo-1993 nguBruce Schneier njengendlela esheshayo nevikelekile ku-DES. Le ndlela yokubethela iye yamukelwa kabanzi ezinhlelweni ezihlukahlukene ngenxa yokusebenza kahle kwayo nokuvumelana nezimo ekusebenziseni okhiye bosayizi abahlukene. Ukuze ujule esihlokweni se-cryptography, ungafunda kabanzi mayelana Iyini i-cryptography?.

Ngokuhamba kweminyaka, i-Blowfish ifakazele ukuthi iyi-cipher ethembekile, yize manje isithathelwe indawo ezinhlelweni eziningi izindlela ezithuthuke kakhulu njenge-AES. Noma kunjalo, isalokhu iyinketho efanele ezimweni ezithile lapho ukuphepha nesivinini kuyizinto eziza kuqala.

Kuyini ukubethela kwe-Blowfish?

I-Blowfish iyi- algorithm yokubethela ehambisanayo esebenza ngamabhulokhi angu-64-bit futhi isebenzisa okhiye abasukela kuma-bit angu-32 kuya kwangu-448. Yaklanywa ukunikeza ukusebenza okuphezulu ngokwejubane ngaphandle kokubeka engcupheni ukuphepha. Uma unesifiso sokufunda ngezinye i-ciphers ezihambisanayo , kukhona nolwazi olubalulekile ngazo.

Le algorithm isebenzisa isakhiwo se -Feistel cipher esiyindilinga eziyi-16 . Umklamo wayo we-modular wenza kube lula ukuzivumelanisa nehadiwe ehlukene kanye nokusetshenziswa kwesofthiwe.

Izici eziyinhloko ze-algorithm

  • Ubude bokhiye oguquguqukayo: Ivumela ukulungiselelwa ngokwezifiso phakathi kwamabhithi angu-32 no-448.
  • Kuyashesha futhi kusebenza kahle: Idizayinelwe ukuletha ukusebenza okuphezulu kwesoftware.
  • Ilungelo lobunikazi: Ingasetshenziswa ngaphandle kwemikhawulo yelayisensi.
  • Ayikaphulwa: Kuze kube manje, akukho ukuhlasela okusebenzayo ngokumelene nokuphepha kwayo okutholiwe.
  I-AI yendawo kanye nokwenza izinto ngokuzenzakalela: ama-ejenti, ezokuphepha, kanye namacala angokoqobo

Isebenza kanjani i-Blowfish Cipher

I-Blowfish cipher isebenzisa ama-subkey angu-18 kanye namabhokisi amane okufaka angu-256 (amabhokisi e-S) ukucubungula idatha. Inqubo yokubethela incike ekusebenzeni okuphindaphindwayo kwe-XOR kanye nokushintshana kusetshenziswa lezi zakhiwo.

Ukhiye wokufaka uqala ama-subkey nama-S-boxes ngaphambi kokusebenzisa. Ukuze wenze lokhu, amanani alezi zakhiwo asekelwe kumadijithi e-hexadecimal ka-π , okuqinisekisa ukusatshalaliswa kwedatha okungahleliwe.

Inqubo yokubhala ngemfihlo

  • Ibhulokhi engu-64-bit ihlukaniswe yaba izingxenye ezimbili ze-32-bit: kwesokunxele (L) nesokudla (R).
  • Ingxenye engakwesokunxele ifakwe u-XOR nge-subkey yokuqala futhi yadlula kumsebenzi ongu-F.
  • Umphumela uthi XORed ngesigamu esifanele.
  • Ama-halves ayashintshaniswa futhi inqubo iphindaphindiwe imijikelezo engu-16.
  • Ngemuva komzuliswano wokugcina, kusetshenziswa ama-XOR amabili wokugcina nama-subkeys wokugcina.

Lo mklamo uqinisekisa ukuthi ngisho nezinguquko ezincane embhalweni wokuqala zizoholela ekushintsheni okukhulu kombhalo oyimfihlo. Ukuze uthole umbono ophelele wezindlela zokubethela, ungavakashela isigaba sezindlela zokubethela.

Isizukulwane Esibalulekile ku-Blowfish

Ukudalwa kwezihluthulelo ku-Blowfish kuyinqubo eyinkimbinkimbi edinga ukuphindaphinda okungu-521 ukuze kuqalwe ngokugcwele izihluthulelo ezincane kanye nama-S-boxes. Lokhu kwenziwa ngokubethela ngokuphindaphindiwe ibhulokhi lama-zero nokufaka amanani esikhundleni sezihluthulelo ezincane kanye namabhokisi okufaka esikhundleni.

Ngenxa yalokhu bunzima ekukhiqizeni okubalulekile, i-Blowfish ivimbela ukuhlaselwa okusekelwe emaphethini edatha aphindaphindayo.

Izinzuzo kanye nokubi kwe-Blowfish

Izinzuzo

  • Ukubethela ngesivinini esiphezulu kanye nokuqaqwa kwemfihlo.
  • Okhiye bobude obuguquguqukayo.
  • Kumahhala ukuze kusetshenziswe.
  • Ukuvikeleka okuqinile okungenayo imibiko yokuba sengozini okubalulekile.
  Iyini iFortinet: futhi isetshenziselwa ini?

nebubi

  • Amabhulokhi angu-64-bit, avikeleke kancane kunamabhulokhi angu-128-bit asetshenziswa yi-AES.
  • Ukuqaliswa kwayo kungaba yinkimbinkimbi ngenxa yenqubo eyinhloko yokuqalisa.

I-Blowfish iqhudelana namanye ama-algorithms wokubethela

I-Blowfish incintisana namanye ama-algorithms afana ne -DES, i-Triple DES, kanye ne-AES . Uma iqhathaniswa ne-DES, i-Blowfish inikeza ukuphepha okungcono kanye nokuguquguquka okukhulu ngenxa yobude bayo bokhiye obuguquguqukayo.

Kodwa-ke, i-AES , enamabhulokhi ayo angu-128-bit kanye nesakhiwo sayo esithuthukisiwe, ithathe indawo ye-Blowfish ezinhlelweni eziningi zesimanje. Enye indlela ethuthukisiwe esikhundleni se-Blowfish yi -Twofish , eklanywe ngumbhali ofanayo nomuntu ofanelekela izinga le-AES.

Ukubethela kwe-Blowfish kuhlala kuyinketho esebenzayo ezindaweni ezithile lapho ukuphepha nesivinini kubaluleke kakhulu. Idizayini yayo engenalungelo lobunikazi kanye nesakhiwo se-modular kuyenza ithandeke ekusetshenzisweni lapho ukuguquguquka kuwukhiye. Yize i-AES isithole ukuduma, i-Blowfish iseyithuluzi eliwusizo ezindaweni ezidinga ukubethela okusheshayo nokuthembekile.

Ukubethela okulinganayo
I-athikili ehlobene:
Ukubethela kwe-Symmetric: okhiye abangu-10 ababalulekile bokuqonda le ndlela yokuphepha