Functions

buildRsaPublicKey
I

Builds the RSA public key from the given modulus and exponent parameters.

crc32b
I

Returns the Hex-encoded CRC32B value for the given data.

decodeRsaPrivateKeyFromKeyFile
I

Decodes the RSA private key from the given private key and private key password.

decodeRsaPrivateKeyFromKeyStore
I

Decodes the RSA private key from the given PKCS#12 archive file.

decodeRsaPublicKeyFromCertFile
I

Decodes the RSA public key from the given public certificate file.

decodeRsaPublicKeyFromTrustStore
I

Decodes the RSA public key from the given PKCS#12 archive file.

decryptAesCbc
I

Returns the AES-CBC-decrypted value for the given AES-CBC-encrypted data.

decryptAesEcb
I

Returns the AES-ECB-decrypted value for the given AES-ECB-encrypted data.

decryptAesGcm
I

Returns the AES-GCM-decrypted value for the given AES-GCM-encrypted data.

decryptRsaEcb
I

Returns the RSA-decrypted value for the given RSA-encrypted data.

encryptAesCbc
I

Returns the AES-CBC-encrypted value for the given data.

encryptAesEcb
I

Returns the AES-ECB-encrypted value for the given data.

encryptAesGcm
I

Returns the AES-GCM-encrypted value for the given data.

encryptRsaEcb
I

Returns the RSA-encrypted value for the given data.

hashMd5
I

Returns the MD5 hash of the given data.

hashSha1
I

Returns the SHA-1 hash of the given data.

hashSha256
I

Returns the SHA-256 hash of the given data.

hashSha384
I

Returns the SHA-384 hash of the given data.

hashSha512
I

Returns the SHA-512 hash of the given data.

hmacMd5
I

Returns the HMAC using the MD5 hash function of the given data.

hmacSha1
I

Returns the HMAC using the SHA-1 hash function of the given data.

hmacSha256
I

Returns the HMAC using the SHA-256 hash function of the given data.

hmacSha384
I

Returns the HMAC using the SHA-384 hash function of the given data.

hmacSha512
I

Returns the HMAC using the SHA-512 hash function of the given data.

signRsaMd5
I

Returns the RSA-MD5 based signature value for the given data.

signRsaSha1
I

Returns the RSA-SHA1 based signature value for the given data.

signRsaSha256
I

Returns the RSA-SHA256 based signature value for the given data.

signRsaSha384
I

Returns the RSA-SHA384 based signature value for the given data.

signRsaSha512
I

Returns the RSA-SHA512 based signature value for the given data.

verifyRsaMd5Signature
I

Verifies the RSA-MD5 based signature.

verifyRsaSha1Signature
I

Verifies the RSA-SHA1 based signature.

verifyRsaSha256Signature
I

Verifies the RSA-SHA256 based signature.

verifyRsaSha384Signature
I

Verifies the RSA-SHA384 based signature.

verifyRsaSha512Signature
I

Verifies the RSA-SHA512 based signature.

buildRsaPublicKey

function buildRsaPublicKey(string modulus, string exponent) returns PublicKey | Error
Isolated Function

Builds the RSA public key from the given modulus and exponent parameters.

1string modulus = "luZFdW1ynitztkWLC6xKegbRWxky...";
2string exponent = "AQAB";
3crypto:PublicKey publicKey = check crypto:buildRsaPublicKey(modulus, exponent);

Parameters

  • modulus string
  • Modulus value ('n' parameter) for the RSA public key

  • exponent string
  • Exponent value ('e' paramenter) for the RSA public key

Return Type

(PublicKey | Error)

Reference to the public key or else a crypto:Error if the modulus or exponent is invalid

crc32b

function crc32b(byte[ ] input) returns string
Isolated Function

Returns the Hex-encoded CRC32B value for the given data.

1string stringData = "Hello Ballerina";
2byte[] data = stringData.toBytes();
3string checksum = crypto:crc32b(data);

Parameters

  • input byte[ ]
  • Value for checksum generation

Return Type

(string)

The generated checksum

decodeRsaPrivateKeyFromKeyFile

function decodeRsaPrivateKeyFromKeyFile(string keyFile, string? keyPassword) returns PrivateKey | Error
Isolated Function

