Vejledning til Hash-funktioner og hvordan de fungerer

Overtrædelser af digitale data er blevet så almindelige, at de ikke rejser for mange alarmer, medmindre du var en af ​​de millioner af LinkedIn-brugere, der blev udsat for, eller hvis din gamle MySpace-konto blev hacket. Alle disse overtrædelser løber sammen i en kryptisk sløring for de fleste mennesker, der ikke er klar over, hvad disse virksomheder gjorde forkert for at tilbyde dine oplysninger til cybertyve. En af de mange grunde til, at dette kan være sket, er fordi dine oplysninger ikke var korrekt hash’et.


Hash kan bruges ombyteligt som et substantiv eller verb i kryptografi. Hashing er handlingen med at ændre adgangskoder til ukendelige strenge af kode, der er designet af umuligt at konvertere tilbage. Disse kaldes også hash. Nogle hashes kan knækkes mere enkelt end andre, men det er stadig en vanskelig opgave, som de fleste nybegynder hackere ikke vil kunne udføre.

Hvorfor er Hash så vigtig

Hashing-algoritme

De fleste hackere vil bruge data til at få adgang til brugeroplysninger, og for at gøre det har de ofte brug for din adgangskode. Hvad disse kriminelle finder og bedrager fra din profil, gemmes ikke i en form, der kan læses med det blotte øje, medmindre virksomheden ikke beskytter deres følsomme data.

Din adgangskode konverteres typisk til det øjeblik, du opretter en, og det ser ud som et tilfældigt sæt strenge. Det er din adgangskode matematisk omdannet til noget utilpas. I de fleste tilfælde tager det år at dechiffrere en hash, og på det tidspunkt kunne du allerede have ændret adgangskoden eller slettet din konto.

Hvad er Hash-funktioner

Hash-funktioner – Dette er funktioner eller teknikker, der bruges til at kode adgangskoder og anden almindelig tekst til uleselig tekst til lagring og transmission. Der er mange typer Hash-funktioner baseret på den måde, hvorpå almindelig tekst er kodet.

Hvad Hash-funktioner er – Dette er funktioner eller teknikker, der bruges til at kode kodeord og anden almindelig tekst til uleselig tekst til lagring og transmission. Der er mange typer Hash-funktioner baseret på den måde, hvorpå almindelig tekst er kodet.

Hvordan designes Hashes

Hvordan designes Hashes

En hash er designet til at være en envejsfunktion, som er en matematisk operation, der er enkel at udføre i starten, men den kan ikke vendes. Når du hash de rå data, bliver det komplet gobbledegook, hvilket er, hvordan din konto forbliver beskyttet mod hackere.

Hashes er ikke designet til at dekrypteres på nogen måde. Når du har indtastet din adgangskode, udfører systemet hash og kontrollerer resultaterne mod den hash, der blev oprettet af din adgangskode, da du først indstiller den. Det verificerer adgangskoden uden at skulle gemme den i systemet, hvilket er en anden grund til, at hackere hader websteder med hashing.

Forskelle mellem stærke og svage Hash-metoder

I teorien skal ingen nogensinde være i stand til at knække en hash-streng, ikke engang det firma, der opbevarer hash. Ingen vil nogensinde kunne konvertere et gemt hashet adgangskode tilbage til det originale kodeord. Hastingsordninger har imidlertid eksisteret i mange år, og nogle er blevet svagere end andre.

For eksempel viser sagen om 177 millioner LinkedIn-konti, der skal sælges på det mørke web, at hashede adgangskoder kan blive knækket. LinkedIn havde kun brugt en simpel hashing-funktion på det tidspunkt, der hedder SHAI, og det havde ingen andre beskyttelser på plads for at forhindre, at data blev stjålet. Dette gjorde det muligt for hackerne at få adgang til adgangskoder og også prøve disse adgangskoder på andre websteder. Dette kan have været grunden til, at Mark Zuckerbergs konti for Twitter og Pinterest blev hacket på samme tid.

Et andet tilfælde af hashing, der er gået galt, er historien om Patreons dataovertrædelse. Denne gang havde webstedet meget stærke hashingfunktioner på plads kaldet bcrypt. Denne funktion giver lidt mere tid mellem overtrædelsen og ændring af adgangskoder, før hackeren kan komme til alle cache-data.

Så hvad er forskellen mellem SHAI og bcrypt? Med SHAI er hackere ikke i stand til at vende den hashede adgangskode, der er oprettet med den specifikke funktion. De kan dog gætte adgangskoder og køre gennem den samme funktion for at finde adgangskoden og hvordan den hashede.

