decrypt
Расшифровывает строку, зашифрованную функцией Encrypt.
decrypt(string, key [, algorithm [, encoding] [, iv | salt [, iterations]]]) → returns string
Справочник аргументов
string string Обязательный
Строка для расшифровки.
key string Обязательный
Ключ или начальное значение, использованное для шифрования строки.* Для алгоритма
CFMX_COMPAT — комбинация любого количества символов; используется как начальное значение для создания 32-битного ключа шифрования.* Для всех остальных алгоритмов — ключ в формате, используемом соответствующим алгоритмом. Для этих алгоритмов воспользуйтесь функцией GenerateSecretKey для создания ключа. algorithm string
По умолчанию: CFMX_COMPAT
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_COMPATAESBLOWFISHDESDESEDEDESXRC2RC4RC5PBEAES/GCM/NoPadding
encoding string
По умолчанию: UU
UU
Двоичная кодировка, используемая для представления данных в виде строки. Она должна совпадать с кодировкой, использованной для шифрования строки.* Base64: алгоритм Base64, определённый в RFC 2045 IETF.* Hex: шестнадцатеричные значения байтов представляются символами A–F и 0–9.* UU: стандартный алгоритм UNIX UUEncode (по умолчанию). ПРИМЕЧАНИЕ: если указать этот параметр, необходимо также указать параметр
algorithm. Значения:
UUBase64Hex
iv binary
ЭТОТ ПАРАМЕТР НЕ МОЖЕТ ИСПОЛЬЗОВАТЬСЯ ОДНОВРЕМЕННО С
SALT. Укажите этот параметр, чтобы настроить шифрование ColdFusion в соответствии с параметрами другого программного обеспечения для шифрования.* Для блочных алгоритмов шифрования: двоичное значение вектора инициализации, используемое алгоритмом. Алгоритм должен использовать режим обратной связи, отличный от ECB. Значение должно быть двоичным и точно соответствовать размеру блока алгоритма. ПРИМЕЧАНИЕ: если указать этот параметр, необходимо также указать параметр algorithm. salt binary
ЭТОТ ПАРАМЕТР НЕ МОЖЕТ ИСПОЛЬЗОВАТЬСЯ ОДНОВРЕМЕННО С
IV. Укажите этот параметр, чтобы настроить шифрование ColdFusion в соответствии с параметрами другого программного обеспечения для шифрования.* Для алгоритмов шифрования на основе пароля: двоичное значение соли, используемое для преобразования пароля в ключ. ПРИМЕЧАНИЕ: если указать этот параметр, необходимо также указать параметр algorithm. iterations numeric
По умолчанию: 0
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