Kripta Hash-Funkcio

Kripta Hash-Funkcio-Difino

Kripta haŭta funkcio estas speco de algoritmo, kiu povas esti kurita per peco da datumoj, kiel individua dosiero aŭ pasvorto, por produkti valoro nomatan ĉekumon.

La ĉefa uzo de kripta hava funkcio estas kontroli la aŭtentikecon de peco da datumoj. Du dosieroj povas esti certaj esti identaj nur se la checksumoj generitaj de ĉiu dosiero, uzantaj la saman kripta haŭta funkcio, estas identaj.

Iuj komune uzataj ĉifraj funkcioj estas MD5 kaj SHA-1 , kvankam multaj aliaj ankaŭ ekzistas.

Noto: Kritaj hakaj funkcioj ofte estas nur raportitaj kiel hash-funkcioj por mallonga, sed tio ne estas teknike korekta. Funkcio hash estas pli generika termino, kiu kutime kutimas ampleksi ĉifrajn hakajn funkciojn kune kun aliaj specoj de algoritmoj kiel ciklaj redundaj ĉekoj.

Funkcioj Cryptográficas Hash: Uzita Kazo

Ni diru, ke vi elŝutas la lastan version de la retumilo de Firefox . Por kia ajn kialo, vi bezonis elŝuti ĝin de retejo krom Mozilla. Ne estante gastigita en loko, kiun vi lernis fidi, vi ŝatus certigi, ke la instaladosierujo, kiun vi ĵus elŝutis, estas la sama afero, kiun Mozilo proponas.

Uzante kalkulilon , vi komputas kontrolon per aparta kripta hava funkcio (diras SHA-2) kaj tiam komparas tion al tiu, kiu estas publikigita en la retejo de Mozilla.

Se ili estas egalaj, tiam vi povas esti prudente certa, ke la elŝuto, kiun vi havas, estas tiu, ke Mozilla intencis havi.

Vidu Kio Estas Kontrolo? Por pli da ĉi tiuj specialaj kalkuliloj, pli da ekzemploj pri uzado de kontroloj por certigi, ke dosieroj, kiujn vi elŝutas, vere estas, kion vi atendis.

Ĉu Kriptaj Hifaj Funkcioj Estu Reversitaj?

Kritaj hakaj funkcioj estas desegnitaj por malhelpi la kapablon reverti la kontrolojn, kiujn ili kreas reen en la originalajn tekstojn.

Tamen, kvankam ili estas preskaŭ neeblaj reverti, ĝi ne signifas, ke ili estas 100% garantiitaj por protekti datumojn.

Iu nomata ĉielarka tablo povas esti uzata por rapide eltrovi la kompletan tekston de kontrolo. Rainbow-tabloj estas esence vortaroj, kiuj listigas milojn, milionojn, aŭ eĉ miliardojn da ĉi tiuj kune kun ilia responda kompleta teksto.

Dum ĉi tio ne teknike revertas la kriptografian haŭtan algoritmon, ĝi eble povus esti pro tio ke ĝi estas tiel simpla fari. Fakte, ĉar neniu ĉielarka tablo povas listigi ĉiun eblajn ekzamenojn, ili kutime nur estas "helpema" por simplaj frazoj ... kiel malfortaj pasvortoj.

Jen simpligita versio de ĉielarka tablo por montri, kiel oni funkcius uzinte la funkcion criptográfica hash de SHA-1:

Kompleta teksto SHA-1 Kontrolo
12345 8cb2237d0679ca88db6464eac60da96345513964
pasvorto1 e38ad214943daad1d64c102faec29de4afe9da3d
ilovemydog a25fb3505406c9ac761c8428692fbf5d5ddf1316
Jenny400 7d5eb0173008fe55275d12e9629eef8bdb408c1f
dallas1984 c1ebe6d80f4c7c087ad29d2c0dc3e059fc919da2

Por ĉi tiuj valoroj esti pripensitaj per la kontrolo, ĝi postulus, ke la hakisto komprenu, ke krifografia hash-algoritmo estis uzata por generi ilin.

Por aldonita protekto, iuj retejoj, kiuj stokas uzantajn pasvortojn plenumas pliajn funkciojn al la kripta hash-algoritmo post kiam la valoro estas generita, sed antaŭ ol ĝi estas konservita.

Ĉi tio produktas novan valoron, kiun nur la servanto retejo komprenas kaj tio ne ĝuste kongruas kun la originala kontrolo.

Ekzemple, kiam pasvorto estas enmetita kaj la kontrolo de la kontrolo estas kreita, ĝi povus esti apartigita en plurajn partojn kaj reordigita antaŭ ol ĝi estas konservita en la pasvorta datumbazo, aŭ iuj karakteroj povus esti interŝanĝitaj kun aliaj. Kiam la uzanto provas aŭtentikigi la sekvan fojon, kiam ili aliĝos, ĉi tiu aldona funkcio estus revertita de la servilo kaj la originala kontrolo denove generita, por kontroli, ke la pasvorto de uzanto estas valida.

Fari ĉi tion helpas limigi la utilecon de hako, kie ĉiuj checksumoj estas ŝtelitaj.

Denove, la ideo ĉi tie devas plenumi funkcion, kiu estas nekonata, por ke se la hakisto konas la kriptografian haŭtan algoritmon, sed ne ĉi tiu kutimo, tiam sciante la pasvorton-kontroloj estas senhelpa.

