SHA-1 (Secure Hash Algorithm 1) je kriptografska zgoščevalna funkcija, ki sprejme vhod (kot je datoteka, geslo ali sporočilo) in ustvari 160-bitno (20-bajtno) zgoščevalno vrednost, običajno prikazano kot 40-mestkovni šestnajstiški niz.
Pomembno: Tako kot MD5 tudi SHA-1 ni pravo šifriranje – gre za enosmerno zgoščevalno funkcijo, kar pomeni, da zgoščene vrednosti ni mogoče preprosto vrniti na prvotni vhod.
Celovitost podatkov: Preverite, ali datoteke ali sporočila niso bila spremenjena, tako da primerjate SHA-1 zgoščene vrednosti pred in po prenosu.
Digitalni podpisi: Podpira starejše sisteme digitalnega podpisovanja in potrdila, ki so uporabljala SHA-1.
Prstni odtis: Ustvarite edinstven prstni odtis za podatke, kar zagotavlja hitro primerjavo brez potrebe po celotnem naboru podatkov.
Hitrost: Zgoščite velike količine podatkov relativno hitro (čeprav se to zdaj šteje za nevarno za kriptografsko uporabo).
Uporabite vgrajene kriptografske knjižnice v večini programskih jezikov (npr. hashlib.sha1() v Pythonu, MessageDigest s SHA-1 v Javi ali System.Security.Cryptography.SHA1 v C#).
Vnesite podatke (besedilo, vsebino datoteke) v funkcijo SHA-1.
Pridobite nastalo zgoščevalno vrednost in jo uporabite za primerjave, kontrolne vsote ali indeksiranje.
Pri delu s zastarelimi sistemi ali starejšimi API-ji, ki še vedno zahtevajo SHA-1.
Pri ustvarjanju kontrolnih vsot za varnostno nekritične podatke, kjer so sprejemljivi manjši trki.
Pri preverjanju starih digitalnih podpisov, ki so bili prvotno ustvarjeni s SHA-1.
Ko je **združljivost** pomembnejša od stroge varnosti (vendar le, če je to nujno potrebno).