인코딩(Encoding), 디코딩(Decoding), 해싱(Hashing)

LeeYulhee·2024년 5월 13일

👉 인코딩(Encoding)


  • 데이터를 특정 형식이나 형태로 변환하는 과정
    • 인코딩 방식의 예시로는 ASCII, ISO-8859, UTF 등이 있음(UTF-8이 대표적)
  • 데이터를 전송, 저장 또는 압축하기 쉽게 만들기 위해 필요
  • 데이터를 다른 형태로 바꾸지만, 원래의 데이터로 다시 복원할 수 있는 가능성을 남겨 둠
  • 예시
    • 텍스트 데이터를 컴퓨터가 이해할 수 있는 이진 형식으로 변환
    • 비디오와 이미지를 디지털 형식으로 압축하는 것



👉 디코딩(Decoding)


  • 인코드된 데이터를 원래의 형식이나 형태로 되돌리는 과정
  • 인코딩된 데이터를 받아 원래 데이터로 변환하여 사용 가능하게 함
  • 예시
    • 이진 정보를 다시 사람이 이해할 수 있는 텍스트로 변환
    • 압축된 비디오 파일을 재생 가능한 형태로 복원하는 것



👉 해싱(Hashing)


  • 어떤 입력 값에 대해 고정된 크기의 고유한 값(해시)을 생성하는 과정
  • 해시 함수는 보안, 데이터 검색 최적화, 무결성 확인 등 다양한 목적으로 사용
    • 해시 함수의 예시로는 MD5, SHA 시리즈, BLAKE2 등이 있음(SHA-3가 대표적)
  • 해싱의 주요 특징은 같은 입력 값에 대해서는 항상 같은 해시 값을 출력하지만 해시 값으로부터 원본 데이터를 복원하는 것은 불가능
  • 예시
    • 비밀번호 저장 시 해시를 사용하여 원본 비밀번호 대신 해시 값을 저장해 보한 강화
profile
끝없이 성장하고자 하는 백엔드 개발자입니다.

0개의 댓글