Làm thế nào để mã hóa mật khẩu bằng cách sử dụng 'EncryptByPassPhrase'?



Khóa không đối xứng được tạo từ cụm mật khẩu. Đây có thể là varchar, char, varchar, binary, VARBINARY, hoặc là NCHAR loại biến có chứa cụm mật khẩu để tạo khóa đối xứng. Bất kỳ kiểu dữ liệu nào khác, chẳng hạn như DATE, trước tiên bạn phải chuyển đổi rõ ràng thành giá trị nhị phân để mã hóa ngày sinh.

@cleartext:



An NVARCHAR , char , varchar , nhị phân , VARBINARY, hoặc là NCHAR biến kiểu có chứa văn bản thuần túy. Các tối đa kích thước là tám nghìn byte .



Các loại trả lại:



VARBINARY với 8.000 byte Kích thước tối đa.

Thực hiện:

TẠO BẢNG dbo.encrypted_data ([Id] INT IDENTITY (1,1) PRIMARY KEY, [password] VARBINARY (8000));

Tạo một bảng có tên “mã hóa_data”

Giá trị id sẽ không được mã hóa, trong khi cột mật khẩu thuộc loại VARBINARY (8000) , phù hợp với kiểu trả về của ENCRYPTBYPASSPHRASE chức năng.



INSERT INTO dbo.encrypted_data ([mật khẩu]) GIÁ TRỊ (ENCRYPTBYPASSPHRASE ('SQL SERVER 2017