VERIFYSIGNEDBYASYMKEY (Transact-SQL)

Berlaku untuk: SQL Server (semua versi yang didukung) Azure SQL Managed Instance Database Azure SQL

Menguji apakah data yang ditandatangani secara digital telah diubah sejak ditandatangani.

tautan topikIkon Konvensi Sintaks Transact-SQL

Sintaks

VerifySignedByAsymKey( Asym_Key_ID , clear_text , signature )  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 dan yang lebih lama, lihat Dokumentasi versi sebelumnya.

Argumen

Asym_Key_ID
Adalah ID sertifikat kunci asimetris dalam database.

clear_text
Adalah data teks yang jelas yang sedang diverifikasi.

Tanda tangan
Adalah tanda tangan yang dilampirkan ke data yang ditandatangani. tanda tangan adalah varbinary.

Jenis Pengembalian

int

Mengembalikan 1 saat tanda tangan cocok; jika tidak, 0.

Keterangan

VerifySignedByAsymKey mendekripsi tanda tangan data dengan menggunakan kunci publik kunci asimetris yang ditentukan, dan membandingkan nilai yang didekripsi dengan hash MD5 yang baru dihitung dari data. Jika nilai cocok, tanda tangan dikonfirmasi valid.

Izin

Memerlukan izin LIHAT DEFINISI pada kunci asimetris.

Contoh

A. Menguji data dengan tanda tangan yang valid

Contoh berikut mengembalikan 1 jika data yang dipilih belum diubah sejak ditandatangani dengan kunci WillisKey74asimetris . Contoh mengembalikan 0 jika data telah dirusak.

SELECT Data,  
     VerifySignedByAsymKey( AsymKey_Id( 'WillisKey74' ), SignedData,  
     DataSignature ) as IsSignatureValid  
FROM [AdventureWorks2012].[SignedData04]   
WHERE Description = N'data encrypted by asymmetric key ''WillisKey74''';  
GO  
RETURN;  

B. Mengembalikan tataan hasil yang berisi data dengan tanda tangan yang valid

Contoh berikut mengembalikan baris yang SignedData04 berisi data yang belum diubah sejak ditandatangani dengan kunci WillisKey74asimetris . Contoh memanggil fungsi AsymKey_ID untuk mendapatkan ID kunci asimetris dari database.

SELECT Data   
FROM [AdventureWorks2012].[SignedData04]   
WHERE VerifySignedByAsymKey( AsymKey_Id( 'WillisKey74' ), Data,  
     DataSignature ) = 1  
AND Description = N'data encrypted by asymmetric key ''WillisKey74''';  
GO  

Lihat juga

ASYMKEY_ID (T-SQL)
SIGNBYASYMKEY (Transact-SQL)
CREATE ASYMMETRIC KEY (Transact-SQL)
ALTER ASYMMETRIC KEY (Transact-SQL)
DROP ASYMMETRIC KEY (Transact-SQL)
Hierarki Enkripsi