FirebirdSQL logo

RSA_DECRYPT()

Disponible en

DSQL, PSQL

Syntaxe
RSA_DECRYPT (<data> KEY <private_key> [LPARAM <tag>] [HASH <hash>])

<hash> ::= { MD5 | SHA1 | SHA256 | SHA512 }
Table 1. paramètres de fonction RSA_DECRYPT
Paramètre Description

data

Données (chaîne ou BLOB) à décrypter.

private_key

La clé privée RSA retournée par la fonction RSA_PRIVATE.

tag

Balise système optionnelle. Doit être la même valeur que celle passée à RSA_ENCRYPT. Si elle ne correspond pas à celle utilisée lors du codage, cette fonction ne décryptera pas le paquet. La valeur par défaut est NULL.

hash

Algorithme de hachage. La valeur par défaut est SHA256.

Le type de résultat renvoyé :

VARCHAR

Déchiffre à l’aide d’une clé privée RSA et supprime les données augmentées par l’OAEP.

Example 1. Utilisation de la fonction RSA_DECRYPT

La clé privée doit être initialisée plus tôt, voir l’exemple dans [fblangref-scalarfuncs-rsa_private]. Les données de déchiffrement sont utilisées à partir de l’exemple dans [fblangref-scalarfuncs-rsa_encrypt].

select RSA_DECRYPT(rdb$get_context('USER_SESSION', 'msg')
    key rdb$get_context('USER_SESSION', 'private_key'))
from RDB$DATABASE;

RSA_SIGN_HASH()

Disponible en

DSQL, PSQL

Syntaxe
RSA_SIGN_HASH (<data> KEY <private_key> [HASH <hash>] [SALT_LENGTH <length>])

<hash> ::= { MD5 | SHA1 | SHA256 | SHA512 }
Table 1. paramètres de fonction RSA_SIGN_HASH
Paramètre Description

data

Données (chaîne ou BLOB) à encoder.

private_key

La clé privée RSA retournée par la fonction RSA_PRIVATE.

hash

Algorithme de hachage. La valeur par défaut est SHA256.

length

Indique la longueur du sel souhaité et doit généralement être petite. Une bonne valeur se situe entre 8 et 16.

Le type de résultat renvoyé :

VARBINARY

Effectue le codage PSS du condensé du message pour la signature et le signe en utilisant la clé privée RSA. Renvoie la signature du message.

Example 1. Utilisation de la fonction RSA_SIGN_HASH

La clé privée doit être initialisée plus tôt voir l’exemple dans [fblangref-scalarfuncs-rsa_private].

select rdb$set_context('USER_SESSION', 'msg',
    rsa_sign_hash(crypt_hash('Test message' using sha256)
                  key rdb$get_context('USER_SESSION', 'private_key')))
from rdb$database;