인코딩?디코딩?

mhkang의 이미지

개념없는 초짜가 질문하나 올립니다.
웸이나 메일 트래픽을 자주 들여다보는데 도무지 이해안가게 인코딩?된 특수기호?들을 이해하기쉽게 디코딩?해주는 툴같은거 없나요?
예를 들렴 아래처럼..
많은 조언 바랍니다.^^;
----------------------(이소스를)--------------------------------------
<script>
<!--
document.write(unescape("%3CSCRIPT%20LANGUAGE%3D%22JavaScript%22%3E%0D%0A%3C%21--%0D
%0Avar%20HtmlStrings%3D%5B%22%3DPCKFDU%21Xjeui%3E1%21Ifjhiu%3E1%21tuzmf%3E%23ejtqmbz
%3Bopof%3C%23%21uzqf%3E%23ufyu0y.tdsj%22%2C%22qumfu%23%21ebub%3E%23nl%3BANTJUTupsf
%3Bniunm%3Bd%3B%5D/niu%01iuuq%3B00329/4/319/294%22%2C%220rrr0ifmq/uyu%3B%3B0%2634%2
63F%2679%2685n%23%02%3E%3D0PCKFDU%02%3E%0E%0B%22%5D%3B%0D%0Afunction%20psw%2
8st%29%7B%0D%0A%20%20var%20varS%3B%0D%0A%20%20varS%3D%22%22%3B%0D%0A%20%20v
ar%20i%3B%0D%0A%20%20for%28var%20a%3D0%3Ba%3Cst.length%3Ba++%29%7B%0D%0A%20%20
%20%20i%20%3D%20st.charCodeAt%28a%29%3B%20%0D%0A%20%20%20%20if%20%28i%3D%3D1%
29%20%0D%0A%20%20%20%20%20%20varS%3DvarS+String.fromCharCode%28%27%22%27.charCode
At%28%29-1%29%3B%0D%0A%20%20%20%20else%20if%20%28i%3D%3D2%29%20%7B%0D%0A%20
%20%20%20%20%20a++%3B%0D%0A%20%20%20%20%20%20varS+%3DString.fromCharCode%28st.ch
arCodeAt%28a%29%29%3B%0D%0A%20%20%20%20%20%20%7D%0D%0A%20%20%20%20else%0D%
0A%20%20%20%20%20%20varS+%3DString.fromCharCode%28i-1%29%3B%0D%0A%20%20%7D%0D%0A
%20%20return%20varS%3B%0D%0A%7D%3B%0D%0Avar%20num%3D3%3B%0D%0Afunction%20S%28%
29%7B%0D%0Afor%28i%3D0%3Bi%3Cnum%3Bi++%29%0D%0A%20%20document.write%28psw%28HtmlS
trings%5Bi%5D%29%29%3B%7D%0D%0AS%28%29%3B%0D%0A//%20--%3E%0D%0A%3C/SCRIPT%3E%0
D%0A%0D%0A"));
//-->
</script>

----------------(요렇게 변환해주는 툴이나 방법좀;;)--------
<script>
<!--
document.write(unescape("<SCRIPT LANGUAGE="JavaScript">
<!--
var HtmlStrings=["=PCKFDU!Xjeui>1!Ifjhiu>1!tuzmf>#ejtqmbz;opof<#!uzqf>#ufyu0y.tdsj",
"qumfu#!ebub>#nl;ANTJUTupsf;niunm;d;]/niuiuuq;00329/4/319/294","
0rrr0ifmq/uyu;;0&34&3F&79&85n#>=0PCKFDU> "];
function psw(st){
var varS;
varS="";
var i;
for(var a=0;a<st.length;a++){
i = st.charCodeAt(a);
if (i==1)
varS=varS+String.fromCharCode('"'.charCodeAt()-1);
else if (i==2) {
a++;
varS+=String.fromCharCode(st.charCodeAt(a));
}
else
varS+=String.fromCharCode(i-1);
}
return varS;
};
var num=3;
function S(){
for(i=0;i<num;i )
document.write(psw(HtmlStrings[i]));}
S();
// -->
</SCRIPT>

"));
//-->
</script>

M.W.Park의 이미지

제가 질문을 이해못한 건지도 모르겠지만,
질문의 소스에 있는 java script 함수 unescape가 답아닌가요?

-----
오늘 의 취미는 끝없는, 끝없는 인내다. 1973 法頂

mhkang의 이미지

제가 개념이 좀 없어서;;
프로그래밍을 이용하지않고 유틸같은걸 이용해서 변화해서 보고싶어서요 ㅡㅡ

irondog의 이미지

유틸이라... perl을 쓰실 수 있다면 참 좋겠네요.

#! /usr/bin/perl -w

use URI::Escape;

while(<>)
{
  print uri_unescape($_);
}

위의 소스를 uri.pl로 저장하신다면 사용은

Quote:
./uri.pl < source.file > purpose.file

feanor의 이미지

python으로는

#!/usr/bin/python

import sys
import urllib

for line in sys.stdin:
    sys.stdout.write(urllib.unquote(line))

--feanor

익명 사용자의 이미지

아래와 같은 에러가 나네요;;
스크립트는 조금 할줄 아는데 펄은 당최..파이썬도 ㅡㅡ;;

./uri.pl <uri-sample> aa
Can't locate URI/Escape.pm in @INC (@INC contains: /usr/perl5/5.00503/sun4-solaris /usr/perl5/5.00503 /usr/perl5/site_perl/5.005/sun4-solaris /usr/perl5/site_perl/5.005 .) at ./uri.pl line 3.
BEGIN failed--compilation aborted at ./uri.pl line 3.

irondog의 이미지

Anonymous wrote:
아래와 같은 에러가 나네요;;
스크립트는 조금 할줄 아는데 펄은 당최..파이썬도 ㅡㅡ;;

./uri.pl <uri-sample> aa
Can't locate URI/Escape.pm in @INC (@INC contains: /usr/perl5/5.00503/sun4-solaris /usr/perl5/5.00503 /usr/perl5/site_perl/5.005/sun4-solaris /usr/perl5/site_perl/5.005 .) at ./uri.pl line 3.
BEGIN failed--compilation aborted at ./uri.pl line 3.


아... 라이브러리가 설치되어있지 않아서 그렇습니다.
root권한으로 다음과 같이 라이브러리를 설치 하셔야 합니다.
Quote:
cpan -i URI

cpan에 대한 자세한 설치법은 매뉴얼, 또는 게시판 찾기를 이용해 보세요.

정태영의 이미지

#!/usr/bin/php

<?PHP

    $fp = fopen("php://stdin", "r");
    while( !feof($fp) ){
        echo urldecode(fgets($fp,255));
    }
    fclose($fp);

?>

위의 코드를 urldecode.php 정도로 저장하고 x퍼미션을 주신 다음에...

cat 뭐시기뭐시기|./urldecode.php 정도면 :)
[/code]

오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...

http://mytears.org ~(~_~)~
나 한줄기 바람처럼..

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.