Pasvortoj kaj Kriptaj Hash-Funkcioj

Simila al ĉielarka tablo estas kiel datumbazo savas uzantajn pasvortojn. Kiam via pasvorto estas enskribita, la kontrolo estas generita kaj komparata kun la sur rekordo kun via uzantnomo. Vi tiam koncedas aliron, se la du estas identaj.

Konsiderante, ke kripta hava funkcio produktas neŝanĝeblan kontrolon, ĉu tio signifas, ke vi povas fari vian pasvorton tiel simpla kiel 12345 , anstataŭ 12 @ 34 $ 5 , simple ĉar la kontroloj mem ne povas esti komprenitaj? Ĝi certe ne faras, kaj jen kial ...

Kiel vi povas vidi, ĉi tiuj du pasvortoj estas ambaŭ neeblaj deĉifri nur rigardante nur ĉe la ĉekumo:

MD5 por 12345: 827ccb0eea8a706c4c34a16891f84e7b

MD5 por 12 @ 34 $ 5: a4d3cc004f487b18b2ccd4853053818b

Do, unuavide vi eble pensas, ke ĝi estas absolute bone uzi ĉi tiujn el la pasvortoj. Ĉi tio certe estas certa, se atacanto provas eltrovi vian pasvorton per divenado de la MD5-kontrolo (kiun neniu faras), sed ne vera se bruta forto aŭ vortaro atakas (kio estas komuna taktiko).

Bruta forta atako estas kiam multaj hazardaj kolizioj estas prenitaj al diveni pasvorton. En ĉi tiu kazo, estus tre facile diveni "12345", sed sufiĉe malfacile distingi hazarde la alian. Atentila vortaro estas simila, ke la atacanto povas provi ĉiun vorton, numeron aŭ frazon de listo de komuna (kaj malpli kutime uzataj) pasvortoj, "12345" definitive esti unu, kiu estus provita.

Do, kvankam kroĉografiaj hash-funkcioj kaŭzas malfacilajn neeblajn-divenajn kontrolojn, vi ankoraŭ devas uzi kompleksan pasvorton por ĉiuj viaj enretaj kaj lokaj uzantoj.

Konsilo: Vidu ekzemplojn de malfortaj kaj fortaj pasvortoj se vi ne certas ĉu via estas konsiderata forta pasvorto.

Pli da Informoj pri Kriptaj Hash-Funkcioj

Eble ŝajnas, ke kriptaj hash-funkcioj rilatas al ĉifrado, sed ambaŭ laboras tre malsamaj.

La ĉifrado estas duprocezo, kie io estas ĉifrita por iĝi nelegebla, sed poste senĉifrita poste esti uzita kutime denove. Vi povus kodi dosierojn, kiujn vi konservis, por ke ĉiuj, kiuj aliras al ili, ne povos uzi ilin, aŭ vi povas uzi dosieran kodigon por kodi dosierojn movantaj trans reto, kiel vi alŝutas aŭ malŝarĝas interrete.

Kiel priskribita supre, kriptaj hash-funkcioj funkciis malsame, ĉar la ĉekumpoj ne volas renversi kun speciala pasvorto de-havaĵo kiel kiel ĉifritaj dosieroj estas legataj per speciala senĉifrita pasvorto. La funkciaj ĉifraj funkcioj de ĉifraj serviloj estas kompari du pecojn de datumoj, kiel malŝarĝi dosierojn, stoki pasvortojn, tirante datumojn de datumbazo, ktp.

Ĝi eblas kripta hash-funkcio por produkti la saman kontrolon por diversaj datumoj. Kiam tio okazas, ĝi estas nomita kolizio. Klare, ĉi tio estas grandega problemo konsiderante la tutan punkton de kripta hava funkcio estas fari tute unikajn kontrolojn por ĉiu datumo enmetita al ĝi.

La kialoj de kolizioj povas okazi estas ĉar ĉiu kripta hava funkcio produktas valoron de fiksa longo sendepende de la enigo de datumoj. Ekzemple, la MD5-kripta hak- funkcio generas 827ccb0eea8a706c4c34a16891f84e7b, 1f633b2909b9c1addf32302c7a497983 , kaj e10adc3949ba59abbe56e057f20f883e por tri tute malsamaj blokoj de datumoj.

La unua ĉekumo estas de 12345 , la dua estis generita el pli ol 700 literoj kaj nombroj, kaj la tria estas el 123456 . La tri enigoj estas de malsamaj longoj, sed la rezultoj estas nur 32 karakteroj longaj post kiam MD5 estis uzata.

Kiel vi povas vidi, preskaŭ ne ekzistas limigo al la nombro da ĉekumpoj, kiujn oni povus krei, ĉar ĉiu eta ŝanĝo en la enigo devas produkti tute malsaman kontrolon. Tamen, ĉar ekzistas limo al la nombro da kazoj, unu kripta hava funkcio povas produkti, ĉiam ekzistas ebleco, ke vi renkontos kolizion.

Jen kial aliaj funkcioj criptográficas hash estis kreitaj. Dum MD5 generas valoron de 32 karakteroj, SHA-1 generas 40 karakterojn kaj SHA-2 (512) generas 128. La plej granda nombro da karakteroj, kiujn la kontrolo havas, la malpli da probabla okazo ke kolizio okazos ĉar ĝi havigas pli da spaco por unikaj valoroj.