1. MD5 암호화 개요
메시지 다이제스트 알고리즘 MD5(중국어로 Message Digest Algorithm 5판으로 알려짐)는 컴퓨터 보안 분야에서 메시지 무결성 보호를 위해 널리 사용되는 해시 함수입니다. 이 알고리즘의 파일 번호는 RFC 1321(R.Rivest, MIT 컴퓨터 과학 연구소 및 RSA 데이터 보안 주식회사, 1992년 4월)입니다.
MD5는 완전하고 일관된 정보 전송을 보장하기 위해 사용되는 Message-Digest Algorithm 5의 약자입니다. 이 알고리즘은 컴퓨터에서 널리 사용되는 해시 알고리즘 중 하나이며(요약 알고리즘 또는 해시 알고리즘으로도 알려짐), 주류 프로그래밍 언어들은 일반적으로 MD5 구현을 가지고 있습니다. 데이터(예: 한자)를 다른 고정 길이 값으로 계산하는 것이 해시 알고리즘의 기본 원리이며, MD5는 MD2, MD3, MD4의 전신입니다. MD5 알고리즘은 다음과 같은 특징을 가집니다: 1. 압축성: 계산된 MD5 값의 길이는 모든 데이터 길이에 대해 고정되어 있습니다. 2. 계산 용이성: 원본 데이터에서 MD5 값을 쉽게 계산할 수 있습니다. 3. 수정 저항: 원본 데이터에 1바이트만 수정하더라도 MD5 값은 매우 달라집니다. 4. 강한 충돌 저항: 원본 데이터와 MD5 값은 알려져 있으며, 동일한 MD5 값을 가진 데이터를 찾기 매우 어렵습니다(즉, 가짜 데이터). MD5의 기능은 대량의 정보를 기밀 형식으로 "압축"할 수 있도록 하는 것입니다(즉, 임의의 길이의 바이트 문자열을 특정 길이의 16진수 문자열로 변환한 후 디지털 서명 소프트웨어로 개인 키를 서명하는 방식). MD5 외에도 sha-1, RIPEMD, Haval 등 더 유명한 제품들이 있습니다.
MD5는 비대칭 암호화 알고리즘입니다(추신: 대칭 암호화란 암호화에 사용되는 비밀번호와 복호화에 사용되는 비밀번호가 동일하며, 비대칭은 암호화와 복호화에 사용되는 키가 다르다는 뜻입니다)
2. 자바는 MD5 암호화 및 복호화를 구현합니다
1. Maven이 Apache의 jar를 소개합니다 (Maven 프로젝트가 아니며, 인터넷에서 다음 jar로 가서 수동으로 가져오세요)
2. MD5 코드 사용
|