Enum MontgomeryCurve

java.lang.Object
java.lang.Enum<MontgomeryCurve>
org.apache.sshd.common.kex.MontgomeryCurve
All Implemented Interfaces:
Serializable, Comparable<MontgomeryCurve>, KeySizeIndicator, OptionalFeature

public enum MontgomeryCurve extends Enum<MontgomeryCurve> implements KeySizeIndicator, OptionalFeature
Provides implementation details for Montgomery curves and their key exchange algorithms Curve25519/X25519 and Curve448/X448 specified in RFC 7748 and RFC 8731. Montgomery curves provide improved security and flexibility over Weierstrass curves used in ECDH.
See Also:
  • Enum Constant Details

    • x25519

      public static final MontgomeryCurve x25519
      X25519 uses Curve25519 and SHA-256 with a 32-byte key size.
    • x448

      public static final MontgomeryCurve x448
      X448 uses Curve448 and SHA-512 with a 56-byte key size.
  • Field Details

    • algorithm

      private final String algorithm
    • keySize

      private final int keySize
    • supported

      private final boolean supported
    • keyPairGenerator

      private final KeyPairGenerator keyPairGenerator
    • keyFactory

      private final KeyFactory keyFactory
    • encodedPublicKeyPrefix

      private final byte[] encodedPublicKeyPrefix
  • Constructor Details

    • MontgomeryCurve

      private MontgomeryCurve(String algorithm, int keySize, byte[] encodedPublicKeyPrefix)
  • Method Details