使用C#中的RSA / ECB / OAEPWithSHA-1AndMGF1Padding进行加密

时间:2019-03-12 15:48:39

标签: c# cryptography rsa

我需要在C#.NET 4.7.2中加密一些文本,我需要使用的密码是RSA / ECB / OAEPWithSHA-1AndMGF1Padding。但是内置的C#类if (window.innerWidth <= 768) { $('[data-toggle="tooltip"]').tooltip("disable"); } else { $("[data-toggle='tooltip']").tooltip(); } $(window).resize(function() { if (window.innerWidth <= 768) { $('[data-toggle="tooltip"]').tooltip("disable"); } else { $("[data-toggle='tooltip']").tooltip("enable"); } }); 似乎没有MGF1填充。

如何使用公共密钥和RSA / ECB / OAEPWithSHA-1AndMGF1Padding加密?

我当前拥有的代码:

RSACryptoServiceProvider

1 个答案:

答案 0 :(得分:2)

RSA rsa = ...;
byte[] encrypted = rsa.Encrypt(data, RSAEncryptionPadding.OaepSha1);

MGF-1是迄今为止RFC定义的唯一掩码生成功能,因此暗含了它。

此外,请尝试避免直接使用RSACryptoServiceProvider。如果您使用的是旧版本并且必须使用旧版本,则将true传递到其fOAEP参数与从新的重载请求OaepSha1相同。