반응형

/*
-- Title : [SQL2022] EncryptByPassphrase, DecryptByPassphrase 이용한 암복호화
-- Tag : 암호화 복호화 sql server 2022 encryptbypassphrase, decryptbypassphrase
*/


■ EncryptByPassphrase 사용한 암호화

--------------------------------------------------------
-- 암호화
--------------------------------------------------------
DECLARE @symmetric_key NVARCHAR(100) = N'My_symmetric_key';
DECLARE @authenticator NVARCHAR(50) = N'Salt6';

DECLARE @EncryptionBytes VARBINARY(MAX) =  EncryptByPassphrase(@symmetric_key, N'가Ab3@#',1,@authenticator);
SELECT @EncryptionBytes "암호화";
GO

  • @symmetric_key : 암호화를 수행하는 데 사용되는 대칭 키로, 암호화와 복호화에 동일한 키를 사용
  • @authenticator : 추가적인 보안 계층을 제공하는 인증자(Saulting?)


■ DecryptByPassphrase 사용한 복호화

DECLARE @symmetric_key NVARCHAR(100) = N'My_symmetric_key';
DECLARE @authenticator NVARCHAR(50) = N'Salt6';

DECLARE @EcryptionBytes VARBINARY(MAX);
SET @EcryptionBytes = 0x02000000F2E47354D9B9D052CA9405969B5ED8FA5017EB4E4DF3739B6972A5D4E7089F11F38D512C908F9A87E688D4B8661EE296A3D6B2E2D0BAAAB35E775FE906943BD4;

-- 복호화
DECLARE @DecryptBytes NVARCHAR(max) =  DecryptByPassphrase(N'NICE_symmetric_key', @EcryptionBytes, 1 ,N'Salt6')
SELECT @DecryptBytes "복호화";

 


반응형

+ Recent posts