Decodes the RSA private key from the given private key and private key password.

1string keyFile = "/path/to/private.key";
2crypto:PrivateKey privateKey = check crypto:decodeRsaPrivateKeyFromKeyFile(keyFile, "keyPassword");

Parameters

  • keyFile string
  • Path to the key file

  • keyPassword string? (default ())
  • Password of the key file if it is encrypted

Return Type

(PrivateKey | Error)

Reference to the private key or else a crypto:Error if the private key was unreadable

decodeRsaPrivateKeyFromKeyStore

function decodeRsaPrivateKeyFromKeyStore(KeyStore keyStore, string keyAlias, string keyPassword) returns PrivateKey | Error
Isolated Function

Decodes the RSA private key from the given PKCS#12 archive file.

1crypto:KeyStore keyStore = {
2 path: "/path/to/keystore.p12",
3 password: "keystorePassword"
4};
5crypto:PrivateKey privateKey = check crypto:decodeRsaPrivateKeyFromKeyStore(keyStore, "keyAlias", "keyPassword");

Parameters

  • keyStore KeyStore
  • KeyStore configurations

  • keyPassword string
  • Key password

Return Type

(PrivateKey | Error)

Reference to the private key or else a crypto:Error if the private key was unreadable

decodeRsaPublicKeyFromCertFile

function decodeRsaPublicKeyFromCertFile(string certFile) returns PublicKey | Error
Isolated Function

Decodes the RSA public key from the given public certificate file.

1string certFile = "/path/to/public.cert";
2crypto:PublicKey publicKey = check crypto:decodeRsaPublicKeyFromCertFile(certFile);

Parameters

  • certFile string
  • Path to the ceritificate file

Return Type

(PublicKey | Error)

Reference to the public key or else a crypto:Error if the public key was unreadable

decodeRsaPublicKeyFromTrustStore

function decodeRsaPublicKeyFromTrustStore(TrustStore trustStore, string keyAlias) returns PublicKey | Error
Isolated Function

Decodes the RSA public key from the given PKCS#12 archive file.

1crypto:TrustStore trustStore = {
2 path: "/path/tp/truststore.p12",
3 password: "truststorePassword"
4};
5crypto:PublicKey publicKey = check crypto:decodeRsaPublicKeyFromTrustStore(trustStore, "keyAlias");

Parameters

Return Type

(PublicKey | Error)

Reference to the public key or else a crypto:Error if the public key was unreadable

decryptAesCbc

function decryptAesCbc(byte[ ] input, byte[ ] key, byte[ ] iv, AesPadding padding) returns byte[ ] | Error
Isolated Function

Returns the AES-CBC-decrypted value for the given AES-CBC-encrypted data.

