Kwiz
mardi 28 février 2006 à 14:57
Bonjour,
Pour la théorie :
http://www.php.net/manual/fr/ref.mcrypt.phpPour la pratique :
Script extrait et simplifié de celui-ci :
http://www.phpfrance.com/tutoriaux/exemples/38.phpDétails avec ce tutorial :
http://www.phpfrance.com/tutoriaux/index.p...nt-mcrypt-ripatGost en mode cbc est très rapide pour crypter.
CODE
<?php
/*
*
* Cryptage v1.0
*
* Exemple :
* $IV = '8cHv2AR1';
* $Cle = 'XCp3ACWciuP8l9Zxp1uNiWTxt8xqCB6J';
* $TxtCrypt = $IV . Crypte($IDCommande, $Cle, 8, 'gost', 'cbc', $IV);
* $TxtDeCrypt = Decrypte(substr($TxtCrypt,8), $Cle, 8, 'gost', 'cbc', substr($TxtCrypt,0,8));
*
*/
function Crypte($Texte, $Cle, $TailleCle, $Algo, $Mode, $IV){
$Cle = substr($Cle, 0, $TailleCle);
$TexteCrypte = mcrypt_encrypt($Algo, $Cle, $Texte, $Mode, $IV);
return base64_encode($TexteCrypte);
}
function Decrypte($Texte, $Cle, $TailleCle, $Algo, $Mode, $IV){
$Texte = base64_decode($Texte);
$Cle = substr($Cle, 0, $TailleCle);
$TexteClair = mcrypt_decrypt($Algo, $Cle, $Texte, $Mode, $IV);
return trim($TexteClair);
}
?>
Il vaut mieux générer le IV et la clé à chaque fois avec md5() par exemple.
Kwiz