package org.bouncycastle.crypto.tls;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

A generic interface for key exchange implementations in TLS 1.0.
/** * A generic interface for key exchange implementations in TLS 1.0. */
public interface TlsKeyExchange { void skipServerCertificate() throws IOException; void processServerCertificate(Certificate serverCertificate) throws IOException; void skipServerKeyExchange() throws IOException; void processServerKeyExchange(InputStream is) throws IOException; void validateCertificateRequest(CertificateRequest certificateRequest) throws IOException; void skipClientCredentials() throws IOException; void processClientCredentials(TlsCredentials clientCredentials) throws IOException; void generateClientKeyExchange(OutputStream os) throws IOException; byte[] generatePremasterSecret() throws IOException; }