텍스트 인코더·디코더
Base64, URL 인코딩, HTML 엔티티 또는 유니코드 이스케이프를 고르고 텍스트를 입력하거나 붙여넣으면, 입력하는 동안 인코딩 또는 디코딩된 결과가 나타납니다. 바꾸기 버튼은 출력을 다음 입력으로 옮겨 왕복 변환을 확인할 수 있게 합니다. 무료이며 회원가입이 필요 없고, 텍스트는 브라우저에서 변환되며 업로드되지 않습니다.
텍스트 인코더·디코더 사용 방법
- 1. 형식을 고르세요. Base64, URL 인코딩, HTML 엔티티, 유니코드 이스케이프 중 하나입니다. 각 카드에 용도가 적혀 있습니다.
- 2. 인코딩 또는 디코딩을 고르세요. 인코딩은 읽을 수 있는 텍스트를 해당 형식으로 바꾸고, 디코딩은 그것을 되돌립니다.
- 3. 입력하거나 붙여넣으세요. 결과가 입력하는 동안 나타납니다. 제출되는 것은 없습니다.
- 4. 복사하거나 바꾸세요. 클립보드에 복사는 결과를 복사합니다. 입력/출력 바꾸기는 출력을 입력 상자로 옮기고 방향을 뒤집으므로, 왕복 변환을 확인하는 가장 빠른 방법입니다.
용도별 인코딩 선택
| 형식 | 사용 목적 | 표준 | 출력 |
|---|---|---|---|
| Base64 | 텍스트 전용 채널로 바이트 전달: 이메일 첨부, 데이터 URI, 토큰, JSON | RFC 4648 | 문자, 숫자, +, /와 = 패딩. 약 3분의 1만큼 길어짐 |
| URL 인코딩 | 쿼리 문자열이나 경로 조각 안에 텍스트를 안전하게 넣기 | RFC 3986 | 안전하지 않은 각 바이트를 %와 16진수 두 자리로 표시 |
| HTML 엔티티 | 웹 페이지에 <, &와 ASCII가 아닌 문자 표시하기 | HTML 문자 참조 | é처럼 10진수 숫자 참조 |
| 유니코드 이스케이프 | JavaScript, JSON, Java 소스에 ASCII가 아닌 문자 쓰기 | JSON (RFC 8259), ECMAScript | 문자마다 \u와 16진수 네 자리 |
인코딩은 암호화가 아닙니다. 네 가지 모두 키 없이 누구나 되돌릴 수 있는 공개된 가역 변환이므로, 누구든 디코딩할 수 있습니다. 특히 Base64는 보호 수단으로 흔히 오해되지만, 바이트를 쓰는 방식만 바꿀 뿐입니다.
실제 예시
텍스트 Café & crème ☕를 도구가 출력하는 대로 각 형식에 통과시킨 결과입니다:
| 형식 | 인코딩 결과 |
|---|---|
| Base64 | Q2Fmw6kgJiBjcsOobWUg4piV |
| URL 인코딩 | Caf%C3%A9%20%26%20cr%C3%A8me%20%E2%98%95 |
| HTML 엔티티 | Café & crème ☕ |
| 유니코드 이스케이프 | Caf\u00e9 & cr\u00e8me \u2615 |
각 형식이 무엇을 그대로 두는지 보세요. HTML 인코딩은 앰퍼샌드를 &로 쓰지만 평범한 글자와 공백은 그대로 둡니다. 유니코드 이스케이프는 코드 127보다 큰 문자만 바꾸므로 앰퍼샌드는 그대로 남습니다. URL 인코딩은 문자열 전체를 UTF-8 바이트로 다시 씁니다: é는 두 바이트 C3 A9이므로 %C3%A9가 되고, 공백은 %20입니다. Base64는 문자열 전체의 UTF-8 바이트를 세 개씩 묶어 다루므로 모든 것을 다시 씁니다.
사람들이 자주 헷갈리는 점
- URL 인코딩은 전체 URL이 아니라 구성 요소에 씁니다. 이 도구는 글자, 숫자와
- _ . ! ~ * ' ( )를 제외한 모든 것을 이스케이프하므로a b&c=d/e?f는a%20b%26c%3Dd%2Fe%3Ff가 됩니다. 슬래시, 콜론, 물음표도 이스케이프되는데, 이는 값에는 맞지만 전체 주소에서는 문제가 됩니다. - 공백은 %20이 되고, 더하기 기호는 디코딩되지 않습니다. 폼 데이터는
+로 공백을 나타내지만, 여기서 디코딩하면a+b%20c는a+b c가 됩니다. - Base64는 표준 문자표로 인코딩합니다. 디코딩은 URL 안전 Base64도 받아들이며, 이 형식은
+와/대신-와_를 쓰고=패딩이 없을 수도 있습니다. 인코딩은 항상+,/와 패딩을 쓰므로, URL 안전 형식이 필요하면 직접 바꾸세요. - U+FFFF를 넘는 이모지와 문자는 HTML 인코딩에서 문자 하나로 처리되어 문자마다 참조 하나를 씁니다(😀는
😀). 유니코드 이스케이프는 이를 서로게이트 이스케이프 두 개로 씁니다(😀는\ud83d\ude00). JavaScript와 JSON이 이를 받아들입니다. - 디코딩 오류는 별도의 메시지가 아니라 출력 상자에 대괄호로 표시됩니다. 예:
[Error: invalid Base64 input].
어떤 도구가 필요한가요?
이 페이지는 웹용으로 텍스트를 변환합니다. 텍스트의 원시 바이트가 필요하면 16진수 변환기(16진수 바이트) 또는 2진수 변환기(8비트 묶음)를 사용하세요. 문자 번호는 ASCII 변환기가 10진수 코드로 보여 줍니다. 숫자를 진법 사이에서 바꾸려면 진법 변환을 사용하세요. Base32, Base58, Ascii85는 예정된 Base32, Base58 and Ascii85 Converter에서 다룰 예정입니다.
자주 묻는 질문
- 이 도구는 어떤 인코딩 형식을 지원하나요?
- 네 가지입니다: Base64(RFC 4648), URL 퍼센트 인코딩, HTML 10진수 숫자 엔티티, 유니코드
\u이스케이프. 각각 인코딩하거나 디코딩할 수 있습니다. - Base64는 무엇에 쓰나요?
- 인쇄 가능한 64개의 문자로 이진 데이터를 나타내므로, 텍스트 중심으로 만들어진 시스템을 통과할 수 있습니다. 이메일 첨부, 이미지를 담는
data:URI, HTTP 기본 인증 헤더, JSON 웹 토큰의 구성 요소 등이 그 예입니다. 데이터가 약 33% 커지며 비밀성은 주지 않습니다. - URL 인코딩은 언제 쓰나요?
- 사용자가 입력한 텍스트가 URL의 일부(쿼리 값, 경로 조각, 프래그먼트)에 들어갈 때마다 씁니다. 공백, 앰퍼샌드, 등호, ASCII가 아닌 글자 등은 그대로 두면 잘못 해석되기 때문입니다. 전체 주소가 아니라 조각을 인코딩하세요.
- 인코딩은 암호화와 같은가요?
- 아닙니다. 인코딩은 데이터를 저장하거나 보낼 수 있도록 쓰는 방식을 바꿀 뿐이며, 누구나 키 없이 되돌릴 수 있습니다. 암호화에는 비밀 키가 필요합니다. 비밀번호나 토큰을 숨기는 데 Base64나 퍼센트 인코딩을 절대 쓰지 마세요.
- URL 안전 Base64도 디코딩할 수 있나요?
- 네.
-와_를 쓰는 URL 안전 문자열을=패딩 유무와 관계없이 붙여넣으면 디코딩됩니다. 인코딩은 표준 문자표로 쓰므로, URL 안전 형식이 필요하면+를-로,/를_로 직접 바꾸세요. - 디코더는 어떤 HTML 엔티티를 이해하나요?
- U+FFFF까지의 문자에 대한 10진수 참조(
é)와 16진수 참조(é), 그리고 짧은 목록의 이름 있는 엔티티를 이해합니다:&,<,>,",', ,©,®,™,€,£,¥,¢,—,–,«,»,….é처럼 그 밖의 이름 있는 엔티티는 입력한 그대로 남습니다. - 내 텍스트가 어딘가에 업로드되나요?
- 아니요. 네 가지 변환이 모두 입력하는 동안 브라우저에서 실행되며, CitationEasy로 아무것도 전송되지 않습니다.