SignByAsymKey (Transact-SQL)
Signiert Nur-Text mit einem asymmetrischen Schlüssel.
Syntax
SignByAsymKey( Asym_Key_ID , @plaintext [ , 'password' ] )
Argumente
Asym_Key_ID
Die ID eines asymmetrischen Schlüssels in der aktuellen Datenbank. Asym_Key_ID istint.@plaintext
Eine Variable vom Typ nvarchar, char, varchar oder nchar, die Daten enthält, die mit dem asymmetrischen Schlüssel signiert werden sollen.password
Das Kennwort, mit dem der private Schlüssel verschlüsselt ist. password ist nvarchar(128).
Rückgabetypen
varbinary mit einer maximalen Größe von 8.000 Bytes.
Hinweise
Erfordert die CONTROL-Berechtigung für den asymmetrischen Schlüssel.
Beispiele
Im folgenden Beispiel wird eine Tabelle mit dem Namen SignedData04 erstellt, in der Nur-Text zusammen mit der zugehörigen Signatur gespeichert wird. Anschließend wird ein Datensatz in die Tabelle eingefügt, der mit dem asymmetrischen Schlüssel PrimeKey signiert ist, der zuvor mit dem Kennwort 'pGFD4bb925DGvbd2439587y' entschlüsselt wird.
-- 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