FirebirdSQL logo

RSA_PRIVATE()

Disponible en

DSQL, PSQL

Syntaxe
RSA_PRIVATE (size)
Table 1. paramètres de fonction RSA_PRIVATE
Paramètre Description

size

Taille de la clé en octets.

Le type de résultat renvoyé :

VARBINARY

La fonction RSA_PRIVATE renvoie la clé privée RSA d’une longueur donnée (en octets) au format PKCS#1 sous forme de chaîne VARBINARY.

Example 1. Utilisation de la fonction RSA_PRIVATE
select rdb$set_context('USER_SESSION', 'private_key', rsa_private(256))
from rdb$database;

RSA_PUBLIC()

Disponible en

DSQL, PSQL

Syntaxe
RSA_PUBLIC (private-key)
Table 1. paramètres de fonction RSA_PUBLIC
Paramètre Description

private-key

Clé privée RSA.

Le type de résultat renvoyé :

VARBINARY

La fonction RSA_PUBLIC renvoie la clé publique RSA pour une clé privée RSA donnée. Les deux clés doivent être au format PKCS#1.

Example 1. Utilisation de la fonction RSA_PUBLIC

La clé privée doit être initialisée auparavant, voir l’exemple dans RSA_PRIVATE

select rdb$set_context('USER_SESSION', 'public_key',
    rsa_public(rdb$get_context('USER_SESSION', 'private_key')))
from rdb$database;

RSA_ENCRYPT()

Disponible en

DSQL, PSQL

Syntaxe
RSA_ENCRYPT (<data> KEY <public_key> [LPARAM <tag>] [HASH <hash>])

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

data

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

public_key

La clé publique RSA retournée par la fonction RSA_PUBLIC.

tag

Une balise système facultative qui peut être utilisée pour déterminer quel système a encodé le message. La valeur par défaut est NULL.

hash

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

Le type de résultat renvoyé :

VARBINARY

Remplit les données à l’aide de la complétion OAEP et les crypte à l’aide de la clé publique RSA. Généralement utilisé pour crypter des clés symétriques courtes, qui sont ensuite utilisées dans des ciphers de bloc pour crypter le message.

Example 1. Utilisation de la fonction RSA_ENCRYPT

La clé publique doit être initialisée auparavant, voir l’exemple dans [fblangref-scalarfuncs-rsa_public]

select rdb$set_context('USER_SESSION', 'msg',
    rsa_encrypt('Some message' key rdb$get_context('USER_SESSION', 'public_key')))
from rdb$database;

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;