<PackageReference Include="SSH.NET" Version="2023.0.1" />

ED25519DigitalSignature

Implements ECDSA digital signature algorithm.
using Renci.SshNet.Security.Chaos.NaCl; using System; namespace Renci.SshNet.Security.Cryptography { public class ED25519DigitalSignature : DigitalSignature, IDisposable { private readonly ED25519Key _key; private bool _isDisposed; public ED25519DigitalSignature(ED25519Key key) { if (key == null) throw new ArgumentNullException("key"); _key = key; } public override bool Verify(byte[] input, byte[] signature) { return Ed25519.Verify(signature, input, _key.PublicKey); } public override byte[] Sign(byte[] input) { return Ed25519.Sign(input, _key.PrivateKey); } public void Dispose() { Dispose(true); GC.SuppressFinalize(this); } protected virtual void Dispose(bool disposing) { if (!_isDisposed && disposing) _isDisposed = true; } ~ED25519DigitalSignature() { Dispose(false); } } }