decryptbypassphrase (Transact-sql)
Parola ile şifrelenmiş verilerin şifresini çözer.
Transact-SQL Sözdizim Kuralları
Sözdizimi
DecryptByPassPhrase ( { 'passphrase' | @passphrase }
, { 'ciphertext' | @ciphertext }
[ , { add_authenticator | @add_authenticator }
, { authenticator | @authenticator } ] )
Bağımsız değişkenler
passphrase
Şifre çözme anahtarı oluşturmak için kullanılan parola olduğunu.@ parola
Değişken türü nvarchar, char, varchar, ya ncharşifre çözme anahtarı oluşturmak için kullanılan parola içeren.'ciphertext'
Ciphertext şifresi etmektir.@ ciphertext
Değişken türü varbinaryiçeren ciphertext. En çok 8.000 bayt boyutudur.add_authenticator
Bir kimlik doğrulayıcısı ile birlikte düz metin şifrelenmiş olup olmadığını gösterir. 1 İse, bir kimlik doğrulayıcısı kullanıldı. int.@ add_authenticator
Bir kimlik doğrulayıcısı ile birlikte düz metin şifrelenmiş olup olmadığını gösterir. 1 İse, bir kimlik doğrulayıcısı kullanıldı. int.authenticator
Kimlik Doğrulayıcı veridir. sysname.@ Doğrulayıcı
Gelen bir kimlik doğrulayıcısı türetmek verileri içeren bir değişkendir.
Dönüş Türleri
varbinary8.000 bayt maksimum boyutu ile.
Açıklamalar
Bu işlevi yürütmek için hiçbir izin gereklidir.
Yanlış parola veya kimlik bilgileri kullanılırsa null döndürüyor.
Parola değil kalıcı bir şifre çözme anahtarı oluşturmak için kullanılır.
Ne zaman ciphertext şifrelenmiş bir kimlik doğrulayıcısı varsa, kimlik doğrulayıcı şifre çözme anda sağlanmalıdır. Şifre çözme anda sağlanan doğrulayıcı değer veri ile şifrelenmiş kimlik doğrulayıcısı değerle eşleşmiyorsa, şifre çözme başarısız olur.
Örnekler
Aşağıdaki örnek güncellenen kaydın şifresini çözer EncryptByPassPhrase.
USE AdventureWorks2012;
-- Get the pass phrase from the user.
DECLARE @PassphraseEnteredByUser nvarchar(128);
SET @PassphraseEnteredByUser
= 'A little learning is a dangerous thing!';
-- Decrypt the encrypted record.
SELECT CardNumber, CardNumber_EncryptedbyPassphrase
AS 'Encrypted card number', CONVERT(nvarchar,
DecryptByPassphrase(@PassphraseEnteredByUser, CardNumber_EncryptedbyPassphrase, 1
, CONVERT(varbinary, CreditCardID)))
AS 'Decrypted card number' FROM Sales.CreditCard
WHERE CreditCardID = '3681';
GO
USE AdventureWorks2012;
-- Get the pass phrase from the user.
DECLARE @PassphraseEnteredByUser nvarchar(128);
SET @PassphraseEnteredByUser
= 'A little learning is a dangerous thing!';
-- Decrypt the encrypted record.
SELECT CardNumber, CardNumber_EncryptedbyPassphrase
AS 'Encrypted card number', CONVERT(nvarchar,
DecryptByPassphrase(@PassphraseEnteredByUser, CardNumber_EncryptedbyPassphrase, 1
, CONVERT(varbinary, CreditCardID)))
AS 'Decrypted card number' FROM Sales.CreditCard
WHERE CreditCardID = '3681';
GO
Ayrıca bkz.
Başvuru
encryptbypassphrase (Transact-sql)