Mcrypt ciphers

다음은 현재 mcrypt 확장에서 지원하는 암호 목록입니다. 지원되는 암호의 전체 목록은 mcrypt.h 끝에 있는 정의를 참조하십시오. mcrypt-2.2.x API의 일반적인 규칙은 MCRYPT_ciphername을 사용하여 PHP에서 암호에 액세스할 수 있다는 것입니다. libmcrypt-2.4.x 및 libmcrypt-2.5.x API를 사용하면 이러한 상수도 작동하지만 mcrypt_module_open()을 호출하여 암호 이름을 문자열로 지정할 수 있습니다..

  • MCRYPT_3DES
  • MCRYPT_ARCFOUR_IV (libmcrypt > 2.4.x only)
  • MCRYPT_ARCFOUR (libmcrypt > 2.4.x only)
  • MCRYPT_BLOWFISH
  • MCRYPT_CAST_128
  • MCRYPT_CAST_256
  • MCRYPT_CRYPT
  • MCRYPT_DES
  • MCRYPT_DES_COMPAT (libmcrypt 2.2.x only)
  • MCRYPT_ENIGMA (libmcrypt > 2.4.x only, alias for MCRYPT_CRYPT)
  • MCRYPT_GOST
  • MCRYPT_IDEA (non-free)
  • MCRYPT_LOKI97 (libmcrypt > 2.4.x only)
  • MCRYPT_MARS (libmcrypt > 2.4.x only, non-free)
  • MCRYPT_PANAMA (libmcrypt > 2.4.x only)
  • MCRYPT_RIJNDAEL_128 (libmcrypt > 2.4.x only)
  • MCRYPT_RIJNDAEL_192 (libmcrypt > 2.4.x only)
  • MCRYPT_RIJNDAEL_256 (libmcrypt > 2.4.x only)
  • MCRYPT_RC2
  • MCRYPT_RC4 (libmcrypt 2.2.x only)
  • MCRYPT_RC6 (libmcrypt > 2.4.x only)
  • MCRYPT_RC6_128 (libmcrypt 2.2.x only)
  • MCRYPT_RC6_192 (libmcrypt 2.2.x only)
  • MCRYPT_RC6_256 (libmcrypt 2.2.x only)
  • MCRYPT_SAFER64
  • MCRYPT_SAFER128
  • MCRYPT_SAFERPLUS (libmcrypt > 2.4.x only)
  • MCRYPT_SERPENT(libmcrypt > 2.4.x only)
  • MCRYPT_SERPENT_128 (libmcrypt 2.2.x only)
  • MCRYPT_SERPENT_192 (libmcrypt 2.2.x only)
  • MCRYPT_SERPENT_256 (libmcrypt 2.2.x only)
  • MCRYPT_SKIPJACK (libmcrypt > 2.4.x only)
  • MCRYPT_TEAN (libmcrypt 2.2.x only)
  • MCRYPT_THREEWAY
  • MCRYPT_TRIPLEDES (libmcrypt > 2.4.x only)
  • MCRYPT_TWOFISH (for older mcrypt 2.x versions, or mcrypt > 2.4.x )
  • MCRYPT_TWOFISH128 (TWOFISHxxx are available in newer 2.x versions, but not in the 2.4.x versions)
  • MCRYPT_TWOFISH192
  • MCRYPT_TWOFISH256
  • MCRYPT_WAKE (libmcrypt > 2.4.x only)
  • MCRYPT_XTEA (libmcrypt > 2.4.x only)

(CFBOFB 모드에서) 초기화 벡터(IV)를 각 암호 기능에 제공해야 하거나(CBC 모드에서) 제공할 수 있습니다. IV는 고유해야 하며 복호화/암호화 시 동일해야 합니다. 암호화되어 저장된 데이터를 사용하여 데이터가 저장된 인덱스의 기능(예: 파일 이름의 MD5 키)을 출력할 수 있습니다. 또는 암호화된 데이터와 함께 IV를 전송할 수 있습니다(이 주제에 대한 논의는 Schneier의 Applied Cryptography(ISBN 0-471-11709-9) 장 9.3 참조).