SHA-1 해시 코드 계산기
게시됨: 2025년 2월 16일 오후 11시 22분 53초 UTC
텍스트 입력이나 파일 업로드를 기반으로 해시 코드를 계산하기 위해 보안 해시 알고리즘 1(SHA-1) 해시 함수를 사용하는 해시 코드 계산기입니다.SHA-1 Hash Code Calculator
SHA-1(Secure Hash Algorithm 1)은 NSA가 설계하고 NIST가 1995년에 발표한 암호화 해시 함수입니다. 160비트(20바이트) 해시 값을 생성하며, 일반적으로 40자 16진수 문자열로 표현됩니다. SHA-1은 데이터 무결성, 디지털 서명 및 인증서를 보호하는 데 널리 사용되었지만 충돌 공격에 대한 취약성으로 인해 현재는 안전하지 않은 것으로 간주됩니다. 이전 시스템과 호환되어야 하는 해시 코드를 계산해야 하는 경우를 대비하여 여기에 포함되었지만, 새로운 시스템을 설계할 때는 사용해서는 안 됩니다.
전체 공개: 이 페이지에서 사용된 해시 함수의 구체적인 구현은 제가 직접 작성하지 않았습니다. PHP 프로그래밍 언어에 포함된 표준 함수입니다. 편의를 위해 웹 인터페이스만 공개하여 여기에서 사용할 수 있도록 만들었습니다.
SHA-1 해시 알고리즘에 대하여
저는 수학자가 아니므로 수학자가 아닌 다른 사람들도 이해할 수 있는 방식으로 이 해시 함수를 설명하려고 노력하겠습니다. 정확한 과학적 수학적 버전의 설명이 필요하다면 다른 많은 웹사이트에서 찾을 수 있습니다 ;-)
SHA-1을 마치 모든 메시지를 처리하는 특수한 종이 파쇄기처럼 생각해보세요. 한 단어, 한 문장, 또는 책 전체이든, 매우 특정한 방식으로 파쇄합니다. 하지만 그냥 파쇄하는 대신, 항상 정확히 40자 길이의 16진수 문자로 된 고유한 "파쇄 코드"를 마법처럼 뱉어냅니다.
- 예를 들어 "안녕하세요"를 입력합니다.
- f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0와 같은 40개의 16진수가 나옵니다.
짧은 길이든 긴 길이든 무엇을 넣어도 항상 같은 길이가 나옵니다.
"마법의 분쇄기"는 4단계로 작동합니다.
1단계: 종이(패딩) 준비
- 파쇄하기 전에 종이를 준비해야 합니다. 메시지 끝에 빈 공간을 추가하여 파쇄기 트레이에 완벽하게 맞도록 상상해 보세요.
- 쿠키를 구울 때 반죽이 틀에 고르게 채워지도록 하는 것과 같습니다.
2단계: 동일한 크기로 자릅니다(분할)
- 분쇄기는 큰 덩어리를 좋아하지 않습니다. 그래서 준비한 메시지를 더 작고 동일한 크기의 조각으로 자릅니다. 마치 큰 케이크를 완벽한 조각으로 자르는 것과 같습니다.
3단계: 비밀 레시피(혼합 및 매싱)
- 이제 멋진 부분이 나옵니다! 분쇄기 안에서 메시지의 각 조각은 일련의 믹서와 롤러를 거칩니다.
- 믹싱: 비밀 재료(내장된 규칙과 숫자)를 이용해 메시지를 섞습니다.
- 매싱(Mashing): 특정 방식으로 부품을 으깨고 뒤집고 돌립니다.
- 뒤틀림: 일부 부분이 뒤틀리거나 뒤집혀서 마치 종이를 오리가미로 접는 것처럼 됩니다.
각 단계마다 메시지는 더욱 혼란스러워지지만, 기계가 항상 따르는 매우 구체적인 방법이 있습니다.
4단계: 최종 코드(해시)
- 모든 혼합과 숙성을 거치면 깔끔하고 혼합된 코드가 나오는데, 이는 마치 메시지의 고유한 지문과 같습니다.
- 당신이 바뀌더라도 원래 메시지에 글자 하나만 추가해도 출력은 완전히 달라집니다. 그것이 특별하게 만드는 것입니다.
SHA-1을 더 이상 사용하면 안 되는 이유는 몇몇 매우 똑똑한 사람들이 슈레더를 속여 두 개의 서로 다른 메시지에 대해 같은 코드를 만드는 방법(이를 충돌 이라고 함)을 알아냈기 때문입니다.
SHA-1 대신, 우리는 이제 더 강력하고 똑똑한 "분쇄기"를 가지고 있습니다. 글을 쓸 당시, 대부분의 용도에 대한 기본 해시 알고리즘은 SHA-256입니다. 그리고 네, 그것에 대한 계산기도 있습니다: SHA-256 해시 코드 계산기