Når de får en matchende luge, kan de bruge et hash-cracking-program til at filtrere gennem meget større databaser og gætte millioner af adgangskoder eller mere. De kan derefter bruge disse data til at sammenligne med resultater fra en gruppe hashede adgangskoder til at finde flere matchninger, hvilket fører til en dominoseffekt, hvis du bruger den samme adgangskode til hvert websted. Godt job, Mark Zuckerberg!

Hvad er kendetegnene ved en nyttig Hash-funktion

Da der er flere forskellige hashfunktioner derude, er det bedst at kigge efter dem med disse fire egenskaber.

Effektiv og hurtig

Ingen ønsker at vente med at logge ind, da deres adgangskode er hashet. Dette betyder, at hashfunktionen skal være effektiv og hurtig. Da hashfunktion kan være krævende, er det bydende at finde den hurtigste. Hvis en typisk computer har brug for flere minutter på at behandle en hashfunktion og oprette en output, ville det ikke være praktisk for virksomheden. De fleste computere i dag kan behandle en hash på en femtedel af et sekund.

Giver altid det samme resultat

Hash-funktioner skal også være deterministiske. For alle leverede input skal hashingfunktionen altid give det samme resultat. Hvis du tilslutter den samme input 5 millioner gange, den ene efter den anden, skal hashfunktionen også producere den samme nøjagtige output 5 millioner gange.

Hvis en hashfunktion skulle skabe forskellige resultater, hver gang den samme input blev tilsluttet, ville hasjen være for tilfældig og ubrugelig. Det ville være umuligt at verificere det medfølgende input, hvilket er hele pointen med hashede adgangskoder.

Modstand mod forbillede

Resultatet af nogen hash-funktion skal ikke afsløre nogen information om det medfølgende input. Dette er kendt som pre-image resistens. Mens kryptografiske hashfunktioner muligvis modtager enhver form for information, uanset om det er bogstaver, ord, tegnsætningstegn eller tal, skal hashfunktionen altid lægge det samme resultat i fast længde. Dette er tilfældet, selvom du indtaster en hel bog med tegn.

Dette er for at skjule antydninger til, hvad input er. Det må være umuligt for hackere at gætte, hvad der oprindeligt blev leveret. Derfor er det umuligt at afgøre, om strengen er lang eller kort.

Kollisionsbestandig

Den sidste karakteristik definerer, hvor usandsynligt det vil være at finde to forskellige input, der skaber det samme resultat. Dette betyder, at der er et hvilket som helst antal input, der kan laves, men output er stadig fast længde. Der er også mange output, som en hash-funktion skal producere, men antallet er endeligt i modsætning til input, som kan være uendelig.

Kort sagt er målet at gøre det at finde to input, der skaber den samme output absolut umulig, og at sandsynligheden for det kan afskediges, før en risiko endda vurderes.

Hvorfor er Hashes irreversible

Hvorfor Hashes er irreversible – Hash-funktioner er normalt envejs på grund af, at meget af den almindelige tekst kasseres under krypteringsprocessen. Matching sker ved at sætte brugerteksten gennem hash-funktionen og sammenligne den med den krypterede tekst.

Hvad er et Hash-kollisionsangreb

Hash Collision Attack – En hash-kollision refererer til to inputtekster, der har det samme output efter kryptering. Dette kaldes en kollision, og forsøg på at finde sådanne strenge kaldes hash-kollisionangreb. Dette er meget usandsynligt i betragtning af kompleksiteten af ​​de nuværende hashnøgler.

Forståelse af adgangskodesaltning

Adgang til saltning – Saltning refererer til at tilføje en ekstra streng til en adgangskode, før den krypteres. Dette gør det vanskeligt for angribere at identificere adgangskoder baseret på en forud beregnet tabel med adgangskoder kaldet et regnbue bord.

Hvad er Hash Peppering

Kryptografer synes godt om at krydre deres hash med et andet krydderi kaldet “peppering.” Dette ligner saltteknikken, bortset fra at den nye værdi placeres i slutningen af ​​adgangskoden. Der er to versioner af peppering. Den første er en kendt skjult værdi, der føjes til hver værdi, men den er kun værdifuld, hvis den ikke kendes af hacker.

Den anden er den værdi, der genereres tilfældigt af systemet, men den gemmes ikke. Dette betyder, at hver gang en bruger prøver at logge på, skal den prøve flere kombinationer af hash-algoritmen og peber-algoritmen for at finde de rigtige værdier, der matcher hash. Det betyder, at det kan tage lang tid at logge på, hvorfor det ikke bruges.

