Base64 인코딩

졍이🥨·2023년 3월 9일
0

📝기술공부

목록 보기
19/40

Base64 인코딩

Base64 인코딩
Base64 는 64진법이라는 뜻입니다.
8비트 이진 데이터(Binary, 이미지/오디오 등)를 플랫폼 or 시스템에 영향을 받지 않는 공통 ASCII 문자열로 바꾸는 인코딩(encoding) 방식입니다.

  • Web 에서 이미지를 표현하거나, 전자 메일을 통한 이진 데이터(Binary)를 전송하는 등의 역할로 쓰이고 있습니다.
  • Base64 인코딩(encoding)을 하게 되면, 전송해야 할 데이터의 용량이 약 1/3(33%) 정도 늘어납니다. 6bit당 2bit의 Overhead가 발생하기 때문입니다.
  • 이진 데이터(Binary) 데이터를 텍스트 기반 규격으로 다룰 수 있습니다.

Base64 사용 이유

  • ASCII는 7 bits Encoding 이고, 나머지 1bit를 처리하는 방식이 시스템 별로 상이합니다.
    따라서, ASCII로 이진 데이터(Binary, 이미지/오디오 등) 전송 시에 오류가 날 수 있습니다.
  • 상이한 시스템 간의 데이터 전송에 영향받지 않게 데이터를 전송하기 위하여, ASCII 중 제어 문자와 일부 특수문자를 제외한 64개 데이터만 사용합니다.

Base64 장점

  • 이미지를 바로 표현할 수 있어 별도의 이미지를 위한 서버 구축이나 추가 작업이 필요 없습니다.

Base64 단점

  • 동기 형식으로 데이터를 불러오기 때문에 렌더링 속도가 느려집니다.
  • 디코딩을 위한 CPU 연산이 추가적으로 필요합니다.
  • 똑같은 이미지를 표현하더라도 용량이 증가하는 문제가 발생합니다.
  • 소스코드가 길어져 소스코드를 볼 때의 가독성이 떨어집니다.
  • 데이터만 봤을 때, 타입을 알 수 없습니다. 타입이 무엇인지에 대한 정보를 따로 가지고 있어야합니다.
profile
Front-End :)

0개의 댓글