SQL Server şifrelenmiş veri .net şifresini çözmek

Bir SQL Server sütununda depolanan EncryptByCert şifrelenmiş verilerin .net içinden şifrelenmesi mümkün mü?

Depolanmış bir ortamda EncryptByCert kullanmak istiyorum Bir sütunda RSA-encrpyted bir değer depolamak için prosedür. Daha sonra bir istemci uygulaması SQL Server'a bağlanacak ve kodlanmış verileri talep edecek ve daha sonra sertifikanın özel anahtarı ile kodunu çözmesi gerekecektir. Mümkün mü?

Çok şifreleme bilgim yok. Bu yüzden bu soruyu soruyorum. Belki bunu yapmak için iyi bir örnek var mı?

1
Bu şifre çözmenin mümkün olduğundan eminim, ancak EncryptByCert tarafından hangi formatın kullanıldığını bulamadım.
katma yazar Paŭlo Ebermann, kaynak

1 cevap

SQL Server, verileri bir bayt dizisine şifreler ve sonuç olarak döndürür. Orada kullanılan konteyner biçimi yok . Bu nedenle, doğrudan RSACryptoServiceProvider tarafından şifresi çözülebilir. Burada dikkat edilmesi gereken nokta, SQL Server'ın PKCS # 1 V1.5 dolgu kullanmasıdır (en azından SQL Server 2005).

One thing to notice:
SQL server returns the encrypted result in reverse order as it is desired from RSACryptoServiceProvider. Therefore the byte sequence has to be reversed before decrypting it with RSACryptoServiceProvider.Decrypt.

2
katma