1string dataString = "Hello Ballerina!";
2byte[] data = dataString.toBytes();
3byte[16] key = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
4foreach int i in 0...15 {
5 key[i] = <byte>(check random:createIntInRange(0, 255);
6}
7byte[16] initialVector = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
8foreach int i in 0...15 {
9 initialVector[i] = <byte>(check random:createIntInRange(0, 255);
10}
11byte[] cipherText = check crypto:encryptAesCbc(data, key, initialVector);
12byte[] plainText = check crypto:decryptAesCbc(cipherText, key, initialVector);

Parameters

  • input byte[ ]
  • The content to be decrypted

  • key byte[ ]
  • Encryption key

  • iv byte[ ]
  • Initialization vector

  • padding AesPadding (default PKCS5)
  • The padding algorithm

Return Type

(byte[ ] | Error)

Decrypted data or else a crypto:Error if the key is invalid

decryptAesEcb

function decryptAesEcb(byte[ ] input, byte[ ] key, AesPadding padding) returns byte[ ] | Error
Isolated Function

Returns the AES-ECB-decrypted value for the given AES-ECB-encrypted data.

1string dataString = "Hello Ballerina!";
2byte[] data = dataString.toBytes();
3byte[16] key = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
4foreach int i in 0...15 {
5 key[i] = <byte>(check random:createIntInRange(0, 255);
6}
7byte[] cipherText = check crypto:encryptAesEcb(data, key);
8byte[] plainText = check crypto:decryptAesEcb(cipherText, key);

Parameters

  • input byte[ ]
  • The content to be decrypted

  • key byte[ ]
  • Encryption key

  • padding AesPadding (default PKCS5)
  • The padding algorithm

Return Type

(byte[ ] | Error)

Decrypted data or else a crypto:Error if the key is invalid

decryptAesGcm

function decryptAesGcm(byte[ ] input, byte[ ] key, byte[ ] iv, AesPadding padding, int tagSize) returns byte[ ] | Error
Isolated Function

Returns the AES-GCM-decrypted value for the given AES-GCM-encrypted data.

1string dataString = "Hello Ballerina!";
2byte[] data = dataString.toBytes();
3byte[16] key = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
4foreach int i in 0...15 {
5 key[i] = <byte>(check random:createIntInRange(0, 255);
6}
7byte[16] initialVector = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
8foreach int i in 0...15 {
9 initialVector[i] = <byte>(check random:createIntInRange(0, 255);
10}
11byte[] cipherText = check crypto:encryptAesGcm(data, key, initialVector);
12byte[] plainText = check crypto:decryptAesGcm(cipherText, key, initialVector);

Parameters

  • input byte[ ]
  • The content to be decrypted

  • key byte[ ]
  • Encryption key

  • iv byte[ ]
  • Initialization vector

  • padding AesPadding (default PKCS5)
  • The padding algorithm

  • tagSize int (default 128)
  • Tag size

Return Type

(byte[ ] | Error)

Decrypted data or else a crypto:Error if the key is invalid

decryptRsaEcb

function decryptRsaEcb(byte[ ] input, PrivateKey | PublicKey key, RsaPadding padding) returns byte[ ] | Error
Isolated Function

Returns the RSA-decrypted value for the given RSA-encrypted data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PublicKey publicKey = check crypto:decodePublicKey(keyStore, "keyAlias");
8crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
9byte[] cipherText = check crypto:encryptRsaEcb(data, publicKey);
10byte[] plainText = check crypto:decryptRsaEcb(cipherText, privateKey);

Parameters

  • input byte[ ]
  • The content to be decrypted

  • padding RsaPadding (default PKCS1)
  • The padding algorithm

Return Type

(byte[ ] | Error)

Decrypted data or else a crypto:Error if the key is invalid

encryptAesCbc

function encryptAesCbc(byte[ ] input, byte[ ] key, byte[ ] iv, AesPadding padding) returns byte[ ] | Error
Isolated Function

Returns the AES-CBC-encrypted value for the given data.

1string dataString = "Hello Ballerina!";
2byte[] data = dataString.toBytes();
3byte[16] key = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
4foreach int i in 0...15 {
5 key[i] = <byte>(check random:createIntInRange(0, 255);
6}
7byte[16] initialVector = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
8foreach int i in 0...15 {
9 initialVector[i] = <byte>(check random:createIntInRange(0, 255);
10}
11byte[] cipherText = check crypto:encryptAesCbc(data, key, initialVector);

Parameters

  • input byte[ ]
  • The content to be encrypted

  • key byte[ ]
  • Encryption key

  • iv byte[ ]
  • Initialization vector

  • padding AesPadding (default PKCS5)
  • The padding algorithm

Return Type

(byte[ ] | Error)

Encrypted data or else a crypto:Error if the key is invalid

encryptAesEcb

function encryptAesEcb(byte[ ] input, byte[ ] key, AesPadding padding) returns byte[ ] | Error
Isolated Function

Returns the AES-ECB-encrypted value for the given data.

1string dataString = "Hello Ballerina!";
2byte[] data = dataString.toBytes();
3byte[16] key = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
4foreach int i in 0...15 {
5 key[i] = <byte>(check random:createIntInRange(0, 255);
6}
7byte[] cipherText = check crypto:encryptAesEcb(data, key);

Parameters

  • input byte[ ]
  • The content to be encrypted

  • key byte[ ]
  • Encryption key

  • padding AesPadding (default PKCS5)
  • The padding algorithm

Return Type

(byte[ ] | Error)

Encrypted data or else a crypto:Error if the key is invalid

encryptAesGcm

function encryptAesGcm(byte[ ] input, byte[ ] key, byte[ ] iv, AesPadding padding, int tagSize) returns byte[ ] | Error
Isolated Function

Returns the AES-GCM-encrypted value for the given data.

1string dataString = "Hello Ballerina!";
2byte[] data = dataString.toBytes();
3byte[16] key = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
4foreach int i in 0...15 {
5 key[i] = <byte>(check random:createIntInRange(0, 255);
6}
7byte[16] initialVector = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
8foreach int i in 0...15 {
9 initialVector[i] = <byte>(check random:createIntInRange(0, 255);
10}
11byte[] cipherText = check crypto:encryptAesGcm(data, key, initialVector);

Parameters

  • input byte[ ]
  • The content to be encrypted

  • key byte[ ]
  • Encryption key

  • iv byte[ ]
  • Initialization vector

  • padding AesPadding (default PKCS5)
  • The padding algorithm

  • tagSize int (default 128)
  • Tag size

Return Type

(byte[ ] | Error)

Encrypted data or else a crypto:Error if the key is invalid

encryptRsaEcb

function encryptRsaEcb(byte[ ] input, PrivateKey | PublicKey key, RsaPadding padding) returns byte[ ] | Error
Isolated Function

Returns the RSA-encrypted value for the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PublicKey publicKey = check crypto:decodePublicKey(keyStore, "keyAlias");
8byte[] cipherText = check crypto:encryptRsaEcb(data, publicKey);

Parameters

  • input byte[ ]
  • The content to be encrypted

  • padding RsaPadding (default PKCS1)
  • The padding algorithm

Return Type

(byte[ ] | Error)

Encrypted data or else a crypto:Error if the key is invalid

hashMd5

function hashMd5(byte[ ] input) returns byte[ ]
Isolated Function

Returns the MD5 hash of the given data.

1string dataString = "Hello Ballerina";
2byte[] data = dataString.toBytes();
3byte[] hash = crypto:hashMd5(data);

Parameters

  • input byte[ ]
  • Value to be hashed

Return Type

(byte[ ])

Hashed output

hashSha1

function hashSha1(byte[ ] input) returns byte[ ]
Isolated Function

Returns the SHA-1 hash of the given data.

1string dataString = "Hello Ballerina";
2byte[] data = dataString.toBytes();
3byte[] hash = crypto:hashSha1(data);

Parameters

  • input byte[ ]
  • Value to be hashed

Return Type

(byte[ ])

Hashed output

hashSha256

function hashSha256(byte[ ] input) returns byte[ ]
Isolated Function

Returns the SHA-256 hash of the given data.

1string dataString = "Hello Ballerina";
2byte[] data = dataString.toBytes();
3byte[] hash = crypto:hashSha256(data);

Parameters

  • input byte[ ]
  • Value to be hashed

Return Type

(byte[ ])

Hashed output

hashSha384

function hashSha384(byte[ ] input) returns byte[ ]
Isolated Function

Returns the SHA-384 hash of the given data.

1string dataString = "Hello Ballerina";
2byte[] data = dataString.toBytes();
3byte[] hash = crypto:hashSha384(data);

Parameters

  • input byte[ ]
  • Value to be hashed

Return Type

(byte[ ])

Hashed output

hashSha512

function hashSha512(byte[ ] input) returns byte[ ]
Isolated Function

Returns the SHA-512 hash of the given data.

1string dataString = "Hello Ballerina";
2byte[] data = dataString.toBytes();
3byte[] hash = crypto:hashSha512(data);

Parameters

  • input byte[ ]
  • Value to be hashed

Return Type

(byte[ ])

Hashed output

hmacMd5

function hmacMd5(byte[ ] input, byte[ ] key) returns byte[ ] | Error
Isolated Function

Returns the HMAC using the MD5 hash function of the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3string secret = "some-secret";
4byte[] key = secret.toBytes();
5byte[] hmac = crypto:hmacMd5(data, key);

Parameters

  • input byte[ ]
  • Value to be hashed

  • key byte[ ]
  • Key used for HMAC generation

Return Type

(byte[ ] | Error)

The HMAC output or a crypto:Error if an error occurred

hmacSha1

function hmacSha1(byte[ ] input, byte[ ] key) returns byte[ ] | Error
Isolated Function

Returns the HMAC using the SHA-1 hash function of the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3string secret = "some-secret";
4byte[] key = secret.toBytes();
5byte[] hmac = crypto:hmacSha1(data, key);

Parameters

  • input byte[ ]
  • Value to be hashed

  • key byte[ ]
  • Key used for HMAC generation

Return Type

(byte[ ] | Error)

The HMAC output or a crypto:Error if an error occurred

hmacSha256

function hmacSha256(byte[ ] input, byte[ ] key) returns byte[ ] | Error
Isolated Function

Returns the HMAC using the SHA-256 hash function of the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3string secret = "some-secret";
4byte[] key = secret.toBytes();
5byte[] hmac = crypto:hmacSha256(data, key);

Parameters

  • input byte[ ]
  • Value to be hashed

  • key byte[ ]
  • Key used for HMAC generation

Return Type

(byte[ ] | Error)

The HMAC output or a crypto:Error if an error occurred

hmacSha384

function hmacSha384(byte[ ] input, byte[ ] key) returns byte[ ] | Error
Isolated Function

Returns the HMAC using the SHA-384 hash function of the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3string secret = "some-secret";
4byte[] key = secret.toBytes();
5byte[] hmac = crypto:hmacSha384(data, key);

Parameters

  • input byte[ ]
  • Value to be hashed

  • key byte[ ]
  • Key used for HMAC generation

Return Type

(byte[ ] | Error)

The HMAC output or a crypto:Error if an error occurred

hmacSha512

function hmacSha512(byte[ ] input, byte[ ] key) returns byte[ ] | Error
Isolated Function

Returns the HMAC using the SHA-512 hash function of the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3string secret = "some-secret";
4byte[] key = secret.toBytes();
5byte[] hmac = crypto:hmacSha512(data, key);

Parameters

  • input byte[ ]
  • Value to be hashed

  • key byte[ ]
  • Key used for HMAC generation

Return Type

(byte[ ] | Error)

The HMAC output or a crypto:Error if an error occurred

signRsaMd5

function signRsaMd5(byte[ ] input, PrivateKey privateKey) returns byte[ ] | Error
Isolated Function

Returns the RSA-MD5 based signature value for the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
8byte[] signature = check crypto:signRsaMd5(data, privateKey);

Parameters

  • input byte[ ]
  • The content to be signed

  • privateKey PrivateKey
  • Private key used for signing

Return Type

(byte[ ] | Error)

The generated signature or else a crypto:Error if the private key is invalid

signRsaSha1

function signRsaSha1(byte[ ] input, PrivateKey privateKey) returns byte[ ] | Error
Isolated Function

Returns the RSA-SHA1 based signature value for the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
8byte[] signature = check crypto:signRsaSha1(data, privateKey);

Parameters

  • input byte[ ]
  • The content to be signed

  • privateKey PrivateKey
  • Private key used for signing

Return Type

(byte[ ] | Error)

The generated signature or else a crypto:Error if the private key is invalid

signRsaSha256

function signRsaSha256(byte[ ] input, PrivateKey privateKey) returns byte[ ] | Error
Isolated Function

Returns the RSA-SHA256 based signature value for the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
8byte[] signature = check crypto:signRsaSha256(data, privateKey);

Parameters

  • input byte[ ]
  • The content to be signed

  • privateKey PrivateKey
  • Private key used for signing

Return Type

(byte[ ] | Error)

The generated signature or else a crypto:Error if the private key is invalid

signRsaSha384

function signRsaSha384(byte[ ] input, PrivateKey privateKey) returns byte[ ] | Error
Isolated Function

Returns the RSA-SHA384 based signature value for the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
8byte[] signature = check crypto:signRsaSha384(data, privateKey);

Parameters

  • input byte[ ]
  • The content to be signed

  • privateKey PrivateKey
  • Private key used for signing

Return Type

(byte[ ] | Error)

The generated signature or else a crypto:Error if the private key is invalid

signRsaSha512

function signRsaSha512(byte[ ] input, PrivateKey privateKey) returns byte[ ] | Error
Isolated Function

Returns the RSA-SHA512 based signature value for the given data.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
8byte[] signature = check crypto:signRsaSha512(data, privateKey);

Parameters

  • input byte[ ]
  • The content to be signed

  • privateKey PrivateKey
  • Private key used for signing

Return Type

(byte[ ] | Error)

The generated signature or else a crypto:Error if the private key is invalid

verifyRsaMd5Signature

function verifyRsaMd5Signature(byte[ ] data, byte[ ] signature, PublicKey publicKey) returns boolean | Error
Isolated Function

Verifies the RSA-MD5 based signature.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword")
8byte[] signature = check crypto:signRsaMd5(data, privateKey);
9crypto:PublicKey publicKey = check crypto:decodePublicKey(keyStore, "keyAlias");
10boolean validity = check crypto:verifyRsaMd5Signature(data, signature, publicKey);

Parameters

  • data byte[ ]
  • The content to be verified

  • signature byte[ ]
  • Signature value

  • publicKey PublicKey
  • Public key used for verification

Return Type

(boolean | Error)

Validity of the signature or else a crypto:Error if the public key is invalid

verifyRsaSha1Signature

function verifyRsaSha1Signature(byte[ ] data, byte[ ] signature, PublicKey publicKey) returns boolean | Error
Isolated Function

Verifies the RSA-SHA1 based signature.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
8byte[] signature = check crypto:signRsaMd5(data, privateKey);
9crypto:PublicKey publicKey = check crypto:decodePublicKey(keyStore, "keyAlias");
10boolean validity = check crypto:verifyRsaSha1Signature(data, signature, publicKey);

Parameters

  • data byte[ ]
  • The content to be verified

  • signature byte[ ]
  • Signature value

  • publicKey PublicKey
  • Public key used for verification

Return Type

(boolean | Error)

Validity of the signature or else a crypto:Error if the public key is invalid

verifyRsaSha256Signature

function verifyRsaSha256Signature(byte[ ] data, byte[ ] signature, PublicKey publicKey) returns boolean | Error
Isolated Function

Verifies the RSA-SHA256 based signature.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
8byte[] signature = check crypto:signRsaMd5(data, privateKey);
9crypto:PublicKey publicKey = check crypto:decodePublicKey(keyStore, "keyAlias");
10boolean validity = check crypto:verifyRsaSha256Signature(data, signature, publicKey);

Parameters

  • data byte[ ]
  • The content to be verified

  • signature byte[ ]
  • Signature value

  • publicKey PublicKey
  • Public key used for verification

Return Type

(boolean | Error)

Validity of the signature or else a crypto:Error if the public key is invalid

verifyRsaSha384Signature

function verifyRsaSha384Signature(byte[ ] data, byte[ ] signature, PublicKey publicKey) returns boolean | Error
Isolated Function

Verifies the RSA-SHA384 based signature.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
8byte[] signature = check crypto:signRsaMd5(data, privateKey);
9crypto:PublicKey publicKey = check crypto:decodePublicKey(keyStore, "keyAlias");
10boolean validity = check crypto:verifyRsaSha384Signature(data, signature, publicKey);

Parameters

  • data byte[ ]
  • The content to be verified

  • signature byte[ ]
  • Signature value

  • publicKey PublicKey
  • Public key used for verification

Return Type

(boolean | Error)

Validity of the signature or else a crypto:Error if the public key is invalid

verifyRsaSha512Signature

function verifyRsaSha512Signature(byte[ ] data, byte[ ] signature, PublicKey publicKey) returns boolean | Error
Isolated Function

Verifies the RSA-SHA512 based signature.

1string input = "Hello Ballerina";
2byte[] data = input.toBytes();
3crypto:KeyStore keyStore = {
4 path: "/path/to/keystore.p12",
5 password: "keystorePassword"
6};
7crypto:PrivateKey privateKey = check crypto:decodePrivateKey(keyStore, "keyAlias", "keyPassword");
8byte[] signature = check crypto:signRsaMd5(data, privateKey);
9crypto:PublicKey publicKey = check crypto:decodePublicKey(keyStore, "keyAlias");
10boolean validity = check crypto:verifyRsaSha512Signature(data, signature, publicKey);

Parameters

  • data byte[ ]
  • The content to be verified

  • signature byte[ ]
  • Signature value

  • publicKey PublicKey
  • Public key used for verification

Return Type

(boolean | Error)

Validity of the signature or else a crypto:Error if the public key is invalid