Base64 인코딩이란?
인코딩이란?
- 어떠한 정보, 데이터의 형태나 다른 형태나 형식으로 변환하는 것
왜 데이터를 다른 형식으로 변환할까?
- 데이터의 표준화
- 처리 속도 향상
- 저장 공간 절약
- 보안
Base64
- Base64는 64진법의 의미를 가지고 있다.
- ASCII 문자들로 표시할 수 있는 가장 큰 진법
- Binary data (이진 데이터)를 ASCII 문자로 이루어진 Text로 변환시키는 인코딩
Base64 인코딩
- Binary data를 ASCII 문자열로 표현하는 인코딩 방식의 하나
- HTML, Email과 같이 문자로 이루어진 미디어에 Binary 데이터가 사용될 때
포함된 Binary 데이터가 시스템 간 동일하도록 보장하기 위해 사용
↔ 디코딩(Base64 인코딩의 반대 개념)
사용 이유
- 통신 과정에서 Binary data의 손실을 막기 위해 사용된다.
- ASCII는 7 bits Encoding인데 나머지 1bit를 처리하는 방식이 시스템 별로 상이
- 일부 제어 문자의 경우 시스템 별로 다른 코드 값을 가진다.
⇒ Base64는 ASCII 중 제어 문자와 일부 특수문자를 제외한 64개의 안전한 출력 문자만 사용!
Base64 문자
영문 대문자(A~Z) 26개 + 영문 소문자(a~z) 26개 + 숫자(0~9) 10개 = 62개 값 + 2개(+, /)까지 합친
64개 문자를 갖는다.