[python] sha256 알고리즘으로 암호화하기 (hashlib 모듈 활용)

Posted at 2023-03-31 13:52:42
Modified at 2023-03-31 13:56:28
0

유저의 비밀번호를 암호화할 때는 단방향 해시 함수를 많이 사용합니다. 단방향이기 때문에 암호화는 가능하지만 복호화는 불가능합니다.

단방향 해시 함수 중에 많이 사용하는 알고리즘이 sha256입니다.

1) sha은 secure hash algorithm의 약어입니다.
2) 256이 붙은 이유는 암호화된 결과가 256비트로 구성되기 때문입니다. 64자리의 16진수 문자열이 반환됩니다. 16진수 1자리는 4비트를 차지합니다. 이진수 0000부터 1111까지가 16진수로 0~F이기 때문입니다.

파이썬에서 sha256 알고리즘으로 암호화를 하고 싶을 때는 hashlib 모듈을 사용할 수 있습니다. 표준 라이브러리이기 때문에 별도의 설치가 필요하지 않습니다. test1234 라는 비밀번호를 sha256 알고리즘으로 암호화해보겠습니다.

import hashlib

pw = b"test1234"

m = hashlib.sha256()
m.update(pw)
hashed_pw = m.hexdigest()

print(hashed_pw)

test1234라는 문자열은 결과적으로 다음과 같이 암호화됩니다.

937e8d5fbb48bd4949536cd65b8d35c426b80d2f830c5c308e2cdec422ae2244
posted at 2023-03-31 13:52:42
Kyohoon Sim
Add a comment

Copyright © AskSim. All rights reserved.