Ano ang SHA-1?
SHA-1 (Secure Hash Algorithm 1) nagbibigay ng 160-bit na digest (40-hex na karakter). Dinisenyo ng NSA at inilathala ng NIST noong 1995 (FIPS 180-1), naging popular ito para sa digital signatures, file checksums at version-control systems.
Paalala sa seguridad: Sira na ang SHA-1 — gamitin ang SHA-256, SHA-3 o BLAKE3 para sa mga bagong sistema.
Paano gumagana ang SHA-1
- I-pad ang mensahe → haba ≡ 448 (mod 512) bits
- Idagdag ang 64-bit na haba ng orihinal na mensahe
- I-initialize ang limang 32-bit na salita (A–E)
- Iproseso ang 512-bit na mga bloke sa pamamagitan ng 80 operasyon (apat na rounds)
- I-output ang panghuling 160-bit na digest
Kalagayan ng seguridad
- 2005 — unang teoretikal na collision attacks
- 2017 — Ipinakita ng Google & CWI Amsterdam ang totoong collision (“SHAttered” PDFs)
- Hindi na pinagkakatiwalaan ng mga browser ang SHA-1 TLS certificates
- Inirekomenda ng NIST na huwag gamitin ang SHA-1 para sa digital signatures noong 2011
Mga halimbawa ng hashes
Input | SHA-1 Hash |
---|---|
Hello World | 0a4d55a8d778e5022fab701977c5d840bbc486d0 |
password | 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 |
test123 | 7288edd0fc3ffcbe93a0cf06e3568e28521687bc |
(walang laman) | da39a3ee5e6b4b0d3255bfef95601890afd80709 |
SHA-1 kumpara sa ibang hash functions
Algorithm | Output | Security | Speed |
---|---|---|---|
MD5 | 128 bits | ❌ Sira na | ⚡ Napakabilis |
SHA-1 | 160 bits | ❌ Nakompromiso | ⚡ Mabilis |
SHA-256 | 256 bits | ✅ Ligtas | 🚀 Katamtaman |
SHA-3 | Variable | ✅ Napakaligtas | 🚀 Katamtaman |
BLAKE3 | 256 bits | ✅ Ligtas | ⚡ Napakabilis |
Mga Madalas Itanong
Ligtas ba ang SHA-1 para sa mga password?
Hindi. Gamitin ang bcrypt, Argon2 o PBKDF2 bilang kapalit.
Ano ang SHA-1 collision?
Nangyayari ang collision kapag dalawang magkaibang input ay nag-generate ng parehong hash. Pinatunayan ng 2017 “SHAttered” attack ang totoong collision sa mundo.
Bakit ginagamit pa rin ng Git ang SHA-1?
Nililimitahan ng disenyo ng Git ang exploitability, ngunit ang proyekto ay lumilipat sa SHA-256.