[python] 파이썬을 사용하여 문자열의 MD5 합계를 얻는 방법은 무엇입니까?

에서 플리커 API 문서 , 당신은 생성하는 문자열의 MD5 합계 찾을 필요 [api_sig]값입니다.

문자열에서 MD5 합계를 생성하는 방법은 무엇입니까?

플리커의 예 :

끈: 000005fab4534d05api_key9a0554259914a86fb9e7eb014e4e5d52permswrite

MD5 합계 : a02506b31c1cd46c2e0b6380fb94eb3d



답변

Python 2.x의 경우 python의 hashlib를 사용 하십시오.

import hashlib
m = hashlib.md5()
m.update("000005fab4534d05api_key9a0554259914a86fb9e7eb014e4e5d52permswrite")
print m.hexdigest()

산출: a02506b31c1cd46c2e0b6380fb94eb3d


답변

다음을 수행 할 수 있습니다.

파이썬 2.x

import hashlib
print hashlib.md5("whatever your string is").hexdigest()

파이썬 3.x

import hashlib
print(hashlib.md5("whatever your string is".encode('utf-8')).hexdigest())

그러나이 경우 Flickr API와 상호 작용하기 위해이 유용한 Python 모듈을 사용하는 것이 좋습니다.

… 인증을 처리합니다.

hashlib의 공식 문서


답변

hashlib 에서 MD5 구현을 사용해 보셨습니까 ? 해싱 알고리즘은 일반적으로 텍스트 데이터가 아닌 이진 데이터에 대해 작동 하므로 해싱 전에 텍스트를 이진 데이터로 변환하는 데 사용되는 문자 인코딩에주의해야 할 수 있습니다.

해시 의 결과 는 이진 데이터입니다. Flickr의 예제가 16 진 인코딩을 사용하여 텍스트로 변환 된 것 같습니다. hexdigest이것을 얻으려면 hashlib 의 함수를 사용하십시오 .


답변

Try This
import hashlib
user = input("Enter text here ")
h = hashlib.md5(user.encode())
h2 = h.hexdigest()
print(h2)


답변

b문자열 리터럴 앞에 문자를 사용할 수 있습니다 .

import hashlib
print(hashlib.md5(b"Hello MD5").hexdigest())
print(hashlib.md5("Hello MD5".encode('utf-8')).hexdigest())

밖:

e5dadf6524624f79c3127e247f04b548
e5dadf6524624f79c3127e247f04b548


답변

당신은 시도 할 수 있습니다

#python3
import hashlib
rawdata = "put your data here"
sha = hashlib.sha256(str(rawdata).encode("utf-8")).hexdigest() #For Sha256 hash
print(sha)
mdpass = hashlib.md5(str(sha).encode("utf-8")).hexdigest() #For MD5 hash
print(mdpass)


답변