Base64 인코딩 · 디코딩

텍스트를 Base64로 바꾸거나 원문으로 되돌리세요. 한글은 UTF-8로 처리하며, 변환은 브라우저에서 이루어집니다.

입력값은 브라우저에서만 처리되며 서버로 전송되지 않습니다.

인증 헤더·JWT 해독

Authorization: Basic 헤더 또는 JWT를 붙여 넣으세요. 구성 요소만 해독하며 서명은 검증하지 않습니다.

빠른 사용법

  1. 인코딩할 텍스트를 왼쪽에 넣으세요.
  2. 디코딩할 Base64는 오른쪽에 넣으세요.
  3. 필요한 경우 URL-safe를 선택하세요.

예시와 형식

입력 또는 옵션결과·의미
helloaGVsbG8=
일반 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
curl -sv -u admin:secret https://example.com/ -o /dev/null 2>&1 | grep -i '^> authorization'
명령어 · Windows · PowerShell
[Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes('admin:secret'))
설명용 출력 예시 · 실제 운영 서버 측정값이 아닙니다.
> Authorization: Basic YWRtaW46c2VjcmV0
YWRtaW46c2VjcmV0

자주 묻는 질문

한글도 되나요?
UTF-8 텍스트로 처리합니다. 상대 시스템이 다른 문자 인코딩을 사용하면 결과가 다르게 보일 수 있습니다.

공식 참고 자료

관련 도구