CryptoEx.Ed
3.0.0
dotnet add package CryptoEx.Ed --version 3.0.0
NuGet\Install-Package CryptoEx.Ed -Version 3.0.0
<PackageReference Include="CryptoEx.Ed" Version="3.0.0" />
paket add CryptoEx.Ed --version 3.0.0
#r "nuget: CryptoEx.Ed, 3.0.0"
// Install CryptoEx.Ed as a Cake Addin #addin nuget:?package=CryptoEx.Ed&version=3.0.0 // Install CryptoEx.Ed as a Cake Tool #tool nuget:?package=CryptoEx.Ed&version=3.0.0
About CryptoEx.Ed project
Extension of the logic in the core library (CryptoEx) to support Ed25519 & Ed448 cryptographic algorithms for digital signatures and X25519 & X448 algorithms for Diffie-Hellman key agreement. The project also implements JWSs (JSON Web signatures) and jAdES (Advanced JSON Web Signatures) with EdDSA algorithm.
I have decided to put these on a different project (different from CryptoEx), mainly because Ed25519, Ed448, X25519 & X448 are still not implemented in main-stream .NET. So, It need to rely on third-party libraries, such as:
- Bouncy Castle
- libsodium based wrappers
At the moment I have decided to use Bounty Castle, because it is 100% managed code and it is also performance optimized. The CryptoEx.Ed project has a dependency on Bounty Castle.
The project implements Ed signatures and key-exchanges in an similar to the standard .NET way and it can be used by .NET developers in a familiar way - as EC (Elliptic curves) are being used.
As a practical example of the usage of the Ed classes in the library, I have also extended the classes for JWSs (JSON Web Signatures) and for the jAdES (Advanced JSON Web Signatures) from the core library to implement EdDSA algorithm for them.
You can check the code and some documentation pages in the Wiki, for HOWTOs.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. |
-
net9.0
- BouncyCastle.Cryptography (>= 2.4.0)
- CryptoEx (>= 3.0.0)
- System.Security.Cryptography.Pkcs (>= 9.0.0)
- System.Security.Cryptography.Xml (>= 9.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Updated the package to target .NET 9.0
Updated dependency to CryptoEx v. 3.0