반응형
Base64는 바이너리 데이터를 텍스트로 변환하기 위한 인코딩 방식입니다. 주로 데이터를 안전하게 전송하거나 저장할 때 사용됩니다. 텍스트 기반 프로토콜(예: 이메일, JSON, XML 등)에서 이진 데이터를 사용할 수 있도록 도와줍니다.
따라서,
Base64는 그림이나 PDF를 직접 인식하는 도구라기보다는, 이진 데이터를 텍스트 형태로 변환하여 데이터를 전송하거나 저장할 때 사용되는 인코딩 방식입니다.
Base64의 특징
- 64개 문자 사용
Base64는 알파벳 대소문자(A-Z, a-z), 숫자(0-9), 그리고 두 개의 추가 문자(+, /)를 사용하여 총 64개의 문자를 인코딩에 사용합니다.
예: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/ - 패딩 문자 (=)
데이터의 길이가 3의 배수가 아닐 경우, 인코딩 결과를 채우기 위해 패딩 문자 =가 추가됩니다. - 3 바이트 → 4 바이트 변환
원본 데이터의 3바이트를 4개의 6비트 청크로 나누어 Base64로 변환합니다. 따라서 인코딩된 데이터는 원본보다 약 33% 더 커집니다.
Base64의 사용 예시
- 이미지 또는 파일 전송
이미지를 Base64로 인코딩하여 HTML, JSON 또는 이메일에 포함할 수 있습니다.
예: <img src="data:image/png;base64,..." /> - 데이터 전송 안전성 확보
HTTP, SMTP 같은 텍스트 기반 프로토콜로 바이너리 데이터를 전송할 때 문제가 발생하지 않도록 데이터를 변환합니다. - 데이터 저장
JSON 등 텍스트 포맷에서 바이너리 데이터를 저장할 때 유용합니다.
인코딩 & 디코딩 예시
import base64
# 바이너리 데이터를 Base64로 인코딩
data = "Hello, Base64!".encode() # 문자열을 바이너리로 변환
encoded_data = base64.b64encode(data)
print("Encoded:", encoded_data.decode()) # Base64로 인코딩된 텍스트 출력
# Base64 데이터를 디코딩
decoded_data = base64.b64decode(encoded_data)
print("Decoded:", decoded_data.decode()) # 원래 문자열로 복원
출력값
Encoded: SGVsbG8sIEJhc2U2NCE=
Decoded: Hello, Base64!
다음글 ->
https://lnylnylnylny.tistory.com/49
[Base64] 이미지 데이터를 텍스트 데이터로 변환 방법 코드
https://lnylnylnylny.tistory.com/48 [Base64] 이미지 데이터를 텍스트 데이터로 변환하는 방법Base64는 바이너리 데이터를 텍스트로 변환하기 위한 인코딩 방식입니다. 주로 데이터를 안전하게 전송하거나
lnylnylnylny.tistory.com
반응형
'Python' 카테고리의 다른 글
[Base64] 이미지 데이터를 텍스트 데이터로 변환 방법 코드 (0) | 2024.12.01 |
---|---|
[KIPRIS] 특허 API 사용법 (0) | 2024.10.15 |
[KIPRIS] 특허청 API 신청법 (1) | 2024.10.15 |
[pyenv-win][streamlit]가상환경에서 streamlit 실행하기 (2) | 2024.10.12 |
[pyenv-win] pyenv를 사용하여 파이썬 가상환경 만들기 - 윈도우용 window (0) | 2024.09.27 |