Base64는 64개의 인쇄 가능한 ASCII(American Standard Code for Information Interchange) 문자를 기반으로 하는 위치 번호 시스템입니다. 시스템은 예를 들어 전자 메일에 바이너리 파일을 표시하는 데 사용됩니다. 모든 Base64 변형은 A-Z, a-z 및 0-9, 총 62자를 사용하며, 누락된 두 문자는 구현 시스템에서 다른 문자로 대체됩니다. 3개의 원본 바이트마다 4개의 문자로 인코딩됩니다.
Base64의 역사
처음에는 이메일로만 텍스트를 보낼 수 있었습니다(RFC 822). 시간이 지남에 따라 텍스트와 함께 오디오, 비디오 및 그래픽 파일, 응용 프로그램 등을 전송해야 했습니다. 바이너리 파일을 텍스트로 변환해야 할 필요가 있었습니다. Base64는 MIME(Multipurpose Internet Mail Extensions) 사양(RFC 2045-2049)에서 사용되는 기존 UUE 인코딩(Uuencode)에 추가되었습니다.
MIME은 전자 메시지의 헤더를 설명하는 표준입니다. 이를 사용하면 아카이브 및 텍스트 파일 또는 HTML 페이지와 같은 여러 첨부 파일을 한 글자로 보낼 수 있습니다. MIME 인식 이메일 프로그램은 텍스트 파일에서 아카이브를 자유롭게 추출하고 메시지를 표시하며 HTML 태그를 구문 분석합니다. 예를 들어 Outlook Express는 HTML 페이지에 포함된 스크립트를 자동으로 실행합니다.
Base64는 7, 6, 3비트 바이트 시대에 탄생했습니다. 이전 인코딩은 8비트 표준을 지원하지 않았기 때문에 이전 시스템에서 새 시스템으로 전송할 때 정보의 일부가 손실되었습니다. 종종 편지를 보낼 때 메일 서버는 추가, 여덟 번째, 비트를 드롭하거나 비디오와 이미지를 전송하지 않았습니다. 이러한 문제를 해결하기 위해 바이너리 코드를 텍스트로 변환하는 인코딩이 개발되었습니다. 가장 인기 있고 효과적인 시스템은 모든 곳에서 사용되는 단순성으로 인해 Base64입니다.
"인쇄를 위한 인코딩"이라는 알고리즘은 1987년에 처음 기술되었으며 Base64는 1992년 6월에 등장했습니다. 이 시스템의 버전은 Base16, Base32, Base36, Base58, Base85, Base91 및 Base122입니다. 이후의 표준은 IT 분야에서 활발히 사용됩니다.
흥미로운 사실
일부 시스템은 Base58을 사용하여 URL을 인코딩하는데, 이는 최종 텍스트에 사람이 모호하게 인식할 수 있는 문자가 없다는 점에서 Base64와 다릅니다. 0(영), O(라틴어 대문자 o), I(라틴어 대문자 i), l(소라틴어 L)은 제외됩니다. 또한 URL을 인코딩할 때 주소를 잘못 해석할 수 있는 +(더하기) 및 /(슬래시) 문자도 제외됩니다.
Base64는 되돌릴 수 있고 복구 가능한 인코딩을 제공합니다. 이 서비스는 8비트 코드 테이블의 문자를 네트워크 및 장치 간에 정보를 전송하는 동안 보존되는 문자로 변환합니다.