ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 암호화(Encryption) vs 해시화(Hashing): 차이점과 사용 예시
    IT 2025. 4. 8. 17:59
    728x90
    반응형

    데이터 보안이 중요한 요즘, 암호화해시화는 자주 언급되는 개념입니다. 하지만 이 둘은 비슷해 보이지만 전혀 다른 목적으로 사용됩니다. 이번 글에서는 이 둘의 차이점과 어떤 상황에 각각을 써야 하는지 예제를 통해 알아보겠습니다.


    🔐 암호화 (Encryption)란?

    암호화는 원본 데이터를 특정 알고리즘을 이용해 다른 형태로 변환하는 과정입니다. 변환된 데이터는 복호화 키가 있어야만 다시 원래대로 되돌릴 수 있습니다.

    암호화 과정 이미지

    ▲ 대칭키 방식의 암호화 예시 (출처: Wikipedia)

    • 대표 알고리즘: AES, DES, RSA
    • 사용 목적: 정보 보호 및 안전한 전송
    • 복호화 가능

    🧩 해시화 (Hashing)란?

    해시화는 임의의 길이를 가진 데이터를 고정된 길이의 값으로 변환하는 과정입니다. 이 과정은 단방향으로, 원래 데이터로 복원할 수 없습니다.

    해시 함수 이미지

    ▲ 해시 함수 개념도 (출처: Wikipedia)

    • 대표 알고리즘: SHA-256, SHA-512, MD5 (※ MD5는 보안 취약)
    • 사용 목적: 데이터 무결성 확인, 비밀번호 저장
    • 복호화 불가능

    📊 암호화 vs 해시화 비교표

    구분 암호화 (Encryption) 해시화 (Hashing)
    방향성 양방향 (복호화 가능) 단방향 (복호화 불가)
    용도 데이터 보호 및 전송 데이터 무결성, 인증
    알고리즘 예시 AES, RSA SHA-256, MD5
    출력 길이 입력 데이터에 따라 달라짐 항상 고정 길이
    보안성 키 관리에 따라 달라짐 충돌 발생 가능성 존재

    🧪 언제 어떤 방식을 써야 할까? - 사용 예시

    1. 사용자의 비밀번호 저장

    해시화 사용

    사용자의 비밀번호는 복호화가 불가능해야 하므로 해시 함수를 사용하여 데이터베이스에 저장합니다. 예: SHA-256(password)

    2. 민감한 사용자 정보 전송 (예: 주민등록번호)

    암호화 사용

    제3자가 중간에 정보를 가로채더라도 내용을 알 수 없도록 암호화된 상태로 전송하며, 수신자만 복호화할 수 있도록 합니다.

    3. 파일이 변경되었는지 확인

    해시화 사용

    파일의 해시값을 저장해두고, 이후 동일한 해시값이 생성되는지 확인하여 변조 여부를 판단합니다.


    ✅ 정리

    암호화와 해시화는 모두 보안을 위한 기술이지만, 사용하는 목적과 방식은 완전히 다릅니다.
    데이터의 비밀 유지가 중요하다면 암호화, 위조 방지나 무결성이 중요하다면 해시화를 선택하세요.

    이 포스팅이 도움이 되셨다면 댓글이나 공감 부탁드려요 😊

    728x90
    반응형

    댓글

Designed by Tistory.