在Visual Studio中使用Xamarin构建跨平台应用程序时应使用哪个libsodium .NET包装器?

Nig*_*001 8 c# cryptography visual-studio xamarin libsodium

我对使用Xamarin进行移动应用程序开发非常感兴趣。为了提供安全的通讯,我想使用NaCl或更具体的:libsodium
在libsodium网站上,它说使用C#使用libsodium有三种选择:libsodium-netNSecNitraLibSodium
我的问题:哪个是构建移动应用程序的最佳包装?缺点和优点是什么?

谢谢。

小智 3

在决定要使用其中哪个库之前,您需要确定将用于 Xamarin 项目的 .NET 版本。

这些包具有不同的依赖项,但最终都需要作为 NuGet 包导入,从那里您可以像 C# 项目中的任何其他 NuGet 包一样使用。

就其价值而言,看起来最成熟且开发活跃的标准是 NSec,因此,如果您计划基于最新的 .NET 标准进行构建,我会选择该标准。

至于每个与 ​​libsodium 的实现相关的优缺点,我必须把这个答案留给其他人,因为我不熟悉 NaCl。

希望这可以帮助。

  • @martinstoeckli 你需要自己构建 libsodium。对于 Android 平台,请参阅此处:/sf/ask/1879951041/(仅限 libsodium,省略 kalium-jni 部分,因为我们要绑定到 Xamarin 项目,而不是 Java 项目)。我使用 Ubuntu,安装了 Android Studio,并使用 SDK Manager 安装了 NDK。构建三个版本后,将 .so 文件添加到 Android 项目的 Lib/armeabi、Lib/armeabi-v7a 和 Lib/x86 文件夹中。为每个选项选择构建操作“AndroidNativeLibrary”。 (2认同)