웹마스터 팁



예전에 만들어놓았던 문서인코딩 소스입니다.
스트링 객체에 대한 이해가 좀 있다면 쉽게 만들수 있는 소스죠.

입력받은 소스를 escape() 시킨다음에 각각의 모든 문자들의 아스키값을
정해준 만큼 더해줍니다.
그리고 여기에 디코딩 함수를 포함한 스크립트를 덧붙여 출력해주죠.

디코딩의 원리는 위의 역순이구요.


예전에 만들었을땐 입력받은 문자열의 아스키값을 더해 나온값이
줄바꿈에 해당하는 문자열일때 에러가 나는 오류가 있었는데
수정 했습니다.

스크립트에 관한 약간의 이해가 있다면 이 소스의 치명적인 약점을
쉽게 찾을수 있을겁니다.


미리 보기 : http://allzza.net/xxx/aboard.php?id=pds
참조 : http://www.tagmania.net/zboard/zboard.php?id=jschool&page=8&select_arrange=headnum&desc=desc&sn=off&ss=on&sc=on&divpage=1



<html>
<head>
<title>
String 와 form 객체를 이용한 암호화 소스
</title>

<script>

/////////////////////////
// 소스 : 미친개
// 이멜 : webmaster@allzza.net
// 멜룽----ㅡ,.ㅡ
/////////////////////////////



msg = false;
dum = 1;
        //-- dum 은 1 에서 5 까지 취향에 맞게 선택하세요
        //-- 이 숫자가 0 이면 암호화가 되지 않습니다.
        //-- 1에서 5정도가 적당합니다..
              
function encode()  {
        myObj = document.myform.aaa;
        str = escape(myObj.value);
        end_num = str.length - 1;
        encode_str = '';
  
        befstr =   '<html><head><title></title><sc'
                 + 'ript>str2 = "'
        aftstr =   '";eh = "";for(k=0;k<str2.length;k++)'
                 + '{eh+=String.fromCharCode(str2.charCodeAt(k) - ' + dum + ');}'
                 + 'document.write(unescape(eh));</scr'
                 + 'ipt><body></body></html>'



        for(i=0;i<=end_num;i++)   {
           //if(str.charCodeAt(i)==9) i++;
           key = 1*str.charCodeAt(i) + dum;
           encode_str += String.fromCharCode(key);
           }
        document.myform.aaa.value = befstr + encode_str + aftstr;
        }


function getstr(value)   {

   var cs = document.myform.aaa.value;
   var str_num = cs.indexOf(value);    
   return str_num;          
   }
    

function decode()   {

   myObj = document.myform.aaa;
   str = myObj.value;
   //dum = 40000;
   //-- 위에 덤이랑 같은 숫자로...^..^
   decode_str = '';
   str_start = getstr('str2 = "') + 'str2 = "'.length;
   str_end = getstr('";eh');
  for(i=str_start;i<str_end;i++)  {
      key = 1*str.charCodeAt(i) - dum;
      decode_str += String.fromCharCode(key);
      }
  document.myform.aaa.value = unescape(decode_str);
}

function view_source()   {
  abab = prompt('페이지의 주소를 써 넣으세요','http://');
  window.location = 'view-source:' + abab;
  }
</script>


</head>
<body bgcolor=#aaaaaa>

<form name=myform>
<table border=1>
<tr><td>
<textarea name=aaa ROWS=15 COLS=50></textarea>
</td>
</tr>
<tr>
<td align=center>
<input type=button name=ccc value='인코딩' onclick='encode();'>
<input type=button          value='디코딩' onclick='decode();'>
<input type=reset name=ddd value='다시'>
<input type=button value='소스불러오기' onclick='view_source();'>
</td></tr>

</table>
</form>


      



</body>
</html>
제목 글쓴이 날짜
레이어 3 - 메뉴판때기. [1] 미친개 2004.07.04
레이어 4 - 뽀나수 하나 [1] 미친개 2004.07.07
레이어 5 - 뽀나수 둘 [6] 미친개 2004.07.07
웹 문서 암호화 스크립트 [1] 미친개 2004.07.20
아이프레임으로 문서크기 자동조절하기(완벽판) [13] 렌디 2004.07.21
문서에 따른 아이프레임 heigh(높이) 값 자동 조절 (수정본) [3] 스토비━ⓒ 2004.07.31
원하는 아이프레임부분을 리로드하자! [1] †천상의燦† 2004.08.02
Javascipt로 구현한 MD5,MD4,SHA1 [10] 장종석 2004.08.06
레이어를 클릭해서 보이거나 사라지게 하기 [3] †천상의燦† 2004.08.18
이미지 사이즈에 맞게 새창띄우기 [오류보완] 정확하게 안열리는 오류 [11] beMax 2004.08.18
싸이처럼 테이블 안에서 버튼으로 이동/스크롤 하기 [5] 제로스 2004.09.09
랜디님의 iframe 크기조절 소스응용-iframe 최저길이 지정하기 [1] 김수형 2004.09.10
셀렉트 메뉴를 통해 갤러리 만들기 한현종 2004.09.10
요일마다 바뀌는 상태바 인사 말~ [2] Kasis 2004.09.13
내홈피 즐겨찾기/새로고침/앞/뒤로가기 [4] 팡이 2004.09.13
메뉴 추가 삭제 수정시 쓰면 좋을것 같네요 - 출처: http://www.happyscript.com/ [1] 예뜨락 2004.09.17
슬라이딩 메뉴 자바스크립트 [3] 행복한고니 2004.09.21
멀티 파일다운로드 꽁수로 구현하기 [1] 행복한고니 2004.10.07
웹페이지에서 단축키 사용 (Firefox) [2] 전종화 2004.10.07
자바스크립트로 구현한 윈도우 스타일.. [2] 크래닉스 2004.10.07