MD5 vs SHA-256: differenzi u rakkomandazzjonijiet

MD5uSHA-256huma żewġ funzjonijiet hash kriptografiċi. Huma tipproduċi marki tas-swaba' ta' daqs fiss minn input ta' daqs arbitrarju. Niltaqgħu magħhom kullimkien: verifika tal-integrità tal-fajl, firem, identifikaturi uniċi, ċertifikati TLS, blockchain. L-istatus tas-sigurtà tagħhom, madankollu, huwa differenti ħafna: MD5 huwaimkisser mill-2004 għal użi kriptografiċi, SHA-256 jibqa' sigur fl-2026. Dan l-artikolu jieħu kont.

Tifkira dwar il-funzjonijiet tal-hash

Funzjoni hash kriptografika tittrasforma messaġġ ta 'kwalunkwe tul f'marki tas-swaba' ta' daqs fiss. Tliet proprjetajiet mistennija:

  • Reżistenza qabel l-immaġini: minħabba hash, irid ikun impossibbli li jinstab il-messaġġ oriġinali.
  • Reżistenza għat-tieni qabel l-immaġini: minħabba messaġġ, irid ikun impossibbli li ssib ieħor li jipproduċi l-istess hash.
  • Reżistenza għall-ħabta: irid ikun impossibbli li jinstabu żewġ messaġġi distinti li jipproduċu l-istess hash.

Funzjoni jingħad li tkun imkisser hekk kif waħda minn dawn il-proprjetajiet taqa '. Għal MD5, reżistenza għal ħabtiet waqgħu fl-2004.

MD5: 128 bit, miksur mill-2004

MD5 (Message Digest 5) hija karatteristika iddisinjata minn Ronald Rivest fl-1991 u standardizzat minn RFC 1321. Hija tipproduċi marki tas-swaba' ta' 128 bit (16-il bytes, 32 karattru eżadeċimali).

Fl-2004, Wang u Yu ppubblikaw attakk li pproduċa ħabtiet MD5 fi żmien sigħat fuq PC. Minn dakinhar, l-ispiża tal-ġenerazzjoni ta 'ħabta naqset għal ftit sekondi. Fl-2008, ir-riċerkaturi fabbrikaw ċertifikat SSL falz iffirmat MD5 rikonoxxut bħala validu mill-browsers kollha. Fl-2012, il- Flame malware uża ħabta MD5 biex jiffirma l-eżekutibbli tiegħu bħala binarju ta 'Microsoft leġittimu.

Konklużjoni:MD5 m'għandux jibqa 'jintuża hekk kif attakkant jista' jinfluwenza l-input. L-użi kriptografiċi kollha (firem, integrità kontra avversarju, derivazzjoni taċ-ċavetta) huma esklużi. Ftit użi biss mingħajr ostilità jibqgħu aċċettabbli, bħal checksum tat-trasferiment tan-netwerk jew ċavetta tal-cache: MD5 jibqa 'mgħaġġel, u l-ħabta mhux intenzjonata tibqa' statistikament impossibbli.

SHA-256: 256 bit, sigur fl-2026

SHA-256jappartjeni għall-familja SHA-2 ippubblikata minn NIST fl-2001 u standardizzata minn FIPS 180-4. Hija tipproduċi marki tas-swaba' ta' 256 bit (32 bytes, 64 karattru eżadeċimali).

Ma huma magħrufa l-ebda attakki prattiċi kontra SHA-256. L-aqwa attakk teoretiku fuq il-ħabtiet tikkonċerna 31 rawnd minn 64, mingħajr implikazzjoni prattika. L-ispiża tal-forza bruta tas-sejba ta 'ħabta hija ta' l-ordni ta' 2^128 operazzjoni, lil hinn mil-lat ta' kwalunkwe infrastruttura magħrufa.

SHA-256 jintuża fi: TLS (ċertifikati X.509), Git (mit-tranżizzjoni SHA-256), Bitcoin (prova xogħol), firem tal-pakkett Linux, Windows Update, eċċ Illum huwa l-hash default rakkomandatgħall-maġġoranza tal-użi kriptografiċi ġenerali.

Differenzi prattiċi

Tul tal-ħruġ

MD5("bonjour") = 5d41402abc4b2a76b9719d911017c592 (32 karattri hex)
SHA-256("bonjour") = 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 (64 hex chars)

Veloċità

MD5 huwa madwar 2-3 darbiet aktar mgħaġġel minn SHA-256 fuq l-istess magna. Fuq CPU modern, MD5 jipproċessa diversi GB/s għal kull qalba, SHA-256 huwa fl-ordni ta 'GB/s. Fuq CPUs riċenti b'estensjoni SHA-NI, id-distakk jonqos sew.

Sigurtà

Din hija l-unika differenza li verament importanti: MD5 huwaimkissergħal ħabtiet, SHA-256 mhuwiex. Jekk is-sigurtà kontra avversarju tkun fil-periklu, l-għażla hija ċara.

Tabella ta' tqabbil

Każijiet ta' użu

