문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

DECRYPTBYPASSPHRASE(Transact-SQL)

전달 구로 암호화된 데이터의 암호를 해독합니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

DecryptByPassPhrase ( { 'passphrase' | @passphrase } 
    , { 'ciphertext' | @ciphertext }
  [ , { add_authenticator | @add_authenticator }
    , { authenticator | @authenticator } ] )

passphrase

암호 해독을 위한 키를 생성하는 데 사용할 전달 구입니다.

@passphrase

암호 해독을 위한 키를 생성하는 데 사용될 전달 구가 들어 있는 nvarchar, char, varchar 또는 nchar 형식의 변수입니다.

'ciphertext'

암호를 해독할 암호화 텍스트입니다.

@ciphertext

암호화 텍스트가 들어 있는 varbinary 형식의 변수입니다. 최대 크기는 8,000바이트입니다.

add_authenticator

인증자가 일반 텍스트와 함께 암호화되었는지 여부를 나타냅니다. 인증자가 사용된 경우 1이 됩니다. int .

@add_authenticator

인증자가 일반 텍스트와 함께 암호화되었는지 여부를 나타냅니다. 인증자가 사용된 경우 1이 됩니다. int .

authenticator

인증자 데이터입니다. sysname .

@authenticator

인증자가 파생될 데이터를 포함하는 변수입니다.

최대 크기가 8,000바이트인 varbinary

이 함수를 실행하는 데 필요한 사용 권한은 없습니다.

잘못된 전달 구나 인증자 정보를 사용하면 NULL을 반환합니다.

전달 구는 암호 해독 키를 생성하는 데 사용되며 암호 해독 키는 지속형이 아닙니다.

암호화 텍스트를 생성할 때 인증자를 포함한 경우 암호 해독 시 인증자를 제공해야 합니다. 암호 해독 시 제공한 인증자 값이 데이터를 암호화한 인증자 값과 일치하지 않으면 암호 해독이 실패합니다.

다음 예에서는 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

커뮤니티 추가 항목

추가
표시: