使用AES256解密 - Transact SQL或C#

时间:2016-06-21 02:28:35

标签: c# sql-server encryption

如果之前已经解决了这个问题我很抱歉,但我已经做了一些研究,但我自己也找不到明确的答案。

我使用PHP的openSSL函数使用256位AES加密数据并将其存储在SQL数据库中。我很惊讶(至少从我的研究中),似乎没有一种简单的方法可以解密这些数据(毕竟MySql中有)。

也许我只是忽略了一些非常明显的东西但是我如何解密这些数据以便我可以将它显示给可信用户呢?我可以使用C#或Transact SQL来执行此任务,但令我惊讶的是,还没有想到如何使用它完成它。

同样,我并不是要浪费任何人的时间,或者只是让别人'给我'答案,但我没有成功地调查过。因此,我真的很感激任何帮助。

2 个答案:

答案 0 :(得分:0)

如果您使用的是SQL Server,则可以将密钥加载到服务器中以执行此操作。或者您可以在C#中编写自定义代码并将其作为一个过程加载。

无论困难的部分是管理加密密钥。以下页面在TSQL中如何工作有一个合理的开始。 MSDN Link

答案 1 :(得分:0)

使用256位密钥的AES在C#中实现了一些。只需搜索SO [C#] AES,一个SO example,还有MSDN AES

请注意,许多较旧的实现名称为Rijndael,它是一组超级AES。注意,Rijndael支持多种块大小,因此如果您需要AES,请选择Rijndael 128位块大小和256位密钥(密钥大小通常由提供的密钥自动选择)。

相关问题