System.Security.Cryptography.Csp on Ubuntu 16.04
本文关键字:Ubuntu on Csp Security Cryptography System | 更新日期: 2023-09-27 18:03:29
我有ASP。Net Core 1.0.0应用程序使用加密。我需要用RSACryptoServiceProvider
解密密钥。Visual Studio建议将System.Security.Cryptography.Csp
版本4.0.0添加到我的依赖项中。我接受了,而且在Windows上运行得很好。但是当我在Ubuntu 16.04上部署它时,RSACryptoServiceProvider
的方法开始抛出PlatformNotSupportedException
异常。我是否使用了错误的组件?我找到了https://github.com/dotnet/corefx/tree/v1.0.0/src/System.Security.Cryptography.Csp,有1.0.0版本。这是我需要的吗?我如何将它添加到我的项目中?
RSACryptoServiceProvider
基于CryptoAPI,这是一种特定于windows的非托管API。由于它在Linux上不可用,因此在运行时抛出PlatformNotSupportedException
异常。
相反,考虑引用System.Security.Cryptography.Algorithms
并使用RSA.Create()
来获得与您的环境兼容的实现(在Linux上,您将获得RSAOpenSsl
实例)。