Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Encrypt data BLOB
|
Encrypt data BLOB ( blobAEncriptar ; objetoLlave | frasePasar ; sal ; blobEncriptado ) -> Resultado | ||||||||
Parámetro | Tipo | Descripción | ||||||
blobAEncriptar | BLOB |
![]() |
BLOB a encriptar | |||||
objetoLlave | frasePasar | Objeto, Texto |
![]() |
Objeto JSON que contiene la llave de cifrado o la frase de paso para la generación directa de la llave de cifrado (texto) | |||||
sal | Entero largo |
![]() |
Sal adicional para el algoritmo | |||||
blobEncriptado | BLOB |
![]() |
BLOB Encriptado | |||||
Resultado | Booleano |
![]() |
True si la encriptación se ha realizado correctamente, False en caso contrario | |||||
El comando Encrypt data BLOB encripta el parámetro blobAEncriptar con el mismo algoritmo que 4D utiliza para encriptar datos (AES-256) y devuelve el resultado en blobEncriptado.
Puede utilizar un objetoLlave o una frasePasar para encriptar el BLOB:
Pase en sal un número que se utilizará para hacer el cifrado más robusto.
Si el cifrado tiene éxito, los datos cifrados se devuelven en el parámetro blobEncriptado y el comando devuelve True.
En caso de error, el BLOB se devuelve vacío y el comando devuelve False.
Nota: cuando se encripta un blob utilizando Encrypt data BLOB, el blobEncriptado resultante es un múltiplo de 16 bytes debido al algoritmo de encriptación. En consecuencia, si blobAEncriptar no es un múltiplo de 16 bytes, el comando lo convierte automáticamente en un múltiplo de 16 bytes añadiendo bytes nulos al final. Para evitar errores al descifrar el blob con Decrypt data BLOB, es necesario manejar el tamaño del blobAEncriptar
cuando se trabaja con archivos que no son de texto. Para un ejemplo detallado de cómo hacerlo, ver este artículo del blog.
Encriptar un archivo de texto ubicado en la carpeta RESOURCES de la base de datos:
var $fileToEncrypt;$encryptedFile : 4D.File
var $blobToEncrypt;$encryptedBlob : Blob
var $result : Boolean
$fileToEncrypt:=File("/RESOURCES/confidential.txt")
$encryptedFile:=File("/RESOURCES/encryptedConfidential.txt")
$blobToencrypt:=$fileToEncrypt.getContent()
$result:=Encrypt data BLOB($blobToEncrypt;"myPassPhrase";MAXLONG;$encryptedBlob)
$encryptedFile.setContent($encryptedBlob)
Decrypt data BLOB
ENCRYPT BLOB
Encrypt data file
Encrypt your own data with the 4D algorithm (blog post)
New data key
Producto: 4D
Tema: Seguridad de los datos
Número
1773
Creado por: 4D v19
Manual de lenguaje 4D ( 4D v20 R7)