EncryptionKey
The EncryptionKey class is designed for encrypting and decrypting data between the mobile client and a Cloud node.
The encryption algorithm used in this class is ChaChaBox.
Accessors
privateKeyHandle
Get Signature
get privateKeyHandle():
number
Gets the decryption key memory pointer handle.
Returns
number
The handle for the decryption key.
publicKeyB64
Get Signature
get publicKeyB64():
string
Gets the encryption public key in base64 format.
Returns
string
The base64 encoded an encryption public key.
publicKeyHex
Get Signature
get publicKeyHex():
string
Gets the encryption public key in hex format.
Returns
string
The hex encoded an encryption public key.
Methods
decryptData()
decryptData(
data,senderEncKey):Promise<string>
Decrypts the data using the sender's encryption public key.
Parameters
data
string
Encrypted data to decrypt.
senderEncKey
string
The sender's hex encoded encryption public key.
Returns
Promise<string>
A promise that resolves to the decrypted data in base64 format.
Throws
If the native module fails to decrypt the data.
encryptData()
encryptData(
data,receiverEncKey):Promise<string>
Hideconstructor
Encrypts the data using the receiver's encryption public key.
Parameters
data
string
The data to encrypt.
receiverEncKey
string
The receiver's hex encoded encryption public key.
Returns
Promise<string>
A promise that resolves to the encrypted data in base64 format.
Throws
If the native module fails to encrypt the data.
free()
free():
Promise<boolean>
Frees up the memory used by the decryption key.
Returns
Promise<boolean>
A promise that resolves to true if the memory is freed successfully.
create()
staticcreate():Promise<EncryptionKey>
Creates a new encryption key for the mobile client.
Returns
Promise<EncryptionKey>
A promise that resolves to a new EncryptionKey instance.
Throws
If the native module fails to create a new encryption key.