RSA.Encrypt和RSA.EncryptValue之间的区别

问题描述

https://docs.microsoft.com/en-us/dotnet/api/system.security.cryptography.rsa?view=netcore-3.1

我正在查看RSA的文档,但无法理解.Encrypt().EncryptValue()之间的区别。我可以看到.Encrypt()使用指定的填充模式,但是使用私钥吗?对于.EncryptValue(),它表示使用公钥进行加密。

我想要一个功能,该功能 使用私钥加密 ,而另一个功能 使用公钥解密 >。

解决方法

我进行了更多研究,结果发现不支持方法调用(RSA.EncryptValue()),并且抛出了NotSupportedException

此外,RSA.Decrypt()使用私钥进行解密,但是RSA.Encrypt()使用公共 和私钥 进行加密,我不是确定为什么我将为此发布一个不同的问题。

最后,据我所知,该库确实支持签名(使用私钥加密)和验证(使用私钥解密),但仅返回一个布尔值,如果验证正确与否。没有使用公钥解密并提供数据的方法。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...