|
|
|
|
DecryptStandard (Función) Descifra un mensaje que fue encriptado con un algoritmo de encriptación estándar.. A diferencia de las funciones Cifrar y Descifrar, las funciones EncryptStandard y DecryptStandard utilizan algoritmos de cifrado estándar que permiten intercambiar mensajes cifrados entre diferentes plataformas de ejecución (Windows, Linux, Android, Java, iOS, PHP, etc.) y/o con herramientas externas. // Encrypt a character string by using the AES algorithm sMessage is Buffer = "Message to encrypt" sPassword is ANSI string = "password" bufKey is Buffer = HashString(HA_MD5_128, sPassword) bufEncrypt is Buffer = EncryptStandard(sMessage, bufKey, cryptAES128) // Decryption bufResult is Buffer = DecryptStandard(bufEncrypt, bufKey, cryptAES128) Info(bufResult)
Sintaxis
<Result> = DecryptStandard(<Encrypted message> , <Key> [, <Algorithm> [, <Operation mode> [, <Padding>]]])
<Result>: Búfer binario - Resultado del descifrado del mensaje especificado,
- Cadena vacía ("") si se produce un error. Para obtener más información sobre el error, utilice la función ErrorInfo.
<Encrypted message>: Búfer binario Mensaje para descifrar. Este mensaje puede ser el resultado del cifrado obtenido durante la llamada a EncryptStandard.Esta memoria intermedia debe incluir dos secciones: - El vector de inicialización (o IV) utilizado para cifrar los datos.
- Los datos encriptados.
Si el mensaje estaba encriptado: - por EncryptStandard, este parámetro debe corresponder al valor devuelto por la función.
- por una herramienta externa, el búfer debe construirse concatenando los datos cifrados con el vector de inicialización utilizado.
Observación: si el modo de operación especificado es cryptECB , no se usó ningún vector de inicialización para cifrar el mensaje y, en este caso, el parámetro debe corresponder directamente a los datos cifrados. <Key>: Buffer Clave con la que se cifraron los datos. Esta clave debe ser idéntica a la suministrada al encriptar el mensaje. <Algorithm>: Constante opcional de tipo Integer Algoritmo de encriptación utilizado. Este parámetro debe corresponder al algoritmo utilizado para encriptar el mensaje.. | | crypt3DES | Estándar de cifrado de datos triple. - Tamaño de la llave: 192 bits.
- Tamaño de los bloques: 64 bits.
- Tamaño del vector de inicialización (IV): 64 bits.
| cryptAES128 (Valor predeterminado) | Estándar de Cifrado Avanzado AES. - Tamaño de la llave: 128 bits.
- Tamaño de los bloques: 128 bits.
- Tamaño del vector de inicialización (IV): 128 bits.
| cryptAES256 | Estándar de Cifrado Avanzado AES. - Tamaño de la llave: 256 bits.
- Tamaño de los bloques: 128 bits.
- Tamaño del vector de inicialización (IV): 128 bits.
| cryptDES | Estándar de cifrado de datos. - Tamaño de la llave: 64 bits.
- Tamaño de los bloques: 64 bits.
- Tamaño del vector de inicialización (IV): 64 bits.
Atención: este algoritmo está actualmente obsoleto. |
<Operation mode>: Constante opcional de tipo Integer Modo Process de bloques por el algoritmo de encriptación utilizado. Este parámetro debe corresponder al modo de operación utilizado para encriptar el mensaje. | | cryptCBC (Valor predeterminado) | Encadenamiento de bloques de cifrado - Secuencia de bloques. | cryptCFB | Cipher Feedback - Cifrado de retroalimentación. Este modo de proceso está disponible si el algoritmo utilizado corresponde a la constante cryptAES256. | cryptCTR | Contador de cifrado - Cifrado basado en un contador. Este modo de proceso está disponible si el algoritmo utilizado corresponde a la constante cryptAES256. | cryptECB | Libro de códigos electrónicos - Diccionario de códigos. Este modo de funcionamiento no es recomendable y sólo debe utilizarse por razones de compatibilidad. |
<Padding>: Constante opcional de tipo Integer Modo de relleno de los datos cifrados para que sean compatibles con el tamaño requerido por los algoritmos de cifrado por bloques. Este parámetro debe corresponder al modo de relleno utilizado para encriptar el mensaje. | | cryptPaddingPKCS (Valor predeterminado) | Los datos se rellenan con bytes cuyo valor corresponde al número total de bytes añadidos para alcanzar el tamaño solicitado. | cryptPaddingZero | Los datos se rellenan con ceros binarios hasta que se alcanza el tamaño solicitado. |
Clasificación Lógica de negocio / UI: Lógica de negocio
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|