어떤 텍스트 도구가 필요할까
텍스트 도구 대부분은 같은 인코더와 디코더를 다른 프리셋으로 연 것이므로, 알맞은 곳에서 시작하는 것이 핵심입니다.
| 할 일 | 도구 |
|---|---|
| 텍스트를 Base64로 바꾸기 | Base64 인코더 또는 텍스트를 Base64로 |
| Base64 문자열 읽기 | Base64 디코더 또는 Base64를 텍스트로 |
| 이모지나 라틴 문자 외의 문자, 바이트 단위로 정확한 UTF-8 | UTF-8을 Base64로, Base64를 UTF-8로 |
| Windows, .NET, PowerShell의 와이드 문자열 | UTF-16을 Base64로, Base64를 UTF-16으로 |
| 7비트 일반 텍스트만 | ASCII를 Base64로, Base64를 ASCII로 |
| 문자열이 올바른 Base64인지 확인 | Base64 검사기 |
| 줄 바꿈, 따옴표, 누락된 패딩, 섞인 알파벳 수정 | Base64 복구 |
| 이메일용 76자 줄 | MIME Base64 인코더 |
| JSON, XML, HTML, CSV가 든 Base64 | Base64를 JSON으로, Base64를 XML로, Base64를 HTML로, Base64를 CSV로 |
| data URI나 API용 마크업 인코딩 | HTML을 Base64로, XML을 Base64로 |
| 인코딩 길이 예측 | Base64 크기 계산기 |
문자 인코딩이 중요한 이유
Base64는 바이트를 다루며 문자에 대해서는 아무것도 모릅니다. 텍스트를 인코딩하려면 먼저 바이트로 바꿔야 하고, 그 방법을 문자 인코딩이 정합니다.
| 텍스트 | UTF-8 | Windows-1252 | UTF-16LE |
|---|---|---|---|
é | w6k= | 6Q== | 6QA= |
Grüße | R3LDvMOfZQ== | R3L832U= | RwByAPwA3wBlAA== |
웹, JSON, 대부분의 API에는 UTF-8이 올바른 기본값입니다. UTF-16LE는 Windows API와 PowerShell의 -EncodedCommand가 기대하는 형식입니다. 레거시 문자 인코딩은 오래된 데이터베이스, 데스크톱 소프트웨어의 CSV 내보내기, 일부 이메일에서 나타나며, 한국어 데이터라면 EUC-KR이 대표적입니다. 디코딩한 텍스트에 é 대신 é가 보이면 UTF-8을 Windows-1252로 읽은 것입니다. 디코더에서 문자 인코딩을 바꾸면 텍스트가 제대로 나옵니다.
디코딩한 텍스트가 이상할 때
- 무작위 기호와 네모 상자: Base64에 이미지, PDF, gzip 출력 같은 바이너리 데이터가 들어 있습니다. Base64를 파일로를 쓰거나,
H4sI…문자열이라면 gzip 디코더를 쓰세요. - 잘못된 문자나 길이에 대한 오류: 전송 중에 문자열이 손상되었습니다. 검사기가 위치를 보여 주고, Base64 복구가 흔한 원인을 정리합니다.
- 디코딩했더니 또 Base64가 나옴: 데이터가 두 번 인코딩되었습니다. 출력을 한 번 더 디코딩하세요.
- 문자열에
-와_가 있음: JWT나 URL에서 온 Base64URL입니다. 여기의 디코더는 모두 이것을 받아들이며, 차이는 Base64URL 도구에서 설명합니다.
토큰, URL, SAML이나 Kubernetes Secret 같은 구조화된 페이로드는 웹과 토큰 도구를 보세요. Base32, Base58, hex 같은 다른 인코딩은 진법 변환기가 모두 읽습니다.
자주 묻는 질문
Base64 문자열을 디코딩하려면 어떤 도구를 써야 하나요?
Base64 디코더부터 시작하세요. 출력을 읽을 수 없다면 데이터가 파일이거나 압축된 것일 가능성이 높으며, Base64를 파일로가 형식을 감지합니다. 악센트나 한글이 깨지면 문자 인코딩을 바꾸세요.
같은 텍스트인데 도구마다 Base64가 다른 이유는 무엇인가요?
Base64는 바이트를 인코딩하고, 텍스트는 먼저 문자 인코딩을 거쳐 바이트가 됩니다. é는 UTF-8에서 w6k=, Windows-1252에서 6Q==, UTF-16LE에서 6QA=입니다. 상대편이 쓰는 문자 인코딩에 맞추세요.
디코딩하기 전에 문자열을 정리해야 하나요?
보통은 필요 없습니다. 디코더는 공백과 줄 바꿈을 무시하고, 따옴표와 data:…;base64, 접두사를 제거하고, URL-safe 문자를 받아들이고, 누락된 패딩을 복원하며, 무엇을 고쳤는지 상태 줄에 알려 줍니다. 심하게 손상된 입력에는 Base64 복구를 쓰세요.