Universal.Common.Security.Cryptography
1.1.0.1
dotnet add package Universal.Common.Security.Cryptography --version 1.1.0.1
NuGet\Install-Package Universal.Common.Security.Cryptography -Version 1.1.0.1
<PackageReference Include="Universal.Common.Security.Cryptography" Version="1.1.0.1" />
<PackageVersion Include="Universal.Common.Security.Cryptography" Version="1.1.0.1" />
<PackageReference Include="Universal.Common.Security.Cryptography" />
paket add Universal.Common.Security.Cryptography --version 1.1.0.1
#r "nuget: Universal.Common.Security.Cryptography, 1.1.0.1"
#:package Universal.Common.Security.Cryptography@1.1.0.1
#addin nuget:?package=Universal.Common.Security.Cryptography&version=1.1.0.1
#tool nuget:?package=Universal.Common.Security.Cryptography&version=1.1.0.1
Universal.Common.Security.Cryptography
Cryptographic primitives and compatibility APIs for .NET Standard 2.0. The public API follows the conventions of System.Security.Cryptography: explicit key material, destination-buffer overloads, deterministic validation, and disposable objects for stateful primitives.
The package has no cryptographic runtime dependency. Implementations are derived from published standards and tested against official vectors. Oracle implementations such as Bouncy Castle are test-only dependencies.
Implemented
- Constant-time equality and secure memory clearing
- HKDF using SHA-1, SHA-256, SHA-384, and SHA-512 (RFC 5869)
- AES counter mode (NIST SP 800-38A)
- AES-GCM with 96-bit nonces (NIST SP 800-38D)
- ChaCha20 with 96-bit nonces (RFC 8439)
- Poly1305 and ChaCha20-Poly1305 (RFC 8439)
- HChaCha20 and XChaCha20-Poly1305 with 192-bit nonces
- X25519 key agreement with low-order input rejection (RFC 7748)
- Ed25519 signatures with strict point and scalar validation (RFC 8032)
- bcrypt_pbkdf key derivation for encrypted OpenSSH private keys
- RC4 for explicitly required legacy-format compatibility only
AES-GCM supports the standard 12- through 16-byte tag range and the 4-byte and 8-byte truncated tags defined by NIST SP 800-38D. Short tags must only be selected when a protocol requires them and enforces the corresponding per-key usage limits.
RC4 is obsolete and cryptographically broken. Its API is marked accordingly and must not be enabled in newly designed protocols.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- System.Memory (>= 4.6.3)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Universal.Common.Security.Cryptography:
| Package | Downloads |
|---|---|
|
Universal.Common.Ssh
SSH transport, authentication, connection, key, forwarding, and SFTP primitives for .NET Standard 2.0. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.1.0.1 | 323 | 8/21/2026 |
Added Ed25519 and bcrypt_pbkdf.