Methods for the xml.Encryption class.
Table 1. Class methods: Creation
Name |
Description |
xml.Encryption.Create()
RETURNING enc xml.Encryption
|
Constructor of an Encryption object. |
Table 2. Class methods: String encryption and decryption
Name |
Description |
xml.Encryption.EncryptString(
key xml.CryptoKey,
str STRING )
RETURNING rstr STRING
|
Encrypts the string str using
the symmetric key key, and returns the encrypted
string encoded in BASE64. |
xml.Encryption.DecryptString(
key xml.CryptoKey ,
str STRING )
RETURNING rstr STRING
|
Decrypts the encrypted string str encoded
in BASE64, using the symmetric key key, and returns
the string in clear text. |
xml.Encryption.RSAEncrypt(
key STRING,
str STRING )
RETURNING rstr STRING
|
Encrypts the string str using
the RSA key key and returns it encoded in BASE64. |
xml.Encryption.RSADecrypt(
key STRING,
enc STRING )
RETURNING rstr STRING
|
Decrypts the BASE64 encrypted string enc using
the RSA key key and returns it in clear text |
The methods listed in Table 2 do not
belong to the XML encryption specification, but are helper functions to allow 4GL application to
encrypt and decrypt short passwords with RSA keys, or big strings by using symmetric keys. Notice
that a common way to encrypt data is to use symmetric keys, and to use RSA keys to encrypt the
symmetric key value.
Table 3. Object methods: Key and certificate setting
Name |
Description |
setKey(
key xml.CryptoKey )
|
Assigns a copy of the symmetric key
to this Encryption object. |
getEmbeddedKey()
RETURNING key xml.CryptoKey
|
Get a copy of the embedded symmetric
key that was used in the last decryption operation. |
setKeyEncryptionKey(
key xml.CryptoKey )
|
Assigns a copy of the key-encryption key
to this Encryption object. |
setCertificate(
cert xml.CryptoX509 )
|
Assigns a copy of the X509 certificate
to this Encryption object. |
Table 4. Object methods: XML elements encryption and decryption
Name |
Description |
encryptElement(
node xml.DomNode )
|
Encrypts the ELEMENT DomNode node and
all its children using the symmetric key. |
decryptElement(
enc xml.DomNode )
|
Decrypts the EncryptedData DomNode enc using
the symmetric key. |
encryptElementContent(
node xml.DomNode )
|
Encrypts all child nodes of the ELEMENT
DomNode node using the symmetric key. |
decryptElementContent(
enc xml.DomNode )
|
Decrypts the EncryptedData DomNode enc using
the symmetric key. |
Table 5. Object methods: Detached XML elements encryption and decryption
Name |
Description |
encryptElementDetached(
node xml.DomNode )
RETURNING rnode xml.DomNode
|
Encrypts the ELEMENT DomNode node and
all its children using the symmetric key, and returns them as one
new EncryptedData node. |
decryptElementDetached(
enc xml.DomNode )
RETURNING node xml.DomNode
|
Decrypts the EncryptedData DomNode enc using the
symmetric key, and returns it in a new ELEMENT node |
encryptElementContentDetached(
node xml.DomNode )
RETURNING rnode xml.DomNode
|
Encrypts all child nodes of the ELEMENT
DomNode node using the symmetric key, and returns
them as one new EncryptedData node. |
decryptElementContentDetached(
enc xml.DomNode )
RETURNING node xml.DomNode
|
Decrypts the EncryptedData DomNode enc using
the symmetric key, and returns all its children in one new DOCUMENT_FRAGMENT_NODE
node. |
Table 6. Object methods: Key encryption and decryption
Name |
Description |
encryptKey(
key xml.CryptoKey )
RETURNING doc xml.DomDocument
|
Encrypts the given symmetric or HMAC
key as an EncryptedKey node and returns it as root node of a new XML
document . |
decryptKey(
xml xml.DomDocument,
url STRING )
RETURNING key xml.CryptoKey
|
Decrypts the EncryptedKey as root in the given XML document,
and returns a new CryptoKey of the given kind. |