Spec-Zone.ru › ColdFusion

decrypt

Расшифровывает строку, зашифрованную функцией Encrypt.

decrypt(string, key [, algorithm [, encoding] [, iv | salt [, iterations]]]) → returns string

  • CF4+
  • Lucee
  • BL 1.0.0+
  • См. также: encrypt cfusion_Decrypt

    Справочник аргументов

    string string
    Обязательный

    Строка для расшифровки.

    key string
    Обязательный

    Ключ или начальное значение, использованное для шифрования строки.* Для алгоритма CFMX_COMPAT — комбинация любого количества символов; используется как начальное значение для создания 32-битного ключа шифрования.* Для всех остальных алгоритмов — ключ в формате, используемом соответствующим алгоритмом. Для этих алгоритмов воспользуйтесь функцией GenerateSecretKey для создания ключа.

    algorithm string
    По умолчанию: CFMX_COMPAT

    Алгоритм, используемый для расшифровки строки. Он должен совпадать с алгоритмом, использованным для шифрования строки. Дополнительные алгоритмы см. в описании функции encrypt. В ColdFusion Standard Edition устанавливаются следующие алгоритмы:* CFMX_COMPAT: алгоритм, использовавшийся в ColdFusion MX и более ранних версиях. Это наименее безопасный вариант (по умолчанию).* AES: стандарт шифрования Advanced Encryption Standard, установленный Национальным институтом стандартов и технологий (NIST) в документе FIPS-197.* BLOWFISH: алгоритм Blowfish, разработанный Брюсом Шнайером.* DES: алгоритм Data Encryption Standard, определённый NIST в документе FIPS-46-3.* DESEDE: алгоритм «Triple DES», определённый NIST в документе FIPS-46-3. ПРИМЕЧАНИЕ: в ColdFusion Enterprise Edition устанавливается библиотека RSA BSafe Crypto-J, обеспечивающая надёжное шифрование, соответствующее стандарту FIPS-140. Она также включает:* DESX: расширенный симметричный алгоритм шифрования Data Encryption Standard.* RC2: симметричный блочный алгоритм шифрования RC2, определённый в RFC 2268.* RC4: симметричный алгоритм шифрования RC4.* RC5: алгоритм шифрования RC5.* PBE: алгоритм шифрования на основе пароля, определённый в PKCS #5.* AES/GCM/NoPadding: алгоритм шифрования. ПРИМЕЧАНИЕ: если установить дополнительные алгоритмы криптографии, можно также указать любой из доступных алгоритмов шифрования и расшифровки.
    Значения:
    • CFMX_COMPAT
    • AES
    • BLOWFISH
    • DES
    • DESEDE
    • DESX
    • RC2
    • RC4
    • RC5
    • PBE
    • AES/GCM/NoPadding

    encoding string
    По умолчанию: UU

    Двоичная кодировка, используемая для представления данных в виде строки. Она должна совпадать с кодировкой, использованной для шифрования строки.* Base64: алгоритм Base64, определённый в RFC 2045 IETF.* Hex: шестнадцатеричные значения байтов представляются символами A–F и 0–9.* UU: стандартный алгоритм UNIX UUEncode (по умолчанию). ПРИМЕЧАНИЕ: если указать этот параметр, необходимо также указать параметр algorithm.
    Значения:
    • UU
    • Base64
    • Hex

    iv binary

    ЭТОТ ПАРАМЕТР НЕ МОЖЕТ ИСПОЛЬЗОВАТЬСЯ ОДНОВРЕМЕННО С SALT. Укажите этот параметр, чтобы настроить шифрование ColdFusion в соответствии с параметрами другого программного обеспечения для шифрования.* Для блочных алгоритмов шифрования: двоичное значение вектора инициализации, используемое алгоритмом. Алгоритм должен использовать режим обратной связи, отличный от ECB. Значение должно быть двоичным и точно соответствовать размеру блока алгоритма. ПРИМЕЧАНИЕ: если указать этот параметр, необходимо также указать параметр algorithm.

    salt binary

    ЭТОТ ПАРАМЕТР НЕ МОЖЕТ ИСПОЛЬЗОВАТЬСЯ ОДНОВРЕМЕННО С IV. Укажите этот параметр, чтобы настроить шифрование ColdFusion в соответствии с параметрами другого программного обеспечения для шифрования.* Для алгоритмов шифрования на основе пароля: двоичное значение соли, используемое для преобразования пароля в ключ. ПРИМЕЧАНИЕ: если указать этот параметр, необходимо также указать параметр algorithm.

    iterations numeric
    По умолчанию: 0

    Количество итераций для преобразования пароля в двоичный ключ. Укажите этот параметр, чтобы настроить шифрование ColdFusion в соответствии с параметрами другого программного обеспечения для шифрования. ПРИМЕЧАНИЕ: если указать этот параметр, необходимо также указать параметр algorithm с алгоритмом шифрования на основе пароля (PBE). ПРИМЕЧАНИЕ: этот параметр используется вместе с параметром salt. Не указывайте его для блочных алгоритмов шифрования. ПРИМЕЧАНИЕ: для шифрования и расшифровки данных необходимо использовать одно и то же значение.

    Совместимость

    ColdFusion:

    Версия 4+ В CF2018+ используются отдельные именованные параметры iv или salt.

    Lucee:

    Используется параметр IVorSalt или его псевдонимы iv и salt.

    Примеры
    Пример кода с вызовом функции decrypt

    Шифрование и расшифровка секрета

    Создайте 128-битный ключ AES, а затем используйте его для шифрования и расшифровки секрета.

    ex={};
    ex.key = generateSecretKey("AES");
    ex.secret = "top secret";
    ex.encrypted=encrypt(ex.secret, ex.key, "AES", "Base64");
    ex.decrypted=decrypt(ex.encrypted, ex.key, "AES", "Base64");
    writeDump(ex);

    © 2012–present Foundeo, Inc. and the CFDocs contributors.
    Licensed under the MIT License.
    ColdFusion is a trademark of Adobe Systems Incorporated.
    https://cfdocs.org/decrypt

    Spec-Zone.ru

    Настройки Оффлайн Что нового Помощь О нас
    Spec-Zone .ru
    спецификации, руководства, описания, API