Base64 인코딩 · 디코딩
텍스트를 Base64로 바꾸거나 원문으로 되돌리세요. 한글은 UTF-8로 처리하며, 변환은 브라우저에서 이루어집니다.
입력값은 브라우저에서만 처리되며 서버로 전송되지 않습니다.
인증 헤더·JWT 해독
Authorization: Basic 헤더 또는 JWT를 붙여 넣으세요. 구성 요소만 해독하며 서명은 검증하지 않습니다.
빠른 사용법
- 인코딩할 텍스트를 왼쪽에 넣으세요.
- 디코딩할 Base64는 오른쪽에 넣으세요.
- 필요한 경우 URL-safe를 선택하세요.
예시와 형식
| 입력 또는 옵션 | 결과·의미 |
|---|---|
| hello | aGVsbG8= |
| 일반 Base64 | +와 / 문자를 쓰며 끝에 = 패딩이 붙을 수 있습니다. |
| URL-safe | 이 도구에서는 -와 _를 쓰고 끝의 =를 생략합니다. |
인코딩은 암호화가 아닙니다
Base64는 바이트를 텍스트 형태로 표현하는 방식입니다. 키 없이 되돌릴 수 있으므로 비밀번호나 토큰을 숨기는 용도로 쓰지 마세요. 보통 원래 바이트보다 표현 길이가 늘어납니다.
디코딩이 실패하는 경우
잘린 데이터, 잘못된 문자·패딩, 또는 UTF-8 텍스트가 아닌 바이너리일 수 있습니다. 이 도구는 텍스트 변환용이므로 이미지·압축파일의 Base64를 넣으면 정상 문자열로 표시하지 못할 수 있습니다.
일반 Base64와 URL-safe 입력을 받아들이지만 모든 시스템의 포맷 요구가 같은 것은 아닙니다. 원문은 최대 200,000자, 디코딩 입력은 최대 1,000,000자입니다. 입력은 브라우저에서 처리합니다.
HTTP 인증 헤더와 JWT 확인하기
Basic 인증 헤더는 ‘사용자 이름:비밀번호’를 Base64로 바꾼 값입니다. 401 응답이 계속되면 클라이언트가 실제로 보낸 헤더를 위의 해독 기능에 넣어 사용자 이름, 특수문자, 줄바꿈이 의도한 값인지 확인합니다. 누구나 해독할 수 있으므로 HTTPS 없이 보내면 비밀번호가 그대로 노출됩니다.
JWT는 점(.)으로 나뉜 헤더·페이로드·서명이며 앞의 두 부분은 Base64url로 인코딩한 JSON입니다. exp·nbf·iat는 1970-01-01 UTC부터 센 초입니다. 토큰이 갑자기 거부되면 exp가 지났는지, 서버 시계가 nbf보다 이르지 않은지, aud·iss가 서버 설정과 같은지를 먼저 봅니다. 서명 검증은 키를 가진 서버가 해야 하므로 해독 결과만으로 토큰이 유효하다고 판단하지 않습니다.
curl -sv -u admin:secret https://example.com/ -o /dev/null 2>&1 | grep -i '^> authorization'[Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes('admin:secret'))> Authorization: Basic YWRtaW46c2VjcmV0
YWRtaW46c2VjcmV0