diff options
Diffstat (limited to 'libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/DefaultTlsAgreementCredentials.java')
-rw-r--r-- | libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/DefaultTlsAgreementCredentials.java | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/DefaultTlsAgreementCredentials.java b/libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/DefaultTlsAgreementCredentials.java deleted file mode 100644 index be981d8ab..000000000 --- a/libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/tls/DefaultTlsAgreementCredentials.java +++ /dev/null @@ -1,78 +0,0 @@ -package org.spongycastle.crypto.tls; - -import java.math.BigInteger; - -import org.spongycastle.crypto.BasicAgreement; -import org.spongycastle.crypto.agreement.DHBasicAgreement; -import org.spongycastle.crypto.agreement.ECDHBasicAgreement; -import org.spongycastle.crypto.params.AsymmetricKeyParameter; -import org.spongycastle.crypto.params.DHPrivateKeyParameters; -import org.spongycastle.crypto.params.ECPrivateKeyParameters; -import org.spongycastle.util.BigIntegers; - -public class DefaultTlsAgreementCredentials - extends AbstractTlsAgreementCredentials -{ - protected Certificate certificate; - protected AsymmetricKeyParameter privateKey; - - protected BasicAgreement basicAgreement; - protected boolean truncateAgreement; - - public DefaultTlsAgreementCredentials(Certificate certificate, AsymmetricKeyParameter privateKey) - { - if (certificate == null) - { - throw new IllegalArgumentException("'certificate' cannot be null"); - } - if (certificate.isEmpty()) - { - throw new IllegalArgumentException("'certificate' cannot be empty"); - } - if (privateKey == null) - { - throw new IllegalArgumentException("'privateKey' cannot be null"); - } - if (!privateKey.isPrivate()) - { - throw new IllegalArgumentException("'privateKey' must be private"); - } - - if (privateKey instanceof DHPrivateKeyParameters) - { - basicAgreement = new DHBasicAgreement(); - truncateAgreement = true; - } - else if (privateKey instanceof ECPrivateKeyParameters) - { - basicAgreement = new ECDHBasicAgreement(); - truncateAgreement = false; - } - else - { - throw new IllegalArgumentException("'privateKey' type not supported: " - + privateKey.getClass().getName()); - } - - this.certificate = certificate; - this.privateKey = privateKey; - } - - public Certificate getCertificate() - { - return certificate; - } - - public byte[] generateAgreement(AsymmetricKeyParameter peerPublicKey) - { - basicAgreement.init(privateKey); - BigInteger agreementValue = basicAgreement.calculateAgreement(peerPublicKey); - - if (truncateAgreement) - { - return BigIntegers.asUnsignedByteArray(agreementValue); - } - - return BigIntegers.asUnsignedByteArray(basicAgreement.getFieldSize(), agreementValue); - } -} |