Package org.bouncycastle.bcpg
Class ECSecretBCPGKey
java.lang.Object
org.bouncycastle.bcpg.BCPGObject
org.bouncycastle.bcpg.ECSecretBCPGKey
- All Implemented Interfaces:
BCPGKey,org.bouncycastle.util.Encodable
Base class for an EC Secret Key.
This type is for use with
PublicKeyAlgorithmTags.ECDH or PublicKeyAlgorithmTags.ECDSA.
The specific curve is identified by providing an OID.
Regarding X25519, X448, consider the following:
ECDH keys using curve448 are unspecified.
ECDH secret keys using curve25519 use big-endian MPI encoding, contrary to X25519SecretBCPGKey which uses
native encoding.
Modern implementations use dedicated key types X25519SecretBCPGKey, X448SecretBCPGKey along with
dedicated algorithm tags PublicKeyAlgorithmTags.X25519, PublicKeyAlgorithmTags.X448.
If you want to be compatible with legacy applications however, you should use this class instead.
Note though, that for v6 keys, X25519SecretBCPGKey or X448SecretBCPGKey MUST be used for X25519, X448.- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidencode(BCPGOutputStream out) byte[]return the standard PGP encoding of the key.return "PGP"getX()
-
Constructor Details
-
ECSecretBCPGKey
- Parameters:
in-- Throws:
IOException
-
ECSecretBCPGKey
- Parameters:
x-
-
-
Method Details
-
getFormat
return "PGP" -
getEncoded
public byte[] getEncoded()return the standard PGP encoding of the key.- Specified by:
getEncodedin interfaceBCPGKey- Specified by:
getEncodedin interfaceorg.bouncycastle.util.Encodable- Overrides:
getEncodedin classBCPGObject- Returns:
- byte[]
- See Also:
-
encode
- Specified by:
encodein classBCPGObject- Throws:
IOException
-
getX
- Returns:
- x
-