Base 64 간단 정리하기

Base 64 란 8비트 2진 데이터를 (플랫폼의) 문자 코드에 영향을 받지 않는 공통 ASCII 영역의 문자들로만 이루어진 일련의 문자열로 바꾸는 인코딩 방식을 가리키는 개념이다.

결국 데이터를 문자열로 바꾸는 방식

Base64는 데이터를 64진법으로 나타낸다고 한다. 이를 0부터 63까지 ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/ 으로 나타낸다.

데이터를 Base64로 바꾸는 과정은

  1. 24비트 버퍼에 위쪽(MSB)부터 1바이트(8비트)씩 3바이트를 채운다.
  2. 3바이트 보다 미만이라면, 버퍼의 남은 부분은 0으로 채워 넣는다.
  3. 버퍼의 위쪽부터 6비트씩 잘라 그 값을 읽어, Base64의 값으로 변경한다.
  4. 버퍼의 남은 부분을 0으로 채운 값을 1바이트당 = 코드로 변경한다.

Javascript 에서의 Base64 변환

기본 적으로 글로벌 메소드에 btoa 와 atob가 구현되어 있다.