Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com

Home

 
4D v20 R7
Encrypt data BLOB

Encrypt data BLOB 


 

Encrypt data BLOB ( blobToEncrypt ; keyObject | passPhrase ; salt ; encryptedBLOB ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
blobToEncrypt  BLOB in BLOB zum Verschlüsseln
keyObject | passPhrase  Objekt, Text in JSON-Objekt, das den Encryption-Key oder die Passphrase für die direkte Encryption-Key-Erzeugung enthält (Text)
salt  Lange Ganzzahl in Zusätzliches Salt für Algorithmus
encryptedBLOB  BLOB in Verschlüsselter BLOB
Funktionsergebnis  Boolean in True, wenn die Verschlüsselung korrekt durchgeführt wurde, sonst False

Der Befehl Encrypt data BLOB verschlüsselt den blobToEncrypt Parameter mit demselben Algorithmus, den 4D zum Verschlüsseln von Daten verwendet (AES-256) und gibt das Ergebnis in encryptedBlob.

Sie können entweder ein keyObject oder eine passPhrase verwenden, um den BLOB zu verschlüsseln: 

  • keyObject: ein JSON-Objekt, das den Verschlüsselungsschlüssel enthält, mit der gleichen Struktur wie das Objekt, das von dem Befehl New data key zurückgegeben wird
  • passPhrase: eine Zeichenkette, die zum Erzeugen des Verschlüsselungsschlüssels verwendet wird

Übergeben Sie in salt eine Zahl, die verwendet wird, um die Verschlüsselung robuster zu machen. 

Wenn die Verschlüsselung erfolgreich ist, werden die verschlüsselten Daten im Parameter encryptedBlob zurückgegeben und der Befehl gibt True zurück. 

Im Fehlerfall wird das BLOB leer zurückgegeben und der Befehl gibt False zurück.

Hinweis: Wenn Sie einen Blob mit Encrypt data BLOB verschlüsseln, wird der resultierende encryptedBlob aufgrund des Verschlüsselungsalgorithmus ein Vielfaches von 16 Byte sein. Wenn blobToEncrypt kein Vielfaches von 16 Byte ist, wird es daher vom Befehl automatisch in ein Vielfaches von 16 Byte umgewandelt, indem am Ende Null-Bytes hinzugefügt werden. Um Fehler beim Entschlüsseln des Blobs mit Decrypt data BLOB zu vermeiden, müssen Sie die Größe von blobToEncrypt verändern, wenn Sie mit anderen Dateien als Textdateien arbeiten. Ein detailliertes Beispiel für diese Vorgehensweise finden Sie unter dieser Blog-Artikel

Encrypt a text file located in the RESOURCES folder of the database:

 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)



Siehe auch 

Decrypt data BLOB
ENCRYPT BLOB
Encrypt data file
Encrypt your own data with the 4D algorithm (blog post)
New data key

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Datensicherheit
Nummer: 1773

Dieser Befehl kann in preemptive Prozessen laufen

 
SEITENINHALT 
 
GESCHICHTE 

Erstellt: 4D v19

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v20 R7)