해시 생성기
텍스트를 붙여 넣으면 다섯 가지 다이제스트가 한 번에 나옵니다. 버튼도, 업로드도 없습니다.
다이제스트
- MD5
- SHA-1
- SHA-256
- SHA-384
- SHA-512
사용 방법
- 텍스트를 입력하거나 붙여 넣으면 다섯 가지 다이제스트가 한 번에 나타납니다. 누를 버튼은 없습니다.
- 각 행의 버튼으로 다이제스트를 복사하거나 다섯 개를 모두 .txt 파일로 내려받으세요. 복사하면 레이블 없이 순수 16진수 문자열이 나옵니다.
- 비교 대상 시스템이 다이제스트를 대문자로 출력하면 대문자 16진수를 켜세요. 전환해도 입력한 내용은 지워지지 않습니다.
- 모든 처리는 브라우저에서 이루어집니다. 아무것도 업로드, 저장되거나 주소 표시줄에 기록되지 않습니다.
예시
텍스트
hello world
다이제스트
MD5: 5eb63bbbe01eeed093cb22bb8f5acdc3 SHA-1: 2aae6c35c94fcfb415dbe95f408b9ce91ee846ed SHA-256: b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9 SHA-384: fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd SHA-512: 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f
열한 글자를 열한 UTF-8 바이트로 해시한 값입니다. “你好,世界”는 5글자지만 15바이트입니다. 결과 위의 바이트 수가 실제로 해시된 값입니다.
규칙, 제한 및 알려진 문제
- MD5와 SHA-1은 취약하므로 보안과 관련된 어떤 용도로도 쓰면 안 됩니다. 충돌을 원할 때 만들 수 있습니다. 여기서는 다른 곳에 게시된 값과 텍스트가 일치하는지 확인하는 비적대적 무결성 검사용입니다.
- 이 다이제스트를 비밀번호 저장에 쓰지 마세요. 솔트도, 키 유도도, 작업 계수도 없습니다. 비밀번호 저장에는 bcrypt, scrypt, Argon2, PBKDF2가 필요합니다.
- 텍스트만 지원합니다. 파일은 해시하지 않으므로 다운로드 체크섬이 필요하면 직접 sha256sum이나 shasum을 사용하세요.
- 입력은 항상 UTF-8 바이트로 인코딩합니다. UTF-16, Hex, Base64 입력 모드나 원시 바이트 해시 기능은 없습니다.
- 해시 전에 입력을 바꾸지 않습니다. 공백 제거, 유니코드 정규화, 대소문자 접기, 보이지 않는 문자 제거가 없습니다. 다른 시스템과 다이제스트가 맞지 않으면 텍스트가 바이트 단위로 같지 않을 가능성이 큽니다.
- 유니코드 정규화가 중요합니다. “é”를 한 코드 포인트로 쓴 것과 “e”에 결합 악센트를 붙인 것은 서로 다른 바이트 열이므로 다른 다이제스트가 나옵니다. 이는 올바른 동작이며 조용히 정규화하면 차이를 숨기게 됩니다.
- 끝 공백과 마지막 줄바꿈도 입력의 일부입니다. `echo "abc" | sha256sum`은 “abc\n”을 해시하므로 여기서 “abc”의 다이제스트와 다릅니다. 비교해야 하는 값이 그렇다면 줄바꿈을 직접 넣으세요.
- 해시는 대소문자를 구분하고 단방향입니다. “Hello”와 “hello”는 다르며 다이제스트에서 원문을 되돌릴 수 없습니다.
- 지원하지 않음: HMAC 등 키 기반 다이제스트, SHA-224, SHA-3, RIPEMD, Whirlpool, BLAKE, CRC32, 솔트 KDF, 파일 해시, “예상 다이제스트를 붙여 넣으면 검사해 주기”. 키 기반 HMAC은 JWT 도구를 사용하세요.
- 최대 10만 자이며 이를 넘으면 잘린 결과 대신 오류가 표시됩니다. 아무것도 업로드, 저장, URL 기록, 공유되지 않으며 공유 버튼은 이 페이지 주소만 공유합니다.
관련 도구
다이제스트는 보통 다음 도구와 함께 쓰입니다.