在C#中复制T-SQL DecryptByPassPhrase

hbe*_*eam 9 c# sql encryption 3des

我想创建一个C#类来解密使用T-SQL的EncryptByPassPhrase加密的字节数组.(是的,我知道我可以在SQL Server中解密,但我需要的是能够在数据库层和中间层中等效加密/解密.)

据我所知,SQL Server的EncryptByPassPhrase和DecryptByPassPhrase使用TripleDES对称密钥算法.但是,我不清楚IV应该模拟SQL Server的密码学.我可以使用TripleDESCryptoServiceProvider类加密/解密,但是我找不到正确的key和IV实现来复制SQL Server正在做的事情.

有没有人做过类似的事情?谢谢!

Bjo*_*g P 1

github 上有一个EncryptByPassPhrase用 C# 重新创建的公共存储库,随着实现的更改,IV 取决于 SQL Server 的版本。您可以查看代码的存储库。https://github.com/krcs/SQLServerCrypto