DB
PHP
LLM

S&P 500

SPI@SPX 미국 2026.01.08 16:35 현지시간 기준 |10분 지연제공

6,921.46

전일대비 0.53 (+ 0.01% )

나스닥 종합

NAS@IXIC 미국 2026.01.08 16:15 현지시간 기준 |15분 지연제공

23,480.02

전일대비 104.26 ( -0.44% )

다우 산업

DJI@DJI 미국 2026.01.08 16:20 현지시간 기준 |15분 지연제공

49,266.11

전일대비 270.03 (+ 0.55% )

base64 인코딩 :: 인코딩

작성자아이디 : skok1025, 2024-02-05 21:55:11
카테고리 : 컴퓨터공학 인코딩 게시글 수정

  • Base64 인코딩은 바이너리 (binary) 데이터를 ASCII 영역의 문자열로 변환하는 인코딩 방식입니다.

  • 이 방식은 바이너리 데이터를 텍스트 형식으로 저장하거나 전송할 필요가 있을 때 주로 사용됩니다.

  • Base64는 64개의 ASCII 문자를 사용하는데, 이는 A-Z, a-z, 0-9, +, / 로 구성되며, 결과 데이터의 끝에는 필요에 따라 '=' 문자를 사용하여 패딩을 할 수 있습니다.

Base64 인코딩 과정

  1. 입력 바이너리 데이터를 8비트 단위로 나눕니다.

    • "Hello" 의 ASCII 코드는 72,101, 108, 108, 111 입니다.

    • 이를 이진수로 표현하면 01001000, 01100101, 01101100, 01101100, 01101111

  2. 이 데이터를 6비트 단위로 재그룹핑합니다. 이때 필요하다면 끝에 비트를 추가하여 길이를 맞춥니다.

    • 3바이트(24비트)의 입력 데이터를 4개의 6비트 단위로 나눕니다.

      • 8비트를 6비트로 변환을 최적화 할 수 있도록 최소공배수인 24비트씩 처리

    • 6비트 단위로 재그룹핑하면 010010, 000110, 010101, 101100, 011011, 000110, 1111입니다.

  3. 각 6비트 값을 Base64 테이블에 정의된 문자로 매핑합니다.

    • 여기에 맞춰 Base64 문자열로 변환하면 "SGVsbG8"입니다.

  4. 마지막으로, 인코딩된 데이터의 길이가 4의 배수가 되도록 '=' 문자로 패딩합니다.

    • 4의 배수가 되도록 =로 패딩을 해줍니다. "SGVsbG8="