check_token

check_token

QA

check_token

본문

그누보드 고수님들.. 부탁드립니다. 알려주세요..

 

-----------------------------------------

내가 쓴 함수

 

- 토큰 함수


// 토큰 생성
function _token()
{
    return md5(uniqid(rand(), true));
}

// 불법접근을 막도록 토큰을 생성하면서 토큰값을 리턴
function get_token()
{
    $token = md5(uniqid(rand(), true));
    set_session('ss_token', $token);
    return $token;
}
// 세션변수 생성 
function set_session($session_name, $value) 
{ 
    if (PHP_VERSION < '5.3.0') 
        session_register($session_name); 
    // PHP 버전별 차이를 없애기 위한 방법 
    $$session_name = $_SESSION[$session_name] = $value; 
}

// POST로 넘어온 토큰과 세션에 저장된 토큰 비교
function check_token()
{
    set_session('ss_token', '');
    return true;
}

 

- 내가 사용한 토큰


<form action="test.php" method="post">
<input type="hidden" name="token" value="<?php echo _token(); ?>">
</form>

 

- 처리 값


$token = $_POST['token'];
 
if($token!=check_token())
{
echo "error";
exit;
}
 

이 질문에 댓글 쓰기 :

답변 1

뭘 의도하시는지 정확히 모르겠네요.. 

일단 토큰값을 클라이언트가 서버로 넘긴다는 부분에서 이미 그 토큰은 신뢰성을 잃어버립니다.

생성된 토큰은 세션을 통해 저장하고 검증하세요.

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

회원로그인

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