%3C/text%3E%3C/svg%3E">
💻
💻 IT·개발

퍼센트 인코딩 계산기 (RFC 3986)

입력하면 바로 계산됩니다.

입력값

URL 인코더·디코더 쉽게 이해하기 — 개념과 원리

URL에는 정해진 일부 ASCII 문자만 쓸 수 있고, 그중 ?, &, = 같은 문자는 주소의 구조를 나타내는 역할을 합니다. 퍼센트 인코딩은 그 밖의 문자나 데이터로 쓰인 예약 문자를 바이트마다 %와 16진수 두 자리로 바꾸는 방식입니다. 이 도구는 쿼리 값이나 URL 전체를 인코딩하고, 퍼센트 인코딩된 문자열을 다시 읽을 수 있는 글자로 디코딩합니다. 한글 같은 비ASCII 문자는 UTF-8 기준으로 처리합니다.

쿼리 문자열의 퍼센트 인코딩name=홍길동&city=Seoul Korea에서 영문은 그대로 두고 =는 %3D, &는 %26, 공백은 %20, 한글은 글자마다 %XX 세 개로 바뀝니다.안전한 글자는 그대로, 나머지는 %XX로name=홍길동&city=Seoul␣Korea회색 = 그대로 · 금색 = 인코딩=→%3D&→%26공백→%20홍→%ED%99%8D길→%EA%B8%B8동→%EB%8F%99한글: 글자당 UTF-8 3바이트name%3D%ED%99%8D%EA%B8%B8%EB%8F%99%26city%3DSeoul%20Korea
안전하지 않은 글자는 UTF-8 바이트를 %XX 형태로 적은 것으로 바뀝니다.

계산 방법

원리

RFC 3986은 문자를 인코딩이 필요 없는 비예약 문자와 URL 각 부분을 구분하는 예약 문자로 나눕니다. ?는 쿼리의 시작, &는 매개변수 구분, =는 이름과 값의 연결을 뜻합니다. 값 자체에 &나 =가 들어 있으면 반드시 인코딩해야 하며, 그렇지 않으면 서버가 엉뚱한 곳에서 값을 자릅니다. 어떤 바이트든 %와 16진수 두 자리로 쓸 수 있고, UTF-8은 비ASCII 문자를 여러 바이트로 바꾸므로 어떤 언어의 글자든 URL에 넣을 수 있습니다.

예제 풀이

  1. 입력값은 name=홍길동&city=Seoul Korea, 모드는 구성 요소 인코딩입니다.
  2. "name"은 그대로이고 =는 %3D, &는 %26이 됩니다.
  3. 홍은 UTF-8로 ED 99 8D이므로 %ED%99%8D, 길은 %EA%B8%B8, 동은 %EB%8F%99입니다.
  4. 공백은 %20이 됩니다.
  5. 결과는 name%3D%ED%99%8D%EA%B8%B8%EB%8F%99%26city%3DSeoul%20Korea입니다.

문자열 전체를 하나의 값으로 보았기 때문에 =와 &까지 인코딩되었습니다. 실제 쿼리를 만들 때는 name= 뒤에 홍길동만 인코딩해 붙이는 식으로 값만 인코딩하십시오.

결과 해석

한글 한 글자는 %XX 세 묶음이 되므로 인코딩된 한글은 원래 글자 수의 약 9배 길이가 됩니다. 디코딩 결과가 "invalid input"이면 % 하나만 따로 있거나 UTF-8 바이트가 중간에 끊긴 잘못된 문자열입니다.

흔한 실수

주의: 인코딩은 데이터를 숨겨 주지 않습니다. URL에 넣은 내용은 서버 로그, 브라우저 기록, 리퍼러 헤더에 남을 수 있으므로 비밀번호나 토큰을 넣지 마십시오.

자주 묻는 질문

공백은 %20과 + 중 무엇으로 써야 하나요?

URL 어디에서나 %20이 맞습니다. +는 HTML 폼 전송 같은 application/x-www-form-urlencoded 데이터에서만 공백을 뜻합니다.

주소창에 한글이 그대로 보이는 이유는 무엇인가요?

브라우저가 읽기 쉽도록 디코딩해서 보여 줄 뿐, 서버에는 퍼센트 인코딩된 UTF-8 형태로 보냅니다.

16진수의 대문자와 소문자는 다른가요?

같습니다. %3d와 %3D는 동일하지만 RFC 3986은 대문자를 권장합니다.

출처: IETF RFC 3986, Uniform Resource Identifier (URI): Generic Syntax · ECMA-262, ECMAScript Language Specification · WHATWG URL Standard

2026년 11월 8일 확인. 표준 공식과 RFC/IEEE 정의를 사용해 브라우저 안에서만 계산합니다. 입력한 내용은 어디에도 전송되지 않습니다.

💻 IT·개발 계산기 전체 →🏠 홍라이프 계산기 홈 →
한글 주소를 바꾸려면 홍라이프 도구의 URL 인코딩·디코딩을 쓰세요.