MD5 해시 발전기
브라우저에서 즉시 텍스트나 파일로부터 MD5 해시를 생성하세요. 무료이며 비공개이며 업로드가 필요하지 않습니다.
브라우저에서 즉시 텍스트나 파일로부터 MD5 해시를 생성하세요. 무료이며 비공개이며 업로드가 필요하지 않습니다.
MD5(Message Digest 5)는 1991년 Ronald Rivest가 발표한 128비트 암호화 해시 함수입니다. 이 함수는 모든 길이의 입력을 받아들이고 결정론적인 고정된 32자 16진수 출력을 생성합니다. 즉, 동일한 입력은 항상 동일한 해시를 생성합니다. 이는 단방향입니다. 즉, 해시만으로는 입력을 복구할 수 없습니다. MD5는 암호화 목적으로 SHA-2 제품군 기능으로 대체되기 전까지 1990년대와 2000년대 초반까지 지배적인 범용 해시 함수였습니다.
MD5는 암호화 용도로 인해 손상되었습니다. 실제 충돌 공격(동일한 해시를 생성하는 두 개의 입력 찾기)은 2004년부터 시연되었으며 이제 상용 하드웨어에서 선택 접두사 충돌을 몇 시간 내에 달성할 수 있습니다. 비밀번호 해싱, 디지털 서명, 인증서 지문 또는 충돌 저항이 중요한 모든 컨텍스트에는 MD5를 사용하지 마십시오. SHA-256과 bcrypt가 적절한 대체품입니다.
MD5는 충돌 방지가 보안 속성이 아닌 비암호화 체크섬에 여전히 유용합니다. 즉, 우발적인 파일 손상 감지, 제어하는 시스템에서 업로드 중복 제거, 캐시 키에 대한 짧은 식별자 생성 등이 있습니다. 이 생성기는 JavaScript MD5 구현을 사용하여 브라우저에서 완전히 실행됩니다. 입력이 장치에서 나가지 않습니다.
빠른 파일 무결성 검사는 여전히 가장 방어적인 MD5 사용 사례입니다. 다운로드 사이트에서 파일과 함께 MD5를 게시하면 독자는 다운로드가 그대로 도착했는지 확인할 수 있습니다. 검사는 악의적인 변조가 아닌 전송 오류로부터 보호합니다. 정교한 공격자는 선택한 MD5와 일치하는 파일을 생성할 수 있지만 일반적인 무결성 확인의 경우에는 괜찮습니다.
MD5는 결정론적 짧은 식별자로도 유용합니다. 캐싱 레이어, 중복 제거 시스템 및 ETag 생성은 결과가 짧고, 계산 속도가 빠르며, 비보안 목적으로도 충분하기 때문에 MD5로 콘텐츠를 해시하는 경우가 많습니다. 새로운 디자인은 SHA-256 또는 xxHash를 선호해야 하지만 식별자에 MD5를 사용하는 기존 시스템은 이 역할에서 안전하지 않습니다.
텍스트를 붙여넣거나 파일을 업로드하여 32자 16진수 해시를 가져옵니다.
MD5는 512비트(64바이트) 블록으로 입력을 처리합니다. 각 블록은 4라운드 작업을 통해 128비트 내부 상태를 업데이트합니다. 각 라운드는 서로 다른 비선형 함수, 모듈러 추가 및 비트 회전을 적용합니다. 최종 상태는 다이제스트입니다.
알고리즘에는 패딩이 필요합니다. 입력에는 1비트, 0비트, 64비트 길이 필드가 추가되므로 총 길이는 512비트의 배수가 됩니다. 이렇게 하면 모든 입력에 고유한 길이 접두어 인코딩이 부여됩니다.
출력은 리틀 엔디안 순서의 16바이트로 해석된 다음 32개의 16진수 문자로 인쇄됩니다. 일부 도구는 대문자로 인쇄하고 일부 도구는 소문자로 인쇄합니다. 값은 동일합니다.