如何使用ASP Classic加密和解密SQL Server数据库中的高度敏感信息?

Beh*_*ens 7 sql-server encryption asp-classic

我一直在检查stackoverflow上的各种问题,当然还有谷歌,但我真的找不到这个问题的具体解决方案:

如何在ASP Classic中创建一个函数来加密和解密SQL Server数据库中的高度敏感信息?像fx.社会安全号码或类似的东西?

(或者可以在我的SQL字符串中执行吗?)

是的,我知道如何用ASP创建一个函数;)

不,我只是不能使用SHA或MD5散列信息,因为它们只能以一种方式工作.我需要双向工作!

越安全,越快越好!:)

编辑:
后来我发现了这个:

http://www.4guysfromrolla.com/webtech/010100-1.shtml

但我真的不知道这是否足够安全并且会做什么?其中我可以看到,它是双向的?

Chr*_*int 4

允许 SQL Server 使用密钥/证书处理加密/解密可能会很有帮助。这样,您就不必自行使用 ASP,并且该系统的管理保留在数据本身所在的位置。还有一个好处是,如果您决定迁移到另一个平台,则不必更新此流程。

在服务器上创建密钥是一个简单的过程,之后使用它们也很简单,例如;

加密;

OPEN SYMMETRIC KEY mykey DECRYPTION BY CERTIFICATE [mycert]
UPDATE table SET number = EncryptByKey(Key_GUID('mykey'), @number)
Run Code Online (Sandbox Code Playgroud)

解密;

 OPEN SYMMETRIC KEY mykey DECRYPTION BY CERTIFICATE [mycert]
 SELECT CONVERT(varchar, DecryptByKey(number)) AS number FROM TABLE
Run Code Online (Sandbox Code Playgroud)

可以在此处找到对此的详细概述SQL Server 加密简介