openssl md5
명령어는 OpenSSL 라이브러리를 사용하여 파일이나 문자열의 MD5 해시를 생성하는 데 사용된다. MD5는 메시지 다이제스트 알고리즘 중 하나로, 입력 데이터를 고정 길이의 해시 값으로 변환하는 역할을 한다. 이 글에서는 openssl md5
명령어의 기본 사용법과 예제를 통한 실제 활용법을 알아본다.
openssl md5
기본 구문
openssl md5 [옵션] [파일 또는 문자열]
[옵션]
: 다양한 옵션을 사용하여 명령어의 동작을 조정할 수 있다.[파일 또는 문자열]
: MD5 해시를 생성할 대상 파일의 경로 또는 문자열을 입력한다.
파일의 MD5 해시 생성
다음은 파일의 MD5 해시를 생성하는 예제이다.
$ openssl md5 output.txt
MD5(output.txt)= b297095f5b6b19463cc380fc3888eee6
문자열의 MD5 해시 생성
다음은 문자열의 MD5 해시를 생성하는 예제이다.
$ echo -n "Hello, World!" | openssl md5
MD5(stdin)= 65a8e27d8879283831b664bd8b7f0ad4
예제 소스
파일의 MD5 해시 생성 및 비교
특정 파일의 MD5 해시를 생성하고 두 파일의 해시 값을 비교하는 예제입니다.
# 파일의 MD5 해시 생성
hash1=$(openssl md5 file1.txt | awk '{print $2}')
hash2=$(openssl md5 file2.txt | awk '{print $2}')
# 해시 값 비교
if [ "$hash1" = "$hash2" ]; then
echo "두 파일의 MD5 해시 값이 일치합니다."
else
echo "두 파일의 MD5 해시 값이 일치하지 않습니다."
fi
$ sh md5_test.sh
두 파일의 MD5 해시 값이 일치하지 않습니다.
디렉토리 내 모든 파일의 MD5 해시 생성
특정 디렉토리 내에 있는 모든 파일의 MD5 해시를 생성하는 예제입니다.
$ find . -type f -exec openssl md5 {} \;
MD5(./test.c)= f2de94e7f4b5ef110e516ac9b282cf07
MD5(./a.out)= 8e586af097a20ecd945bef302adcb7af
참고 사이트
- OpenSSL Documentation: OpenSSL의 공식 문서 페이지.
- MD5 – Wikipedia: MD5 해시 함수에 대한 Wikipedia 페이지.