Fiabilité algorithme de cryptage
Bonjour,
Je compte mettre en place cet algorithme de cryptage/décryptage pour sécuriser les données transitant dans mon projet web. J'aimerais votre avis sur la fiabilité du code en terme de sécurité et s'il y a des choses à améliorer. ;)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| <?php
class Cipher {
private $securekey, $iv; //clé privée en paramètre de la classe
function __construct($textkey) {
$this->securekey = hash('sha256',$textkey,TRUE); //construction et hashage de la clé privée en SHA-256
$this->iv = mcrypt_create_iv(32);
}
function encrypt($input) { //fonction d'encryptage algorithme blowfish sur base de la clé privée
return base64_encode(mcrypt_encrypt(MCRYPT_BLOWFISH, $this->securekey, $input, MCRYPT_MODE_ECB, $this->iv));
}
function decrypt($input) { //décryptage
return trim(mcrypt_decrypt(MCRYPT_BLOWFISH, $this->securekey, base64_decode($input), MCRYPT_MODE_ECB, $this->iv));
}
}
$cipher = new Cipher('secret passphrase'); //création de l'objet avec une pass phrase
$encryptedtext = $cipher->encrypt("hide me"); //encryptage du texte
echo "->encrypt = $encryptedtext<br />"; //affiche texte encrypté
$decryptedtext = $cipher->decrypt($encryptedtext); //décryptage du texte
echo "->decrypt = $decryptedtext<br />"; //affichage du texte décrypté
//var_dump($cipher);
?> |