Class BcTlsECDomain

  • All Implemented Interfaces:
    TlsECDomain

    public class BcTlsECDomain
    extends java.lang.Object
    implements TlsECDomain
    EC domain class for generating key pairs and performing key agreement.
    • Field Detail

      • ecDomainParameters

        protected final org.bouncycastle.crypto.params.ECDomainParameters ecDomainParameters
    • Method Detail

      • calculateBasicAgreement

        public static BcTlsSecret calculateBasicAgreement​(BcTlsCrypto crypto,
                                                          org.bouncycastle.crypto.params.ECPrivateKeyParameters privateKey,
                                                          org.bouncycastle.crypto.params.ECPublicKeyParameters publicKey)
      • getDomainParameters

        public static org.bouncycastle.crypto.params.ECDomainParameters getDomainParameters​(TlsECConfig ecConfig)
      • getDomainParameters

        public static org.bouncycastle.crypto.params.ECDomainParameters getDomainParameters​(int namedGroup)
      • calculateECDHAgreement

        public BcTlsSecret calculateECDHAgreement​(org.bouncycastle.crypto.params.ECPrivateKeyParameters privateKey,
                                                  org.bouncycastle.crypto.params.ECPublicKeyParameters publicKey)
      • createECDH

        public TlsAgreement createECDH()
        Description copied from interface: TlsECDomain
        Return an agreement operator suitable for ephemeral EC Diffie-Hellman.
        Specified by:
        createECDH in interface TlsECDomain
        Returns:
        a key agreement operator.
      • decodePoint

        public org.bouncycastle.math.ec.ECPoint decodePoint​(byte[] encoding)
                                                     throws java.io.IOException
        Throws:
        java.io.IOException
      • decodePublicKey

        public org.bouncycastle.crypto.params.ECPublicKeyParameters decodePublicKey​(byte[] encoding)
                                                                             throws java.io.IOException
        Throws:
        java.io.IOException
      • encodePoint

        public byte[] encodePoint​(org.bouncycastle.math.ec.ECPoint point)
                           throws java.io.IOException
        Throws:
        java.io.IOException
      • encodePublicKey

        public byte[] encodePublicKey​(org.bouncycastle.crypto.params.ECPublicKeyParameters publicKey)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • generateKeyPair

        public org.bouncycastle.crypto.AsymmetricCipherKeyPair generateKeyPair()