암호화시 특수문자 관련이슈

암호화시 특수문자 관련이슈

QA

암호화시 특수문자 관련이슈

본문

어쩌다보니 

PHP 5.2에서 crypt()를 쓰게 되었는데,

암호화가 필요한 스트링뒤에 특수문자가 2개가 들어가면

PHP 5.2를 지원하는 특정 호스팅 서버에서는 

'페이지가 작동하지 않는다'(ERR_EMPTY_RESPONSE)가

표시가 되네요. 다른 PHP 5.2 호스팅에서는 잘 되고요.

 

예를들어 스트링이 abcd0987^^일 경우엔 차단돼 버리고,

abcd0987^때는 됩니다.

 

이게 호스팅의 PHP 설정과 연관이 있는 것 같은데,

보안문제가 있어도 업그레이드 작업이라

현재는 꼭 필요합니다.

아래 구문을 바꿔서는 안되는데

원인 좀 알 수 있을까요?

 


<?php
function x_pass($pass){
    $Ta1=substr($pass,-1,1);
    $Ta2=substr($pass,-2,1);
    $Ta3=substr($pass,-3,1);
    $Ta4=substr($pass,-4,1);
    $cryptword=$Ta1.$Ta2.$Ta3.$Ta4;
    $firstcrypt=crypt($cryptword,$Ta2.$Ta3);
    $Ta1=substr($firstcrypt,-1,1);
    $Ta2=substr($firstcrypt,-2,1);
    return crypt($pass,$Ta1.$Ta2);
}
$x_pass = "abcd0987^^";
$x_pass_ch=x_pass($x_pass);
echo $x_pass_ch;
?>

이 질문에 댓글 쓰기 :

답변 1

답변을 작성하시기 전에 로그인 해주세요.
전체 35
QA 내용 검색
filter #xss ×

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT