encryptbypassphrase (Transact-sql)
128 Bit anahtar uzunluğu Üçlü des algoritmasını kullanarak parola ile verileri şifreleme.
Transact-SQL Sözdizim Kuralları
Sözdizimi
EncryptByPassPhrase ( { 'passphrase' | @passphrase }
, { 'cleartext' | @cleartext }
[ , { add_authenticator | @add_authenticator }
, { authenticator | @authenticator } ] )
Bağımsız değişkenler
passphrase
Hangi bir simetrik anahtar oluşturmak bir parola.@passphrase
Türünde bir değişken nvarchar, char, varchar, binary, varbinary, ya ncharhangi bir simetrik anahtar oluşturmak bir parola içeren.cleartext
Şifrelenmiş şifresiz metin.@cleartext
Türünde bir değişken nvarchar, char, varchar, binary, varbinary, ya ncharşifresiz metin içeren. En çok 8.000 bayt boyutudur.add_authenticator
Şifresiz metin ile birlikte bir kimlik doğrulayıcısı şifreli olup olmadığını gösterir. 1 Eğer bir kimlik doğrulayıcısı eklenecektir. int.@add\_authenticator
Karma şifresiz metin ile birlikte şifreli olup olmadığını gösterir.authenticator
Gelen bir kimlik doğrulayıcısı türetmek verileri. sysname.@authenticator
Gelen bir kimlik doğrulayıcısı türetmek verileri içeren değişken.
Dönüş Türleri
varbinary8.000 bayt maksimum boyutu ile.
Açıklamalar
Parola, boşluklar içeren bir paroladır. Parola kullanmanın avantajı, bu anlamlı tümcecik veya tümceyi nispeten uzun bir karakter dizisini anımsamak daha hatırlamak daha kolay olmasıdır.
Bu işlev, parola karmaşıklık denetlemez.
Örnekler
Aşağıdaki örnek, bir kaydı güncelleştirir SalesCreditCardtablo ve sütunda depolanan kredi kartı numarasını şifreler CardNumber_EncryptedbyPassphrase, birincil anahtar bir kimlik doğrulayıcısı kullanma.
USE AdventureWorks2012;
GO
-- Create a column in which to store the encrypted data.
ALTER TABLE Sales.CreditCard
ADD CardNumber_EncryptedbyPassphrase varbinary(256);
GO
-- First get the passphrase from the user.
DECLARE @PassphraseEnteredByUser nvarchar(128);
SET @PassphraseEnteredByUser
= 'A little learning is a dangerous thing!';
-- Update the record for the user's credit card.
-- In this case, the record is number 3681.
UPDATE Sales.CreditCard
SET CardNumber_EncryptedbyPassphrase = EncryptByPassPhrase(@PassphraseEnteredByUser
, CardNumber, 1, CONVERT( varbinary, CreditCardID))
WHERE CreditCardID = '3681';
GO
USE AdventureWorks2012;
GO
-- Create a column in which to store the encrypted data.
ALTER TABLE Sales.CreditCard
ADD CardNumber_EncryptedbyPassphrase varbinary(256);
GO
-- First get the passphrase from the user.
DECLARE @PassphraseEnteredByUser nvarchar(128);
SET @PassphraseEnteredByUser
= 'A little learning is a dangerous thing!';
-- Update the record for the user's credit card.
-- In this case, the record is number 3681.
UPDATE Sales.CreditCard
SET CardNumber_EncryptedbyPassphrase = EncryptByPassPhrase(@PassphraseEnteredByUser
, CardNumber, 1, CONVERT( varbinary, CreditCardID))
WHERE CreditCardID = '3681';
GO
Ayrıca bkz.
Başvuru
decryptbypassphrase (Transact-sql)