Как зашифровать пароли с помощью EncryptByPassPhrase?



Асимметричный ключ генерируется из парольной фразы. Это может быть varchar, char, varchar, binary, ВАРБИНАРНЫЙ, или же NCHAR переменная типа, содержащая парольную фразу, из которой создается симметричный ключ. Любой другой тип данных, например DATE, необходимо сначала явно преобразовать в двоичное значение, чтобы зашифровать дату рождения.

@cleartext:



An NVARCHAR , char , варчар , двоичный , ВАРБИНАРНЫЙ, или же NCHAR переменная типа, содержащая простой текст. В максимум размер восемь тысяч байт .



Типы возврата:



VARBINARY с участием 8 000 байты максимальный размер.

Реализация:

СОЗДАТЬ ТАБЛИЦУ dbo.encrypted_data ([Id] INT IDENTITY (1,1) PRIMARY KEY, [пароль] VARBINARY (8000));

Создание таблицы с именем «encrypted_data»

Значение id останется незашифрованным, тогда как столбец пароля имеет тип ВАРБИНАРНЫЙ (8000) , который соответствует типу возвращаемого значения ENCRYPTBYPASSPHRASE функция.



INSERT INTO dbo.encrypted_data ([password]) VALUES (ENCRYPTBYPASSPHRASE ('SQL SERVER 2017