SignByAsymKey (Transact-SQL)

Signe du texte en clair avec une clé asymétrique.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

SignByAsymKey( Asym_Key_ID , @plaintext [ , 'password' ] )

Arguments

  • Asym_Key_ID
    ID d'une clé asymétrique de la base de données actuelle. Asym_Key_ID est de typeint.

  • @plaintext
    Variable de type nvarchar, char, varchar ou nchar dont les données seront signées avec la clé asymétrique.

  • password
    Mot de passe au moyen duquel la clé privée est protégée. password est de type nvarchar(128).

Type des valeurs renvoyées

Variable binaire varbinary de 8 000 octets au maximum.

Notes

Nécessite l'autorisation CONTROL sur la clé asymétrique.

Exemples

L'exemple suivant crée une table, SignedData04, dans laquelle doivent être stockés le texte en clair et sa signature. Ensuite, il insère un enregistrement dans la table, signé avec la clé asymétrique PrimeKey, qui est d'abord déchiffré avec le mot de passe 'pGFD4bb925DGvbd2439587y'.

-- Create a table in which to store the data
CREATE TABLE [SignedData04]( Description nvarchar(max), Data nvarchar(max), DataSignature varbinary(8000) );
GO
-- Store data together with its signature
DECLARE @clear_text_data nvarchar(max);
set @clear_text_data = N'Important numbers 2, 3, 5, 7, 11, 13, 17, 
      19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79,
      83, 89, 97';
INSERT INTO [SignedData04] 
    VALUES( N'data encrypted by asymmetric key ''PrimeKey''',
    @clear_text_data, SignByAsymKey( AsymKey_Id( 'PrimeKey' ),
    @clear_text_data, N'pGFD4bb925DGvbd2439587y' ));
GO