inblog logo
|
stupefyee
    기술정리

    Base64

    Stupefyee's avatar
    Stupefyee
    Dec 06, 2024
    Base64
    Contents
    1. Base64란?2. Base64 인코딩 과정3. Base64 디코딩 과정4. 예제5. 활용 사례

    1. Base64란?

    • 정의: 바이너리 데이터를 텍스트로 변환하는 인코딩 방식.
    • 사용 목적: 텍스트 기반 시스템(예: 이메일, URL)에서 바이너리 데이터를 전송하기 위해 사용.

    2. Base64 인코딩 과정

    1. 바이너리 데이터 준비
        • 입력 데이터(텍스트/파일)를 바이너리 형식으로 변환.
    1. 6비트 단위로 분할
        • 바이너리 데이터를 6비트씩 나눔.
    1. Base64 문자 매핑
        • 6비트 값에 해당하는 Base64 문자로 변환.
          • 매핑 테이블: A-Z, a-z, 0-9, +, /
    1. 패딩 추가
        • 3바이트로 나눠지지 않을 경우, 끝에 =로 패딩 추가.

    3. Base64 디코딩 과정

    1. Base64 문자 입력
        • 인코딩된 Base64 문자열 준비.
    1. Base64 문자 매핑 해제
        • 각 문자를 6비트 바이너리 값으로 변환.
    1. 8비트로 병합
        • 6비트 조각을 다시 8비트 단위로 합침.
    1. 바이너리 데이터를 원본으로 변환
        • 병합된 데이터를 원래 텍스트나 파일로 복원.

    4. 예제

    인코딩 예제
    1. 입력: Hello
    1. 바이너리 변환:
      1. H -> 01001000 e -> 01100101 l -> 01101100 l -> 01101100 o -> 01101111
    1. 6비트 분할:
      1. 010010 000110 010101 101100 011011 000110 1111
    1. Base64 매핑:
      1. QUxsbw==
    디코딩 예제
    1. 입력: QUxsbw==
    1. Base64 매핑 해제:
      1. Q -> 010000 U -> 010100 ...
    1. 6비트 병합:
      1. 01001000 01100101 01101100 ...
    1. 원본 복원: Hello

    5. 활용 사례

    • 이메일 첨부 파일 전송
    • 웹에서 바이너리 데이터(이미지, 파일) 인코딩
    • JSON, JWT에서 데이터 안전 전송
    Share article
    Contents
    1. Base64란?2. Base64 인코딩 과정3. Base64 디코딩 과정4. 예제5. 활용 사례

    stupefyee

    RSS·Powered by Inblog