Sådan fungerer password-opbevaring med Hash-funktioner

Sådan fungerer adgangskodelagring med Hash-funktioner – Dette refererer til at gemme brugeradgangskoder på en krypteret måde for at sikre, at eksterne parter ikke er i stand til at manipulere brugerens login, hvis databasen kompromitteres.

Hvordan fungerer regnbue-angreb?

Rainbow Tables – Dette er en tabel med adgangskoder og deres output, når de kodes ved hjælp af mange kendte hash-funktioner. Sådanne tabeller bruges til at identificere adgangskoder uden at skulle bruge tid på at beregne hash-funktioner.

Hvilke værktøjer er nødvendige for Hash-funktioner

Nødvendige værktøjer til Hash-funktioner – Forskellige typer hashing-funktioner er tilgængelige som online-værktøjer, hvor almindelig tekst kan krypteres ved blot at kopiere dem til et givet tekstfelt. MD5 og SHA-256 er nogle af de mere populære hashfunktioner.

Forståelse af klasser til kryptografiske Hash-funktioner

Der er flere forskellige klasser af hashfunktioner tilgængelige. Der er imidlertid få mere almindelige måder, der bruges i dag, herunder:

  •  BLAKE2
  •  Sikker Hashing-algoritme eller SHA-2 og SHA-3
  •  RACE Integrity Primitives Evaluering MEssage DIGEST eller RIPEMD
  •  Message Digest Algorithm 5 (MD5)

Hver af disse klasser involverer hash-funktioner med flere forskellige algoritmer kombineret. Med SHA-2 blev en familie med hashfunktioner udviklet for at gøre det vanskeligere at knække. Dette inkluderer SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224 og SHA-512/256.

Mens hver af dem varierer fra den anden på den måde, de transformerer et givet input, har de også forskellige faste længder, som de producerer efter fordøjelse af input. For eksempel bruges SHA-256 mest inden for blockchain-teknologi, og den er baseret på den originale Bitcoin-kode.

Hvordan behandles Hashes

Hvordan behandles Hashes

Med et ord øjeblikkeligt. For en detaljeret forklaring er processen en smule mere kompliceret, selvom den er helt automatiseret og sker på få sekunder. Denne proces kaldes også Avalanche Effect eller Butterfly Effect.

Grundlæggende adskiller størrelsen på datablokken sig fra den ene hashingsalgoritme til den næste. For en bestemt algoritme som SHA-1 accepteres meddelelsen eller adgangskoden i blokke, der kun indeholder 512-bit. Dette betyder, at hvis adgangskoden kun har en 512-bit længde, vil hash-funktionen kun køre én gang. Hvis meddelelsen er 1024-bit, er den opdelt i separate blokke på 512-bit hver. Hash-funktionen kører også to gange.

I de fleste tilfælde bruges også en teknik kaldet polstring, hvilket betyder, at hele beskeden eller adgangskoden er opdelt i datablade med lige store størrelser. Derefter gentages hashfunktionen så mange gange som det samlede antal blokke. Disse blokke behandles efter hinanden. I denne proces føres output fra den første datablok som en input sammen med den næste datablok.

Outputet fra det andet føres derefter til den tredje blok, og så videre og så videre. Dette gør det endelige output til det samme antal som den samlede værdi af alle blokke sammen. Hvis du skifter til bid hvor som helst i adgangskoden eller meddelelsen, ændres hele hashværdien også, deraf navnet lavineeffekt.

Afslutter

Hvis din adgangskode er hashet og saltet korrekt, ville den eneste måde at komme igennem være et brute force-angreb. Med længere adgangskoder, der har mere kryptering, tager brute force-angrebet længere, hvilket betyder, at det er mere tidskrævende og dyrt for hacker.

Dette betyder, at dine brugere altid skal oprette længere adgangskoder og konfigurere med hemmelige tegn, f.eks. Et symbol eller store bogstaver. Dette er også grunden til, at tilfældigt genererede kodeordstrenge er mere sikre end et ordbogsord, da brute force-angreb bruger ordbøger til at finde ord, der skal testes.

Når du tilmelder dig enhver online virksomhed, skal du altid kontrollere, om de håndterer deres adgangskoder. Er de krypterede? Er de skyndte? Hvordan bliver dine oplysninger beskyttet? De fleste virksomheder med hashing viser dette i deres privatlivspolitik.

Anbefalede værktøjer

  • Bedste VPN
  • Bedste adgangskodeadministratorer
  • Hjemmesikkerhedsanmeldelser
Kim Martin
Kim Martin Administrator
Sorry! The Author has not filled his profile.
follow me