SHA i Unix refererer til
Secure Hash -algoritmen (SHA) , en familie av kryptografiske hasjfunksjoner.
Hva er en hasjfunksjon?
En hasjfunksjon tar en input (alle data) og produserer en output i fast størrelse kalt en hasj. Denne utgangen er vanligvis en streng med tegn, ofte representert i heksadesimal.
Nøkkelegenskaper for hasjfunksjoner:
* enveis: Det er enkelt å beregne hasj fra inngangen, men ekstremt vanskelig å snu prosessen (dvs. få inngangen fra hasj).
* Deterministisk: Den samme inngangen produserer alltid samme hasj.
* Kollisjonsmotstand: Det er veldig usannsynlig å finne to forskjellige innganger som produserer samme hasj.
Sha i Unix:
I UNIX brukes SHA -funksjoner først og fremst for:
* Verifisering av dataintegritet: Du kan bruke SHA til å generere en hasj av en fil. Hvis filen er endret, vil hashen endre seg, slik at du kan oppdage noe tukling.
* passordhashing: SHA brukes til å lagre passord på en sikker måte. I stedet for å lagre passordet direkte, lagres hasj på passordet. Dette forhindrer at angripere enkelt får tilgang til passordet hvis de får databasen.
* Digitale signaturer: SHA brukes til å lage digitale signaturer, som kan brukes til å bekrefte ektheten til et dokument eller en melding.
Vanlige SHA -varianter:
* sha-1: En eldre versjon av SHA som ikke lenger anses som sikker.
* SHA-256: En sterkere versjon av SHA som er mye brukt i dag.
* SHA-512: En enda sterkere versjon av SHA som produserer en større hasjutgang.
Hvordan bruke SHA i Unix:
Du kan bruke `OpenSSL` -kommandoen for å generere SHA -hashes i UNIX:
`` Bash
generer SHA-256-hash av en fil
OPENSSL DGST -SHA256 MYFILE.TXT
generer SHA-512 hash av en streng
OpenSSL DGST -SHA512 -BINARY -OUTFORM HEX <<<"Hello World"
`` `
Merk: Kommandoen `OpenSSL` er tilgjengelig på de fleste Unix-lignende systemer. Hvis du ikke har det, kan det hende du må installere den ved hjelp av pakkebehandleren.
Oppsummert er SHA et kraftig verktøy for å sikre dataintegritet, sikre passord og verifisere autentisitet i UNIX -systemer.