728x90
반응형
MD5는 "Message-Digest algorithm 5"의 약자로 1991년 만들어진 128bit 길이의 해시값을 출력하는 해시함수입니다.
자세한 내용은 아래 위키백과를 참고해주세요.
https://ko.wikipedia.org/wiki/MD5
파이썬에서 MD5 해시함수를 사용하려면 파이썬 자체에서 제공하는 hashlib 모듈의 md5나 Pycryptodome 모듈에서 제공하는 MD5를 임포트 하면 됩니다.
from hashlib import md5
str = "ABCDEFG"
result = md5(str.encode('utf-8')).hexdigest()
print(result)
# hashlib의 md5 함수에 전달하는 문자열은 바이트 문자열이어야 하므로, .encode('utf-8')을 이용하여 문자열을 utf-8 형식의 바이트 문자열로 변환시킴
# hexdigest() : 문자열을 해싱한 다음에는 digest() 또는 hexdigest() 함수를 사용하여 해싱한 문자열을 얻을 수 있다.
위의 코드는 md5를 import 시킨 경우고, 아래는 hashlib만 import 시킨 경우입니다.
import hashlib
str = "ABCDEFG"
result = hashlib.md5(str.encode('utf-8')).hexdigest()
print(result)
동일한 결과가 나온걸 확인할 수 있습니다.
또는 Cryoto.Hash에 있는 MD5를 import해도 됩니다.
from Crypto.Hash import MD5
str = 'ABCDEFG'
result = MD5.new()
result.update(str.encode('utf-8'))
print(result.hexdigest())
물론 동일한 결과가 나옵니다.
반응형
'Python > Project' 카테고리의 다른 글
SHA256을 이용한 File 무결성 확인 - 공부하는 도비 (0) | 2022.11.21 |
---|---|
hashlib의 SHA 사용 - 공부하는 도비 (0) | 2022.11.21 |
단일 치환 암호 해독 (패턴 분석 공격) - 공부하는 도비 (2) | 2022.11.14 |
파이썬 확장 유클리드 알고리즘(Extended Euclidean Algorithm) 구현 - 공부하는 도비 (0) | 2021.05.21 |
파이썬 유클리드 알고리즘(Euclidean Algorithm) 구현 - 공부하는 도비 (0) | 2021.05.21 |