파이썬을 사용하여 파일과 문자열 암호화하기

파이썬은 강력한 암호화 기능을 제공하는 다목적 프로그래밍 언어입니다. 이를 활용하여 파일과 문자열을 암호화하는 방법에 대해 알아보겠습니다.

파일 암호화하기

파일을 암호화하기 위해서는 cryptography 라이브러리를 사용할 수 있습니다. 이 라이브러리는 안전한 암호화 알고리즘 및 다양한 기능을 제공하여 파일 암호화를 간편하게 할 수 있습니다.

먼저, cryptography 라이브러리를 설치해야 합니다. 다음 명령을 사용하여 설치할 수 있습니다.

pip install cryptography

암호화할 파일을 준비한 후 다음과 같은 코드를 작성하여 파일을 암호화할 수 있습니다.

from cryptography.fernet import Fernet

# 암호화 키 생성
key = Fernet.generate_key()

# 키를 파일에 저장
with open('encryption_key.key', 'wb') as key_file:
    key_file.write(key)

# 암호화할 파일을 읽어서 암호화 수행
with open('plain_file.txt', 'rb') as plain_file:
    plain_text = plain_file.read()
    cipher = Fernet(key)
    encrypted_text = cipher.encrypt(plain_text)

# 암호화된 파일을 저장
with open('encrypted_file.txt', 'wb') as encrypted_file:
    encrypted_file.write(encrypted_text)

위 코드에서는 Fernet 클래스를 사용하여 암호화 키를 생성하고 파일로 저장한 다음, 암호화할 파일을 읽어서 암호화한 후 암호화된 파일로 저장합니다.

문자열 암호화하기

문자열을 암호화하기 위해서는 cryptography 라이브러리의 Fernet 클래스를 사용할 수 있습니다. 다음은 문자열을 암호화하는 예시 코드입니다.

from cryptography.fernet import Fernet

# 암호화 키 생성
key = Fernet.generate_key()

# 키를 파일에 저장
with open('encryption_key.key', 'wb') as key_file:
    key_file.write(key)

# 암호화할 문자열
plain_text = "Hello, world!"

# 암호화 수행
cipher = Fernet(key)
encrypted_text = cipher.encrypt(plain_text.encode())

print("암호화된 문자열:", encrypted_text)

위 코드에서는 Fernet 클래스를 사용하여 암호화 키를 생성한 후, 암호화할 문자열을 encrypt() 메소드로 암호화합니다. 결과로 암호화된 문자열이 출력됩니다.

마무리

파이썬을 사용하여 파일과 문자열을 암호화하는 방법에 대해 알아보았습니다. cryptography 라이브러리를 활용하면 간편하게 파일과 문자열을 안전하게 암호화할 수 있습니다. 보안에 중요한 정보를 다룰 때는 항상 적절한 암호화 기술을 사용하는 것이 중요합니다.

참고 자료

#파이썬 #암호화