본문 바로가기

Information Security/Encoding

URL Encoding

1. URL Encode/Decode란?
URL로 사용하기 적합하지 문자를 %뒤에 문자의 hex코드를 붙여서 url을 변경하는 것이다.

ex) likethebeginning.tistory.com
like     ======= 'l' -> 6C, 'i' -> 69, 'k' -> 6B, 'e' -> 65
the      ======= 't' -> 74, 'h' -> 68, 'e' -> 65
beginning ===='b' -> 62, 'e' -> 65, 'g' -> 67, i -> 69 , 'n' -> 6E, 'n' -> 6E, 'i' -> 69, 'n' -> 6E, 'g'-> 67
.tistory  ======= '.' -> 2E, 't' -> 74, 'i' -> 69, 's' -> 73, 't' -> 74, 'o'  -> 6F, 'r' -> 72, 'y' -> 79
.com    ======== '.' -> 2E, 'c' -> 63, 'o' -> 6F, 'm' -> 6D

이로써 얻어낸 각 hex코드 앞에 %를 붙여주면 완성!

%6C%69%6B%65%74%68%65%62%65%67%69%6E%6E%69%6E%67%2E%74%69%73%74%6F%72%79%2E%63%6F%6D

사용자 삽입 이미지
사용자 삽입 이미지

2. 관련 JAVA 함수
가. encodeURI() / decodeURI()
최소한의 문자만 인코딩합니다.
; / ? : @ & = + $ , - _ . ! ~ * ' ( ) #
이런 문자는 인코딩하지 않습니다.
http:// ... 등은 그대로 나옵니다.


나. encodeURIComponent() / decodeURIComponent()
알파벳과 숫자 Alphanumeric Characters 외의, 대부분의 문자를 모두 인코딩합니다.
http:// ... 가 http%3A%2F%2F 로 됩니다.



다. escape() / unescape()
예전부터 있던 오래된 함수입니다. encodeURI() 와 encodeURIComponent() 의 중간 정도의 범위로 문자를 인코딩합니다.

<출처 - 어떤분 블로그 + 내 생각>

'Information Security > Encoding' 카테고리의 다른 글

UNICODE  (0) 2009.03.24
Base64  (0) 2009.03.17