해시 함수 쉽게 이해하기: MD5, SHA-1, SHA-256의 차이와 올바른 사용법
소프트웨어 다운로드 페이지의 SHA-256 체크섬, Git 커밋 ID, 블록체인 주소까지 모두 해시 함수의 결과입니다. 해시가 암호화와 어떻게 다른지, 어떤 알고리즘을 언제 골라야 하는지 정리합니다.
해시 함수는 길이가 제각각인 입력을 받아 항상 같은 길이의 짧은 값(해시값, 다이제스트)을 만들어 내는 함수입니다. 한 글자짜리 문장이든 수 GB짜리 동영상이든 SHA-256에 넣으면 결과는 언제나 256비트, 16진수로 64글자입니다.
SHA-256("hello") = 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
SHA-256("hello!") = ce06092fb948d9ffac7d1a376e404b26b7575bcc11ee05a4615fef4fec3a308b
MD5("hello") = 5d41402abc4b2a76b9719d911017c592
해시 함수의 세 가지 성질, MD5와 SHA-1이 더 이상 보안용으로 쓰이지 않는 이유, 파일 무결성 확인과 비밀번호 저장에서 해시를 쓰는 올바른 방법을 설명합니다.가이드 읽기 →