728x90
    데이터를 URL에 실어 GET방식으로 전송해야 할 때가 있다.
    GET 방식의 단점은 전달되는 변수와 값이 주소표시줄에 그대로 표시되므로
    데이터를 의도적으로 조작할 수 있다.
    urlencode() 함수는 이러한 문제점을 방지하기 위해 GET방식으로 URL에 실려 전달되는 데이터를 인코딩하는 함수이다.
    urlencode() 함수는 문자열만 적용된다.
    한글문자열은 헥사코드로 변환되고, 공백문자는 + 로 변환된다. 영문자는 변환되지 않고 그대로 전달된다.
    인코딩된 문자열을 전달받은 문서에서는 자동으로 디코딩이 이뤄진다.
    따라서, 인코딩된 문자열을 디코딩하기 위해 urldecode() 함수를 사용할 필요는 없다.


    테이블에 존재하는 특정 레코드들 중 특정 단어를 포함하는 레코드를 검색하고자 하는 경우 해당 검색어를 GET방식으로 문서에 전달하게 된다. 이 경우 전달되는 검색어는 반드시 urlencode() 함수로 인코딩해 전달해야 한다.

    한글이 입력될 가능성이 있는 부분엔 반드시 urlencode() 함수로 인코딩하여 처리한다고 생각하면 된다.


    GET 방식이 아닌 POST 방식으로 전달되는 경우, urlencode() 함수로 인코딩하면 반드시 urldecode()함수로 디코딩해주어야 원래의 문자열을 확인할 수 있다.


    Login 시 사용하는 userID, userPW 정보는 네트워크 상에서 스니핑 툴로 정보를 알아낼 수가 있다.

    이 경우에는 userID, userPW 정보도 암호화해서 보내고 서버에서 암호를 풀어서 사용자 식별을 해야 한다.

    (서버에서 패스워드 정보는 암호화되므로 암호화된채로 비교 검사)

    urlencode 를 했다고 해서 정보가 안보이는게 아니라는 것을 꼭 알아야 한다. 영문, 숫자 등은 그대로 보인다.

    단지 한글 정보만 헥사값을 변경된다는 것일 뿐이다.

    자바스크립트 암호화로 구글링을 검색하면 많이 나온다.


728x90
블로그 이미지

Link2Me

,