7.53 Chiffrage mcrypt
7 Index des fonctions
Manuel PHP
. Introduction . Pré-requis . Installation . Configuration à l'exécution . Types de ressources . Constantes prédefinies ->Mcrypt ciphers . Exemples . mcrypt_cbc . mcrypt_cfb . mcrypt_create_iv . mcrypt_decrypt . mcrypt_ecb . mcrypt_enc_get_algorithms_name . mcrypt_enc_get_block_size . mcrypt_enc_get_iv_size . mcrypt_enc_get_key_size . mcrypt_enc_get_modes_name . mcrypt_enc_get_supported_key_sizes . mcrypt_enc_is_block_algorithm_mode . mcrypt_enc_is_block_algorithm . mcrypt_enc_is_block_mode . mcrypt_enc_self_test . mcrypt_encrypt . mcrypt_generic_deinit . mcrypt_generic_end . mcrypt_generic_init . mcrypt_generic . mcrypt_get_block_size . mcrypt_get_cipher_name . mcrypt_get_iv_size . mcrypt_get_key_size . mcrypt_list_algorithms . mcrypt_list_modes . mcrypt_module_close . mcrypt_module_get_algo_block_size . mcrypt_module_get_algo_key_size . mcrypt_module_get_supported_key_sizes . mcrypt_module_is_block_algorithm_mode . mcrypt_module_is_block_algorithm . mcrypt_module_is_block_mode . mcrypt_module_open . mcrypt_module_self_test . mcrypt_ofb . mdecrypt_generic
|
7.53.7 Mcrypt ciphers
Voici une liste non exhaustive des modes de chiffrement de l'extension
mcrypt. Pour disposer d'une liste complète des chiffrements supportés,
voyez les définitions dans le fichier
mcrypt.h
. La règle
générale est avec l'API mcrypt-2.2.x API est que vous pouvez accéder au
mode de chiffrement depuis PHP avec la constante MCRYPT_ciphername. Avec
la librairie libmcrypt-2.4.x et libmcrypt-2.5.x, ces constantes fonctionnent
toujours, mais il est possible de spécifier le nom du chiffrement dans une chaîne,
lors de l'appel à
mcrypt_module_open
.
-
MCRYPT_3DES
-
MCRYPT_ARCFOUR_IV
(libmcrypt > 2.4.x seulement)
-
MCRYPT_ARCFOUR
(libmcrypt > 2.4.x seulement)
-
MCRYPT_BLOWFISH
-
MCRYPT_CAST_128
-
MCRYPT_CAST_256
-
MCRYPT_CRYPT
-
MCRYPT_DES
-
MCRYPT_DES_COMPAT
(libmcrypt 2.2.x seulement)
-
MCRYPT_ENIGMA
(libmcrypt > 2.4.x seulement, alias de
MCRYPT_CRYPT
)
-
MCRYPT_GOST
-
MCRYPT_IDEA
(non-free)
-
MCRYPT_LOKI97
(libmcrypt > 2.4.x seulement)
-
MCRYPT_MARS
(libmcrypt > 2.4.x seulement, non-libre)
-
MCRYPT_PANAMA
(libmcrypt > 2.4.x seulement)
-
MCRYPT_RIJNDAEL_128
(libmcrypt > 2.4.x seulement)
-
MCRYPT_RIJNDAEL_192
(libmcrypt > 2.4.x seulement)
-
MCRYPT_RIJNDAEL_256
(libmcrypt > 2.4.x seulement)
-
MCRYPT_RC2
-
MCRYPT_RC4
(libmcrypt 2.2.x seulement)
-
MCRYPT_RC6
(libmcrypt > 2.4.x seulement)
-
MCRYPT_RC6_128
(libmcrypt 2.2.x seulement)
-
MCRYPT_RC6_192
(libmcrypt 2.2.x seulement)
-
MCRYPT_RC6_256
(libmcrypt 2.2.x seulement)
-
MCRYPT_SAFER64
-
MCRYPT_SAFER128
-
MCRYPT_SAFERPLUS
(libmcrypt > 2.4.x seulement)
-
MCRYPT_SERPENT
(libmcrypt > 2.4.x seulement)
-
MCRYPT_SERPENT_128
(libmcrypt 2.2.x seulement)
-
MCRYPT_SERPENT_192
(libmcrypt 2.2.x seulement)
-
MCRYPT_SERPENT_256
(libmcrypt 2.2.x seulement)
-
MCRYPT_SKIPJACK
(libmcrypt > 2.4.x seulement)
-
MCRYPT_TEAN
(libmcrypt 2.2.x seulement)
-
MCRYPT_THREEWAY
-
MCRYPT_TRIPLEDES
(libmcrypt > 2.4.x seulement)
-
MCRYPT_TWOFISH
(pour les vieilles versions mcrypt 2.x, ou mcrypt > 2.4.x )
-
MCRYPT_TWOFISH128
(les
TWOFISH
xxx sont disponibles dans les nouvelles versions 2.x, mais pas dans les versions 2.4.x)
-
MCRYPT_TWOFISH192
-
MCRYPT_TWOFISH256
-
MCRYPT_WAKE
(libmcrypt > 2.4.x seulement)
-
MCRYPT_XTEA
(libmcrypt > 2.4.x seulement)
Vous devez (mode
OFB
et
OFB
) ou pouvez (mode
CBC
) fournir un vecteur
d'initialisation (IV) pour ces modes de chiffrement. IV doit être
unique, et avoir la même valeur au chiffrement et au déchiffrement.
Pour des données qui seront enregistrées après chiffrement,
vous pouvez prendre le résultat d'une fonction telle que MD5,
appliquée sur le nom du fichier. Sinon, vous pouvez envoyer IV avec
les données chiffrées, (reportez-vous au chapitre 9.3 de
Applied Cryptography by Schneier (ISBN 0-471-11709-9) by Schneier (ISBN 0-471-11709-9) pour plus de
détails sur le sujet).
|