Meta MD5 jibqa' aċċettabbli

  • Application cache key (Redis, memcached) mingħajr implikazzjonijiet tas-sigurtà
  • Sejbien duplikat f'sett tad-dejta mhux ostili
  • Checksum ta' trasferiment ta' netwerk biex tiġi identifikata korruzzjoni aċċidentali
  • Footprint ta' katina għad-distribuzzjoni (sharding) mingħajr restrizzjoni kontradittorja

Meta SHA-256 ikun meħtieġ

  • Iċċekkja l-integrità kontra attakkant (downloads iffirmati, pakketti)
  • Firem diġitali, ċertifikati X.509
  • Identifikaturi Git ta' kommessi u oġġetti
  • Derivazzjoni taċ-ċavetta (flimkien ma' HKDF)
  • Kull applikazzjoni soġġetta għal rekwiżit regolatorju (PCI-DSS, ANSSI, FIPS)

Eżempji konkreti

Fil-PHP, iż-żewġ funzjonijiet huma disponibbli permezz tal-funzjoni hash():

// Imprint of a string
$md5 = hash('md5', 'hello world');
$sha256 = hash('sha256', 'hello world');

// Marki tas-swaba' fajl (streaming)
$md5File = hash_file('md5', '/path/to/file.iso');
$sha256File = hash_file('sha256', '/path/to/file.iso');

Tista 'tiġġenera dawn il-prints direttament online ma tagħna ġeneratur tal-hash tat-test, hash fajl ma fajl hash generator, jew identifika tip ta' hash mhux magħruf bl-identifikatur tal-hash.

Rakkomandazzjoni

Ir-Regola 2026 hija sempliċi:SHA-256 awtomatikament. MD5 m'għandux jidher aktar fi il-kodiċi tiegħek hekk kif attakkant jista 'jinfluwenza l-input, li jkopri kważi l-każijiet kollha server. Il-prestazzjoni superjuri ta 'MD5 m'għadhiex tiġġustifika l-użu tagħha, id-distakk sar negliġibbli b'aċċelerazzjonijiet SHA-NI preżenti fuq CPUs x86 u ARM moderni.

Mistoqsijiet frekwenti

L-MD5 għadu sikur għall-passwords?

Le, qatt.U dan il-punt huwa indipendenti mill-ħabtiet: MD5 huwa mgħaġġel wisq. GPU tkisser bosta biljuni MD5 hashes kull sekonda, u tagħmel kwalunkwe attakk dizzjunarju jew forza bruta trivjali. Għall-passwords, uża bcrypt, Argon2 jew scrypt (ara l-tqabbil tagħna Bcrypt vs Argon2).

X'inhi d-differenza bejn SHA-256 u SHA-2?

SHA-2 hija l-familja, SHA-256 hija membru. Il-familja tinkludi SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224 u SHA-512/256. Huma differenti fid-daqs tal-produzzjoni u d-daqs tal-fajl. blokki interni. SHA-256 huwa l-aktar varjant użat.

Għandna nimxu għal SHA-3?

Mhux bilfors. SHA-3 (rilaxxat fl-2015) tiddependi fuq kostruzzjoni radikalment differenti (Keccak/sponża), iżda SHA-256 jibqa' sigur. SHA-3 iservi prinċipalment bħala pjan B f'każ ta 'problemi mhux mistenni fuq SHA-2. Agħżel SHA-3 jekk standard jeħtieġha, jew jekk trid diversità kriptografiku. Inkella, SHA-256 tibqa 'l-għażla standard.

Nistgħu nreġġgħu lura hash MD5 jew SHA-256?

Le, bil-kostruzzjoni: hash jitlef l-informazzjoni. Is-siti ta '"decryption" MD5 ma jagħmlux dan milli mistoqsija bażijiet ġiganteski ta 'hashes preikkalkulati (tabelli tal-qawsalla) għall-entrati komuni. Għal data twila każwali, is-sejba tad-dħul huwa impossibbli bit-tnejn algoritmi.

SHA-256 se jitkisser minn kompjuter quantum?

L-algoritmu ta' Grover inaqqas bin-nofs is-sigurtà effettiva tal-hashes kontra attakkant quantum: SHA-256 imbagħad joffri madwar 128 bit ta 'sigurtà, li jibqa' fil-biċċa l-kbira biżżejjed. L-ebda urġenza min-naħa tal-hash, b'differenza mill-kriptografija asimmetrika.

Kriterju MD5 SHA-256
Sena19912001
Daqs tal-output128 bit / 32 hex256 bit / 64 hex
Reżistenza għall-ħabtaMiksur mill-2004L-ebda attakk prattiku
Veloċità relattiva2 sa 3 darbiet aktar mgħaġġlaReferenza
Aċċelerazzjoni tal-ħardwer Xejn iddedikatSHA-NI fuq CPUs riċenti
Użu kriptografikuMhux rakkomandatRakkomandat
Użu ta' integrità mhux ostiliAċċettabbliRakkomandat
Konformità regolatorjaMiċħuda (PCI-DSS, FIPS)Aċċettata