Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel für die Implementierung des PHP-Verschlüsselungs- und Entschlüsselungsfunktionscodes

Beispiel für die Implementierung des PHP-Verschlüsselungs- und Entschlüsselungsfunktionscodes

little bottle
little bottlenach vorne
2019-04-24 17:20:453046Durchsuche

Dieser Artikel führt jeden dazu, zu lernen, wie man PHP zum Implementieren der Verschlüsselung und Entschlüsselung verwendet. Der Code hat einen bestimmten Referenzwert, und Freunde, die ihn brauchen, können einen Blick darauf werfen.

<?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

Verwandte Tutorials: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonBeispiel für die Implementierung des PHP-Verschlüsselungs- und Entschlüsselungsfunktionscodes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen