0
我正在玩Asymmetric Encryption and Decryption,但我不明白當我使用VerifySignedByAsymKey()時得到的結果。VerifySignedByAsymKey()不返回期望值
爲什麼會這樣:
CREATE ASYMMETRIC KEY myasymkey
WITH ALGORITHM = RSA_2048
ENCRYPTION BY PASSWORD = '123pass!';
GO
Select VerifySignedByAsymKey(AsymKey_ID('myasymkey'),
'Greg',
EncryptByAsymKey(AsymKey_ID('myasymkey'), 'Greg'));
GO
農產品0
?我期待它是1
。
謝謝,使用SignByAsymKey()而不是EncryptByAsymKey()的意義何在? – Greg 2012-01-07 17:41:27
簽名產生一個「簽名」,它是明文的摘要(散列),然後用對稱密鑰加密。簽名是驗證原始數據未被篡改的一種方式。對於非平凡的例子,它也比密文短得多;對於1024字節的密鑰長度爲128字節,對於256字節的密鑰長度則爲256字節。 – RickNZ 2012-01-07 23:02:21