Hashtab

Hash-urile sunt coduri generate folosind algoritmi care asociază unor date (un fișier, un text, etc) un cod de lungime fixă format din cifre și litere. Algoritmul este astfel conceput încât orice alterare a datelor inițiale să genereze un cod cu totul diferit și pe deasupra să fie dificilă creerea unor alte date cu același cod. Astfel se poate verifica foarte ușor integritatea fișierelor. Fișierele pot fi alterate nu doar de viruși ci și din erori de copiere, download, etc. Multe site-uri oferă la download-ul fișierelor și un hash calculat după fișierul original pentru a putea fi comparat cu downloadul. Există o multitudine de algoritmi care genereză hash-uri, cu lungimi diferite și grate diferite de siguranță.

Singura problemă este că Windows nu are încorporată o funcție care să calculeze hash-urile fișierelor deși acest lucru ar fi foarte folositor. Există multe programe care calculează has-ul fișierelor, dar cel mai simplu, eficient și complet pe care l-am întâlnit până în prezent este Hashtab. Avantajele acestuia sunt:

  • Este bine integrat în sistemul de operare și e accesibil fără a fi necesară lansarea unui program separat (adaugă un tab de hash-uri la proprietățile fișierelor, de aici venindu-i și denumirea)
  • Calculează o gamă foarte largă de hash-uri (15), majoritatea programelor generând până la 5, unele fiind chiar specifice unui singur algoritm.
  • Compară automat hash-ul fișierului cu cel de referință
  • Afisează și o bară de progres, deoarece durata de generare a hash-urilor depinde de mărimea fișierelor, de numărul algoritmilor selectați și de procesorul calculatorului.
  • Este gratuit.
  • Compatibil cu Windows și MacOS

Hashtab

Interfața este intuitivă, odată accesat tabul File Hashes el deja calculează și afișează hash-urile care sunt dorite de utilizator. De la Opțiuni se pot alege hash-urile dorite dintre 15 care sunt cele mai folosite. Programul reține care sunt hash-urile selectate de utilizator astfel că ulterior prin simpla accesare a tab-ului File Hashes, le va calcula automat. Tot din opțiuni se poate alege dacă hash-urile să fie afișate cu litere mari sau mici. Avantajul este că utilizatorul poate utiliza alte taburi din Properties deoarece, odată selectat tabul File Hashes, calcularea lor va continua în fundal (acest lucru fiind necesar în general pentru fișierele relativ mari). Hash-urile generate pot fi copiate cu un simplu click dreapta. Astfel va apărea un meniu care va permite copierea unui singur Hash sau a tuturor.

Aici aveți un exemplu al hash-urilor generate pentru installerul programului copiate direct din Hashtab.

CRC32: 5CFDD716

MD5: 5845F52D425C75E232B1AD5EE3B189A8

SHA-1: 2F6D10AF4CA263B762BA5749827017D42DF73BF2

O altă facilitate a programului este compararea Hash-urilor fișierului cu cele de referință. Astfel trebuie doar să copiați un hash în caseta de text Hash Comparison și în cazul în care hash-ul este recunoscut va apărea o bifă verde și numele hash-ului care corespunde, dupa cum se observă în screenshot-ul alăturat. În cazul în care hash-ul nu este recunoscut va apărea un X roșu. Atenție, pentru ca un hash să fie recunoscut, el trebuie să fie selectat din Opțiuni ca să fie calculat.

Hashtab permite și compararea hash-urilor între fișiere. Astfel trebuie selectat unul din hash-urile calculate anterior și cu butonul ”Compare a file…” se poate selecta un alt fișier. Hash-ul comparat va apărea in caseta de text de la Hash Comparison și numele sau va fi arătat împreună cu o bifă sau un X, similar comparării cu un hash dat.

Algoritmii de hash disponibili în opțiuni sunt:

Opțiunile Hashtab

Interfața și funcționalitatea în MacOS este similara, Hashtab putând fi accesat cu click dreapta pe fișier -> More -> File Hashes, dar neavând un Mac la dispoziție nu pot oferi mai multe detalii.

Descarcă Hashtab!

6 thoughts on “Hashtab”

  1. Functiile de hash sunt folosite in special pentru a verifica daca au fost alterate fisierele criptate, aceste functii impreuna cu algoritmi de criptare sunt folosite pentru a crea semnaturi electronice. De asemenea majoritatea celor din articol nu mai sunt asa performante intrucat se pot gasi coliziuni intr-un timp foarte scurt (de exemplu MD5 este pe 128 de biti, asta inseamna ca exista 2 entitati (text,fisier) care vor genera acelasi hash) (majoritatea site-urilor web folosesc pentru a ascunde parola o astfel de functie (MD5 sau SHA1) si compara doar hash-ul generat cu cel din baza de date, de aceea la resetare nu primiti parola veche ci una noua). Majoritatea functiilor le gasiti in libraria openSSL ce poata fi folosita in realizarea programelor C++.

  2. Pentru fisierele luate “de pe net” sunt inca ce mai utilizata metoda de verificare.. Am instalat programelul inca dinainte sa fie publicat articolul ;)). E foarte util sa ai hash-urile la un click distanta. Asa te si feresti de fisierele alterate.

  3. Stiu ca teoretic e posibil sa “pacalesti” algoritmii de criptare, dar e cu atat mai complicat cu cat fiserele sunt mai mari. E foarte munca multa pentru un castig destul de mic. Plus ca de obicei verifici ambele hash-uri. si MD5 si SHA1. Dar da, link-ul e un “proof of concept” misto. Si vazand ca e din 2007 ma intreb cum de MD5 e inca folosit la scara larga.

  4. Pai MD5 nu ar mai trebui folosit din 2005, in prezent se poate ajunge la coliziuni in cateva ore(mai ales pe sisteme Paragon 1840, in cateva secunde), SHA1 la fel, dar dupa cum ziceam sunt folosite pentru stocarea parolelor de pe site-uri, si in cazul asta este bine sa folosesti un salt adica parola o concatenezi cu un text, astfel incat chiar daca decodeaza hash-ul sa nu afle parola, sau folosesti succesiune de algoritmi – hash de MD5 la hash de SHA1 la hash de RIPEMD, de asemenea numerele dupa functii reprezinta bitii, cu cat este o functie pe mai multi biti, cu atat se sparge mai greu, normal avem o multime infinita – orice vrem sa trecem prin functia hash si o multime finita, multimea pe care este dat raspunsul – MD5 128 biti, SHA1 160 biti… marind multimea finita – numarul de biti, se mareste si siguranta functiei. Viitorul este aici: http://ehash.iaik.tugraz.at/wiki/The_SHA-3_Zoo.
    ATENTIE totusi toate aceste functii sunt vulnerabile la atac de tip dictionar, aici iar intra salt-ul.

Leave a Reply to Emanuel Cancel reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>