40 코인
이게뭐에요??
다들 Base64 라고 뭐라고 하시는데 도데체 Base64가뭐에요?
#misc
작성자 정보
답변
1
0xH0P3
웹해킹 전문가
Base64란 무엇인가?
소개
Base64는 이진 데이터를 텍스트 형식의 ASCII 문자열로 인코딩하는 방식입니다. 주로 이진 데이터를 텍스트로 전송하거나 저장해야 할 때 사용됩니다. 예를 들어, 이메일 첨부 파일이나 HTML/CSS 파일에 이미지를 포함할 때 Base64 인코딩이 사용됩니다.
작동 원리
- 입력 데이터: 이진 데이터 (예: 파일, 이미지 등)
- 분할: 데이터를 6비트 단위로 나눕니다.
- 매핑: 각 6비트 값에 해당하는 ASCII 문자를 매핑합니다.
- 출력: ASCII 문자열 형식으로 인코딩된 데이터를 생성합니다.
주요 특징
- 텍스트로 표현 가능: 이진 데이터를 사람이 읽을 수 있는 텍스트로 변환.
- 64개의 문자 사용: 대문자, 소문자, 숫자,
+
,/
를 포함한 64개 문자로 구성. - 패딩: 데이터 길이가 3의 배수가 아닐 경우
=
문자를 추가하여 패딩 처리.
장점과 단점
장점
- 이진 데이터를 안전하게 텍스트 형식으로 변환 가능.
- 네트워크 전송 시 손실 위험 감소.
단점
- 데이터 크기 증가 (약 33%).
- 복호화가 필요하므로 약간의 처리 비용 증가.
사용 예시
Python에서 Base64 인코딩 및 디코딩
import base64
# 인코딩
data = "Hello, Base64!"
encoded = base64.b64encode(data.encode())
print("Encoded:", encoded)
# 디코딩
decoded = base64.b64decode(encoded).decode()
print("Decoded:", decoded)
이해되셨으면 채택 부탁드림다~