보안/암호화 알고리즘

비밀번호가 털린다면? 해시와 암호화의 차이 - 코드카인 티스토리

CodeCaine Explorer 2025. 1. 20. 13:21
SMALL

안녕하세요😊 코드카인 여러분!

오늘은 암호화복호화의 차이를 알기 쉽게 풀어보려고 해요. 어려운 기술이 아닌, 우리의 비밀을 지켜주는 든든한 자물쇠와 열쇠 이야기를 시작해볼게요. 😊


🛡️ 암호화란? 비밀을 잠그는 자물쇠!

암호화(Encryption)는 데이터를 알 수 없는 형태로 변환하는 과정이에요. 예를 들어, 친구에게 중요한 메시지를 보낼 때, 누군가가 그 내용을 볼 수 없도록 "암호를 걸어 잠그는 과정"이라고 생각하면 쉬워요.

🔍 일상 속 비유

  • 여러분의 집에 소중한 물건을 두고 외출할 때, 도어락을 잠그는 것과 같아요.
  • 메시지를 'ABC'라고 보냈더라도, 암호화 과정을 거치면 'X$@'처럼 전혀 알아볼 수 없는 모습이 되죠.

✅ 사용 예

  • 웹사이트 보안: 온라인 쇼핑할 때 입력한 카드 정보.
  • 메신저 앱: 비밀 대화를 암호화해서 도청을 방지.

🔓 복호화란? 자물쇠를 여는 열쇠!

복호화(Decryption)는 암호화된 DATA를 다시 원래의 형태로 변환하는 과정이에요. 암호화된 메시지가 전달된 후, 정해진 열쇠를 가진 사람만 그 메시지를 읽을 수 있게 하는 거죠.

🔍 일상 속 비유

  • 집에 돌아와서 도어락 비밀번호를 눌러 문을 여는 행위와 같아요.
  • 암호화된 'X$@'를 다시 'ABC'로 복원하는 것이 복호화입니다.

✅ 사용 예

  • 금융 거래: 은행에서 송금 내역 확인.
  • 전자 메일: 보낸 사람만 읽을 수 있도록 암호화한 내용을 열기.

🧩 암호화와 복호화의 차이점 한눈에 보기!

항목 암호화 (Encryption) 복호화 (Decryption)
목적 DATA를 보호하기 위해 변환 보호된 DATA를 읽기 위해 복원
작업 대상 평문(읽을 수 있는 DATA) 암호문(읽을 수 없는 DATA)
작업 결과 암호문(알 수 없는 형태) 평문(원래 형태)
사용 도구 암호화 알고리즘, 키(Key) 복호화 알고리즘, 키(Key)

🛠️ 실전 코드 예제: 암호화와 복호화

아래는 Python을 사용한 간단한 예제예요.

예제 코드

from cryptography.fernet import Fernet

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

# 암호화
plain_text = "CodeCaine rocks!"
cipher_text = cipher_suite.encrypt(plain_text.encode())
print("암호화된 데이터:", cipher_text)

# 복호화
decoded_text = cipher_suite.decrypt(cipher_text).decode()
print("복호화된 데이터:", decoded_text)

결과

암호화된 데이터: b'gAAAAABk...'
복호화된 데이터: CodeCaine rocks!

😊 마무리하며..

암호화와 복호화는 디지털 시대의 안전 벨트와 같아요. 우리의 중요한 데이터를 안전하게 지키고 싶다면, 꼭 알아야 할 개념이죠! 어려워 보이지만, 오늘 이야기처럼 일상 속에서 쉽게 이해할 수 있어요. 😊

코드카인 여러분! 앞으로도 함께 배워가며 더 안전한 세상을 만들어봐요! 화이팅! 🚀

728x90
반응형
SMALL