using System; using System.IO; using Org.BouncyCastle.Tls.Crypto; namespace Org.BouncyCastle.Tls { /// Support interface for generating a signature based on our private credentials. public interface TlsCredentialedSigner : TlsCredentials { /// Generate a signature against the passed in hash. /// a message digest calculated across the message the signature is to apply to. /// an encoded signature. /// if the hash cannot be processed, or there is an issue with the private /// credentials. byte[] GenerateRawSignature(byte[] hash); /// Return the algorithm IDs for the signature algorithm and the associated hash it uses. /// the full algorithm details for the signature. SignatureAndHashAlgorithm SignatureAndHashAlgorithm { get; } /// TlsStreamSigner GetStreamSigner(); } }