Installation

Use the following command to install the NSec.Cryptography NuGet package:

$ dotnet add package NSec.Cryptography --version 24.4.0

Supported Platforms

NSec 24.4.0 is intended to run on all supported versions of .NET on the following platforms:

-x64-x86-arm64-arm
win-
linux-
linux-musl-
osx-
ios-
android-

Please note:

  1. For Windows, the Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017, 2019, and 2022 is required. This is part of the .NET SDK but might not be present on a clean Windows installation.

  2. The AES-GCM implementation in NSec is hardware-accelerated and may not be available on all architectures. Support can be determined at runtime using the static IsSupported property of the NSec.Cryptography.Aes256Gcm class.

Tested Platforms

NSec 24.4.0 has been tested to run on the following platforms and .NET versions:

OSVersionArchitecture.NET
Windows 1123H2x648.0.4 / 6.0.29
Windows Server2022x648.0.4 / 6.0.29
macOS12.7x648.0.4 / 6.0.29
13.6x648.0.4 / 6.0.29
14.4arm648.0.4 / 6.0.29
Alpine Linux3.18x648.0.4
3.19x648.0.4
Debian10x648.0.4 / 6.0.29
11x648.0.4 / 6.0.29
12x648.0.4 / 6.0.29
Fedora38x648.0.4 / 6.0.29
39x648.0.4 / 6.0.29
40x648.0.4 / 6.0.29
Ubuntu20.04x648.0.4 / 6.0.29
22.04x648.0.4 / 6.0.29
24.04x648.0.4 / 6.0.29

The other supported platforms should work as well, but haven’t been tested.

Frequently Asked Questions

Below are some frequently asked questions:

Q: What causes a System.DllNotFoundException: Unable to load shared library ‘libsodium’ or one of its dependencies. when using the NSec.Cryptography NuGet package?
A: This exception can occur if the operating system or architecture is not supported, or if the Visual C++ Redistributable has not been installed on a Windows system. Please refer to the Supported Platforms section above.