OpenSSL MD5 사용법

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

참고 사이트

답글 남기기