>백엔드 개발 >PHP 튜토리얼 >PHP 암호화 및 복호화 기능 코드 구현 예

PHP 암호화 및 복호화 기능 코드 구현 예

little bottle
little bottle앞으로
2019-04-24 17:20:453102검색

이 기사에서는 모든 사람이 PHP를 사용하여 암호화 및 암호 해독을 구현하는 방법을 배울 수 있습니다. 코드에는 필요한 참조 값이 있습니다.

<?php

//加密函数
function passport_encrypt($txt, $key) {
    srand((double)microtime() * 1000000);
    $encrypt_key = md5(rand(0, 32000));
    $ctr = 0;
    $tmp = &#39;&#39;;
    for($i = 0;$i < strlen($txt); $i++) {
       $ctr = $ctr == strlen($encrypt_key) ? 0 : $ctr;
       $tmp .= $encrypt_key[$ctr].($txt[$i] ^ $encrypt_key[$ctr++]);
    }
    return base64_encode(passport_key($tmp, $key));
}
//解密函数
function passport_decrypt($txt, $key) {
    $txt = passport_key(base64_decode($txt), $key);
    $tmp = &#39;&#39;;
    for($i = 0;$i < strlen($txt); $i++) {
       $md5 = $txt[$i];
       $tmp .= $txt[++$i] ^ $md5;
    }
    return $tmp;
}
//上面两个函数用到的公共函数
function passport_key($txt, $encrypt_key) {
    $encrypt_key = md5($encrypt_key);
    $ctr = 0;
    $tmp = &#39;&#39;;
    for($i = 0; $i < strlen($txt); $i++) {
       $ctr = $ctr == strlen($encrypt_key) ? 0 : $ctr;
       $tmp .= $txt[$i] ^ $encrypt_key[$ctr++];
    }
    return $tmp;
}

//----------------------------------------
//----------------------------------------
//-------------示例-----------------------
//----------------------------------------
//----------------------------------------
//
$str = &#39;你好,我是+-!少林a b张三丰&#39;;
echo &#39;<br>------key:aaa----------<br>&#39;;
echo $x = passport_encrypt($str,&#39;aaa&#39;);
//值会变,其中一个如下 
//AOdS7lWlU+IM+1fnALBV5QOOV7dchQfEX+MCwgf2U3BXeQcnVuNavgPAA+hbmlLJAWEHIVRnD7hYvgf/U+lS4gCKUrdVvVO3
echo &#39;<br>-----------------------<br>&#39;;
echo passport_decrypt($x,&#39;aaa&#39;); 
echo &#39;<br><br><br><br><br><br><br><br><br><br><br><br>&#39;;

echo &#39;<br>------key:bbb----------<br>&#39;;
echo $y = passport_encrypt($str,&#39;bbb&#39;);
//值会变,其中一个如下
//Ae0F5gD1C+oB9wC/DOZZ6AeKU7MCjleWUbEAmFGuAi4JLF8gUeFW4lKQUrYBmlrAA2MHIVcxBrMFv1PzXOha5QGABb8A7Qu/
echo &#39;<br>-----------------------<br>&#39;;
echo passport_decrypt($y,&#39;bbb&#39;);

?>
rrree

관련 튜토리얼: PHP 비디오 튜토리얼

위 내용은 PHP 암호화 및 복호화 기능 코드 구현 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제