[python] PyOpenSSL을 사용하여 SSL 암호화와 복호화를 하는 방법은 무엇인가요?

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

pip install pyopenssl

PyOpenSSL을 사용하여 SSL 암호화를 수행하는 예제 코드는 다음과 같습니다:

import OpenSSL

def encrypt_data(data, key_file, cert_file):
    context = OpenSSL.SSL.Context(OpenSSL.SSL.TLSv1_2_METHOD)
    context.use_privatekey_file(key_file)
    context.use_certificate_file(cert_file)

    encrypted_data = context.encrypt(data)
    return encrypted_data

data_to_encrypt = "This is some data to encrypt"
key_file = "private_key.pem"
cert_file = "certificate.pem"

encrypted_data = encrypt_data(data_to_encrypt, key_file, cert_file)
print(encrypted_data)

위의 코드에서 encrypt_data() 함수는 암호화할 데이터, 개인 키 파일, 인증서 파일을 인자로 받고, 해당 데이터를 PyOpenSSL 라이브러리를 사용하여 SSL 암호화합니다.

SSL 복호화를 수행하기 위해서는 프라이빗 키 파일과 인증서 파일을 사용해야 합니다. 다음 코드는 SSL 복호화를 수행하는 예제입니다:

import OpenSSL

def decrypt_data(encrypted_data, key_file, cert_file):
    context = OpenSSL.SSL.Context(OpenSSL.SSL.TLSv1_2_METHOD)
    context.use_privatekey_file(key_file)
    context.use_certificate_file(cert_file)

    decrypted_data = context.decrypt(encrypted_data)
    return decrypted_data

encrypted_data = "Some encrypted data"
key_file = "private_key.pem"
cert_file = "certificate.pem"

decrypted_data = decrypt_data(encrypted_data, key_file, cert_file)
print(decrypted_data)

위의 코드에서 decrypt_data() 함수는 복호화할 암호화된 데이터, 개인 키 파일, 인증서 파일을 인자로 받고, 해당 데이터를 PyOpenSSL 라이브러리를 사용하여 SSL 복호화합니다.

이제 PyOpenSSL을 사용하여 SSL 암호화와 복호화를 할 수 있는 기본적인 방법을 알았습니다. 필요에 따라서 추가적인 SSL 설정 및 기능도 사용할 수 있으니, PyOpenSSL 공식 문서를 참조하시기 바랍니다.