【发布时间】:2018-08-28 00:37:36
【问题描述】:
我将加密现有表中的几个字段。基本上,将使用以下加密技术:
CREATE MASTER KEY ENCRYPTION
BY PASSWORD = 'sm_long_password@'
GO
CREATE CERTIFICATE CERT_01
WITH SUBJECT = 'CERT_01'
GO
CREATE SYMMETRIC KEY SK_01
WITH ALGORITHM = AES_256 ENCRYPTION
BY CERTIFICATE CERT_01
GO
OPEN SYMMETRIC KEY SK_01 DECRYPTION
BY CERTIFICATE CERT_01
SELECT ENCRYPTBYKEY(KEY_GUID('SK_01'), 'test')
CLOSE SYMMETRIC KEY SK_01
DROP SYMMETRIC KEY SK_01
DROP CERTIFICATE CERT_01
DROP MASTER KEY
ENCRYPTBYKEY 返回 varbinary,最大大小为 8,000 字节。知道要加密的表字段(例如:nvarchar(128)、varchar(31)、bigint)如何定义新的varbinary 类型长度?
【问题讨论】:
标签: sql-server tsql encryption sql-server-2016 sqldatatypes