-
암호화(Encryption) vs 해시화(Hashing): 차이점과 사용 예시IT 2025. 4. 8. 17:59728x90반응형
데이터 보안이 중요한 요즘, 암호화와 해시화는 자주 언급되는 개념입니다. 하지만 이 둘은 비슷해 보이지만 전혀 다른 목적으로 사용됩니다. 이번 글에서는 이 둘의 차이점과 어떤 상황에 각각을 써야 하는지 예제를 통해 알아보겠습니다.
🔐 암호화 (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반응형'IT' 카테고리의 다른 글
동등하다?(동등성) 동일하다?(동일성) 개념 정리 (0) 2025.04.17 Git 브랜치 전략에 대해 알아보자! (+ git flow) (0) 2025.04.16 Call by value?? Call by reference?? 알아보자 (1) 2025.04.09 UTF-8 vs EUC-KR 알아보자 (0) 2025.04.08 [IT용어] Cloud 뜻이 뭐야? 뭐가 다르지? (0) 2022.10.22