BASE64

jaewon·2024년 9월 16일

날짜 : 2024-07-15 16:58

주제: #encoding


메모:

[!NOTE] 요약
Base64는 인코딩 알고리즘으로, 바이너리 데이터를 텍스트로 표현할 때 사용한다.

원리

  1. 입력 데이터 분할 : 인코딩 하려는 바이너리 데이터를 6비트씩 분할한다.
  2. 6비트 그룹을 4개의 6비트 청크로 변환 : 각 6비트 청크는 0부터 63까지 값을 가진다.
  3. Base64 문자 세트 사용 : 64개의 Base64 문자를 사용하여 각 6비트 청크를 아스키 문자로 변환한다.
    Base문자 세트는 대문자, 소문자, 숫자, 두개의 추가기호(+ /)로 구성된다.
  4. 패딩 : 입력 데이터가 3바이트의 배수가 아닌 경우, 마지막 청크를 4개의 6비트 청크로 채우기 위해 = 문자를 사용하 패딩을 추가한다.

사용 예시

  1. 암호 : 암호 데이터는 대체로 바이너리 데이터라 화면에 띄 수 없는 경우가 많은데 이때 base64로 텍스트로 바꾸어서 화면에 표시한다.
  2. 이메일 : 이메일의 전송 프로토콜 smtp는 텍스트만 보낼 수 있는데, 텍스트로 이루어지지 않은 사진, 파일의 경우 base64로 인코딩 해서 보낼 수 있다
  3. 데이터 베이스 저장 : 어떤 데이터 베이스는 텍스트만 저장 가능하도록 되어 있는 것도 있다.

출처(참고문헌)

  • 스토리로 이해하는 암호화 알고리즘

연결문서

  • [[3회 숙제 구현 과정]]
profile
블록체인, 암호학

0개의 댓글