org.bouncycastle.tls.crypto.TlsSigner Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of impersonator Show documentation
Show all versions of impersonator Show documentation
Spoof TLS/JA3/JA4 and HTTP/2 fingerprints in Java
package org.bouncycastle.tls.crypto;
import java.io.IOException;
import org.bouncycastle.tls.SignatureAndHashAlgorithm;
/**
* Base interface for a TLS signer that works on raw message digests.
*/
public interface TlsSigner
{
/**
* Generate an encoded signature based on the passed in hash.
*
* @param algorithm the signature algorithm to use.
* @param hash the hash calculated for the signature.
* @return an encoded signature.
* @throws IOException in case of an exception processing the hash.
*/
byte[] generateRawSignature(SignatureAndHashAlgorithm algorithm, byte[] hash)
throws IOException;
TlsStreamSigner getStreamSigner(SignatureAndHashAlgorithm algorithm) throws IOException;
}