[보안]인코딩 vs 해싱 vs 암호화

뱌·2023년 11월 20일

보안

목록 보기
1/8

✔ 인코딩(Encoding)

  • 데이터를 원래 형식에서 다른 형식으로 변환하는 것
  • 키나 패스워드를 사용하지 않음
  • 가역적이다. 즉, 인코딩한 후 실제 텍스트로 다시 바꿀 수 있음
  • 일반적으로 데이터 보안에 사용되지 않음(목적이 데이터보안이 아님)
  • 데이터를 압축하거나 스트리밍하는 것이 목적
  • 예) Base 64, Wav, MP3

✔ 해싱(Hashing)

  • 데이터를 해시 문자열로 변환
  • 단방향이고 비가역적이어서 해시에서 원래 데이터를 구할 수 없음
  • 데이터의 무결성을 검증하는데 사용
  • 데이터와 해시를 같이 전송하면, 수신 측에서는 데이터를 받고 해싱한 후 계산한 해시와 원래 메시지의 해시가 일치하는지 확인한다. 이를 통해 메시지가 전송한 시점 그대로인지 확인할 수 있다.
    ❓ 해시데이터가 변질되면 어떡함?
  • 예) bcrypt, scrypt

✔ 암호화(Encryption)

  • 키나 패스워드를 사용해 데이터를 인코딩하고, 키나 패스워드가 있어야 복호화할 수 있다.
  • 예) RSA

◾ 인코딩 vs 암호화

▫ 공통점

  • 인코딩과 암호화 모두 원래 데이터를 구할 수 있다.

▫ 차이점

  • 암호화는 데이터 보호를 목적으로 한다.
  • 인코딩은 데이터를 효율적으로 전송하거나 저장하는 것이 목적이다.
profile
백엔드 개발자가 되고 싶어요(22.8.15~)

0개의 댓글