diff options
Diffstat (limited to 'libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/TlsSigner.java')
-rw-r--r-- | libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/TlsSigner.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/TlsSigner.java b/libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/TlsSigner.java new file mode 100644 index 000000000..021155e38 --- /dev/null +++ b/libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/TlsSigner.java @@ -0,0 +1,34 @@ +package org.spongycastle.crypto.tls; + +import org.spongycastle.crypto.CryptoException; +import org.spongycastle.crypto.Signer; +import org.spongycastle.crypto.params.AsymmetricKeyParameter; + +public interface TlsSigner +{ + void init(TlsContext context); + + byte[] generateRawSignature(AsymmetricKeyParameter privateKey, byte[] md5AndSha1) + throws CryptoException; + + byte[] generateRawSignature(SignatureAndHashAlgorithm algorithm, + AsymmetricKeyParameter privateKey, byte[] hash) + throws CryptoException; + + boolean verifyRawSignature(byte[] sigBytes, AsymmetricKeyParameter publicKey, byte[] md5AndSha1) + throws CryptoException; + + boolean verifyRawSignature(SignatureAndHashAlgorithm algorithm, byte[] sigBytes, + AsymmetricKeyParameter publicKey, byte[] hash) + throws CryptoException; + + Signer createSigner(AsymmetricKeyParameter privateKey); + + Signer createSigner(SignatureAndHashAlgorithm algorithm, AsymmetricKeyParameter privateKey); + + Signer createVerifyer(AsymmetricKeyParameter publicKey); + + Signer createVerifyer(SignatureAndHashAlgorithm algorithm, AsymmetricKeyParameter publicKey); + + boolean isValidPublicKey(AsymmetricKeyParameter publicKey); +} |