[python] 튜플을 이용한 데이터 암호화

튜플은 Python에서 중요한 데이터 구조 중 하나입니다. 이번 글에서는 튜플을 활용하여 데이터를 암호화하는 방법에 대해 알아보겠습니다.

튜플(Tuple)란?

튜플은 변경 불가능한(immutable) 시퀀스형 데이터 구조입니다. 즉, 한 번 생성된 튜플은 그 값을 변경할 수 없습니다. 튜플은 괄호 ()를 사용하여 생성하며, 쉼표로 구분된 값들의 집합입니다.

예시:

my_tuple = (1, 2, 3, 'a', 'b', 'c')
print(my_tuple)

데이터 암호화 과정

튜플을 이용한 데이터 암호화는 간단한 대체 암호화 방법입니다. 기존의 데이터를 정해진 룰에 따라 튜플로 변환함으로써 암호화를 수행합니다.

아래는 간단한 암호화 예제입니다:

# 데이터 암호화 함수
def encrypt_data(data):
    encrypted_data = []
    for char in data:
        encrypted_data.append(ord(char))  # 각 문자를 ASCII 코드로 변환하여 튜플에 추가
    return tuple(encrypted_data)

# 데이터 입력
input_data = "Hello"
print(f"원본 데이터: {input_data}")

# 데이터 암호화
encrypted_tuple = encrypt_data(input_data)
print(f"암호화된 튜플: {encrypted_tuple}")

이제 encrypt_data 함수를 통해 입력된 데이터를 튜플로 암호화했습니다.

데이터 복호화

암호화된 데이터는 다시 원래의 형태로 변환할 수 있어야 합니다. 튜플을 해제하여 원래의 데이터로 복원하는 과정을 데이터 복호화라고 합니다. 암호화된 튜플을 복호화하여 다시 원래의 데이터로 변환하는 방법은 다음과 같습니다:

# 데이터 복호화 함수
def decrypt_data(encrypted_tuple):
    decrypted_data = ''
    for num in encrypted_tuple:
        decrypted_data += chr(num)  # 각 ASCII 코드를 문자로 변환하여 문자열에 추가
    return decrypted_data

# 데이터 복호화
decrypted_data = decrypt_data(encrypted_tuple)
print(f"복호화된 데이터: {decrypted_data}")

마치며

튜플을 사용하여 데이터를 암호화하고 복호화하는 방법을 알아보았습니다. 이 방법은 매우 기초적이며 간단한 형태의 데이터에 대해 사용할 수 있습니다. 더욱 강력한 데이터 보안이 필요한 경우에는 암호화 알고리즘을 사용하는 것이 좋습니다.

이상으로 데이터 암호화에 튜플을 사용하는 방법에 대해 알아보았습니다.

참고 문헌