SQLServer2008:混淆或加扰
是否可以在 SQLServer 2008 R2 中混淆或打乱列,而无需使用加密或某些执行子字符串的低效定制函数?
Is it possible to obfuscate or scramble a column in SQLServer 2008 R2 without having to use encryption or some highly ineffecient custom made function that does substrings?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
为什么不在您的应用程序中使用加密/散列/编码并将结果发布到 SQL 中?这是相当标准的。
如果您必须在 SQL Server 中执行此操作,您可能需要考虑使用 CLR 函数。
Why not use encryption/hashing/encoding in your application and post the results into SQL? That's pretty standard.
If you must do it in SQL Server, you may want to look at using CLR functions within SQL Server.
据我所知,使用 Java 或 .NET 等第三方应用程序对进出列的数据进行加密。如果您在 SQL 中执行此操作,那么窃取您备份的人可以解密,因为他有权访问该函数
Not that I know of, encrypt the data coming in and out from the column with a 3rd party app like Java or .NET. If you do it within SQL then the person who steals your backup can decrypt is since he has access to the function
尝试这样的事情: 在 PHP 中混淆或加密一些纯文本数据
try something like this: obfuscate or encrypt some plain text data in PHP
这里需要进一步研究一些东西。
SQL Server 2005+ 具有以下功能 -
ENCRYPTBYKEY
及其伙伴DECRYPTBYKEY
EncryptByKey参数:
SYMMETRIC KEY
。返回高达 8000 的
varbinary
。如果您想利用这些方法,您可以创建一个高达 8000 的
varbinary
类型列,然后保存输出在这里。我有兴趣听到有关此函数在现实世界中的用法的评论,以及有关其性能的任何轶事。
Something to research a bit further here.
SQL Server 2005+ has the function -
ENCRYPTBYKEY
and its mateDECRYPTBYKEY
EncryptByKey Params:
SYMMETRIC KEY
open on the server.Returns a
varbinary
up to 8000.If you wanted to leverage these methods, you could create a column of type
varbinary
up to 8000, and save the output here.I'd be interested to hear comments on real world usages of this function, and any anecdotes on its performance.