PHP & Others

PHP 문자열 encode decode

컨텐츠 정보

본문

function encode($value) {

    if (!$value) {

        return false;

    }


    $key = sha1('yourownkey');

    $strLen = strlen($value);

    $keyLen = strlen($key);

    $j = 0;

    $crypttext = '';


    for ($i = 0; $i < $strLen; $i++) {

        $ordStr = ord(substr($value, $i, 1));

        if ($j == $keyLen) {

            $j = 0;

        }

        $ordKey = ord(substr($key, $j, 1));

        $j++;

        $crypttext .= strrev(base_convert(dechex($ordStr + $ordKey), 16, 36));

    }


    return $crypttext;

}



function decode($value) {

    if (!$value) {

        return false;

    }


    $key = sha1('yourownkey');

    $strLen = strlen($value);

    $keyLen = strlen($key);

    $j = 0;

    $decrypttext = '';


    for ($i = 0; $i < $strLen; $i += 2) {

        $ordStr = hexdec(base_convert(strrev(substr($value, $i, 2)), 36, 16));

        if ($j == $keyLen) {

            $j = 0;

        }

        $ordKey = ord(substr($key, $j, 1));

        $j++;

        $decrypttext .= chr($ordStr - $ordKey);

    }


    return $decrypttext;

}

관련자료

댓글 0
등록된 댓글이 없습니다.
Today's proverb
나는 단지 한 사람의 인간에 불과하다. 그렇더라도 나는 어디까지나 인간이다. 나는 모든 것을 다 할 수는 없다. 그렇더라도 나는 어떤 것은 할 수 있다. 그리고 모든 것을 다 할 수 없다고 해서 내가 할 수 있는 어떤 것까지 포기하지는 않을 것이다. (에드워드 에버렛 해일)