VERIFYSIGNEDBYASYMKEY (Transact-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

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

Konvensi sintaks transact-SQL

Sintaksis

VerifySignedByAsymKey( Asym_Key_ID , clear_text , signature )  

Catatan

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

Argumen

Asym_Key_ID
Adalah ID sertifikat kunci asimetris dalam database.

clear_text
Adalah data teks jelas yang sedang diverifikasi.

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

Jenis Kembalian

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 data yang baru dihitung. Jika nilai cocok, tanda tangan dikonfirmasi valid.

Izin

Memerlukan izin LIHAT DEFINISI pada kunci asimetris.

Contoh

J. Pengujian 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 [AdventureWorks2022].[SignedData04]   
WHERE Description = N'data encrypted by asymmetric key ''WillisKey74''';  
GO  
RETURN;  

B. Mengembalikan kumpulan 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 [AdventureWorks2022].[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)
MEMBUAT KUNCI ASIMETRIS (Transact-SQL)
ALTER ASYMMETRIC KEY (Transact-SQL)
HILANGKAN KUNCI ASIMETRIS (Transact-SQL)
Hierarki Enkripsi