Je cherche des fonctions à chiffrer et à déchiffrer des chaînes en PHP en utilisant une clé spécifiée. P>
Merci! P>
4 Réponses :
Commencez avec ceci: http://www.ibm. com / développeurworks / opensource / bibliothèque / os-php-crypt / p>
Après cela, jetez un coup d'œil à la réponse de Pascal Martin dans Comment puis-je chiffrer une chaîne en php? P>
Une implémentation de base OpenSSL J'ai déjà utilisé:
class MyEncryption { public $pubkey = '...public key here...'; public $privkey = '...private key here...'; public function encrypt($data) { if (openssl_public_encrypt($data, $encrypted, $this->pubkey)) $data = base64_encode($encrypted); else throw new Exception('Unable to encrypt data. Perhaps it is bigger than the key size?'); return $data; } public function decrypt($data) { if (openssl_private_decrypt(base64_decode($data), $decrypted, $this->privkey)) $data = $decrypted; else $data = ''; return $data; } }
Je suppose que vous vouliez dire cryptage clé symétrique. McRypt soutient plusieurs algorithmes (comme AES, Tripel des). Il y a une capture cependant, il ne supporte aucun algorithme de rembourrage afin que vous ne puissiez pas récupérer la longueur d'origine. Vous avez 2 options pour contourner ce problème, P>
Ajoutez un champ de longueur devant votre texte clair. Dites utiliser les 4 premiers octets comme longueur. P> li>
PKCS # 5 Rembourrage vous-même. Il existe des exemples de code sur cette page: http: //www.php. net / manuel / fr / fonction.mcrypt-encrypt.php p> li> ol>
Avez-vous un style de cryptage spécifique à l'esprit?
Cette question est trop générale. Recherchez StackOverflow ou Google pour obtenir un pied sur le sujet PHP / cryptage.