Portable.BouncyCastle是跨平台的吗?

时间:2018-08-09 17:19:46

标签: asp.net-core .net-core asp.net-core-2.0 bouncycastle

如果我从ASP.NET Core 2 Web应用程序引用Portable.BouncyCastle,它将在Linux和MacOS上运行吗?我的ASP.NET Core 2应用仍然可以跨平台兼容吗?

2 个答案:

答案 0 :(得分:0)

否,它不是跨平台的。它使用仅在.Net Core for Windows中实现的某些类型,例如html。参见https://github.com/onovotny/bc-csharp/issues/6

作为确认,提供了Portable.BouncyCastle still uses the RSACryptoServiceProvider(CspParameters) constructor,的最新提交以及.Net core still has it stubbed out for non-Windows.的最新版本

仅仅是因为某些东西针对.Net Standard,并不意味着它适用于非Windows操作系统。 .Net Standard API有许多.Net Core实现,只是存根引发了“未在此平台上实现”异常。

答案 1 :(得分:-1)

是的,Portable.BouncyCastle面向.NET Standard,它表示.NET实现之间的通用功能集,包括不同平台上的.NET Core。

来自.NET Standard FAQ

  

.NET Standard是代表所有.NET平台必须实现的一组API的规范。这将统一.NET平台并防止将来出现碎片。将.NET Standard视为.NET的POSIX。

有关更多详细信息,请参见Microsoft's .NET Standard Guide