PHP & Others

Mysql PASSWORD(), olo_password() PHP 함수

페이지 정보

본문

function mysqlPassword($pw) {

   //SELECT CONCAT('*', UPPER(SHA1(UNHEX(SHA1('$pw'))))); //sql 이용

    return '*'.strtoupper(sha1(sha1($pw, true)));    

}


function old_password($password) {

    if ($password == '')

        return '';

 

    $nr = 1345345333;

    $add = 7;

    $nr2 = 0x12345671;

    foreach(str_split($password) as $c) {

        if ($c == ' ' or $c == "\t")

            continue;

        $tmp = ord($c);

        $nr ^= ((($nr & 63) + $add) * $tmp) + (($nr << 8) & 0xFFFFFFFF);

        $nr2 += (($nr2 << 8) & 0xFFFFFFFF) ^ $nr;

        $add += $tmp;

    }

 

    if ($nr2 > PHP_INT_MAX)

        $nr2 += PHP_INT_MAX + 1;

 

    $bit = (1 << 31) -1;

 

    return sprintf("%08lx%08lx", $nr & $bit, $nr2 & $bit);

}

관련자료

등록된 댓글이 없습니다.
Today's proverb
남을 비난하는 것만큼 쉬운 일은 없다. 어떤 일이 그릇되었다는 것을 아는 데는 그리 많은 것이 필요하지 않다. 하지만 어떻게 하면 그것을 다시 바르게 할 수 있는가를 아는 데는 남다른 눈썰미가 있어야 한다. (빌 로저스)