Maxima's Lab

[Python] 데이터 대칭 암호화/복호화 (Cryptography 패키지) 사용법 본문

Python

[Python] 데이터 대칭 암호화/복호화 (Cryptography 패키지) 사용법

Minima 2023. 11. 15. 22:30
728x90
SMALL

안녕하세요, 오늘은 cryptography 패키지를 활용하여 데이터를 암호화/복호화하는 방법에 대해서 알아보겠습니다.

 

먼저, cryptography 패키지를 설치합니다.

 

pip install cryptography

 

패키지 설치 후 Key를 생성하는 방법에 대해서 알아보겠습니다.

 

from cryptography.fernet import Fernet

key = Fernet.generate_key()
print(key)

 

위의 코드에 대한 실행 결과 예시는 다음과 같습니다.

 

b'L3VgRESLKKodYcUMuBXgxSfXpSKhcchdlyRLbXNwnRk='

 

 

이어서, Key를 생성 후 Key를 저장하는 방법에 대해서 알아보겠습니다.

 

from cryptography.fernet import Fernet

key = Fernet.generate_key()

with open("encryption_key.key", "wb") as key_file:
    key_file.write(key)

 

대칭 키를 사용해서 암호화하는 방법에 대해서 알아보겠습니다.

 

from cryptography.fernet import Fernet

# 키 생성
key = Fernet.generate_key()
cipher_suite = Fernet(key)

# 암호화
text = "Test Message".encode()
Encrypted_text = cipher_suite.encrypt(text)

# 키 저장 
with open("encryption_key.key", "wb") as key_file:
    key_file.write(key)
    
# 키 불러오기
with open("encryption_key.key", "rb") as key_file:
    key = key_file.read()

cipher_suite = Fernet(key)

# 복호화
decrypted_text = cipher_suite.decrypt(Encrypted_text)
print(decrypted_text.decode())

 

위의 코드의 실행 결과는 다음과 같습니다.

 

Test Message

 

이상으로, cryptography 패키지를 활용해서 데이터를 암호화하고 복호화 하는 방법에 대해서 알아보았습니다.

감사드립니다.

728x90
LIST
Comments