org.bouncycastle.jce.provider.asymmetric.ec

## Class KeyFactory

- java.lang.Object
- - java.security.KeyFactorySpi
  - - org.bouncycastle.jce.provider.JDKKeyFactory
    - - org.bouncycastle.jce.provider.asymmetric.ec.KeyFactory

Direct Known Subclasses:
  KeyFactory.EC, KeyFactory.ECDH, KeyFactory.ECDHC, KeyFactory.ECDSA, KeyFactory.ECGOST3410, KeyFactory.ECMQV

    public class KeyFactory
    extends JDKKeyFactory

### Nested Class Summary

Nested Classes
`static class` `KeyFactory.EC`
`static class` `KeyFactory.ECDH`
`static class` `KeyFactory.ECDHC`
`static class` `KeyFactory.ECDSA`
`static class` `KeyFactory.ECGOST3410`
`static class` `KeyFactory.ECMQV`

### Nested classes/interfaces inherited from class org.bouncycastle.jce.provider.JDKKeyFactory

`JDKKeyFactory.DH, JDKKeyFactory.DSA, JDKKeyFactory.ElGamal, JDKKeyFactory.GOST3410, JDKKeyFactory.RSA, JDKKeyFactory.X509`

### Field Summary

### Fields inherited from class org.bouncycastle.jce.provider.JDKKeyFactory

`elGamalFactory`

### Method Summary

Methods
`protected java.security.PrivateKey` `engineGeneratePrivate(java.security.spec.KeySpec keySpec)`
`protected java.security.PublicKey` `engineGeneratePublic(java.security.spec.KeySpec keySpec)`
`protected java.security.spec.KeySpec` `engineGetKeySpec(java.security.Key key, java.lang.Class spec)`
`protected java.security.Key` `engineTranslateKey(java.security.Key key)`

### Methods inherited from class org.bouncycastle.jce.provider.JDKKeyFactory

`createPrivateKeyFromDERStream, createPublicKeyFromDERStream`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### engineTranslateKey

    protected java.security.Key engineTranslateKey(java.security.Key key)
                                            throws java.security.InvalidKeyException

Overrides:
  `engineTranslateKey` in class `JDKKeyFactory`
Throws:
  `java.security.InvalidKeyException`

#### engineGetKeySpec

    protected java.security.spec.KeySpec engineGetKeySpec(java.security.Key key,
                                              java.lang.Class spec)
                                                   throws java.security.spec.InvalidKeySpecException

Overrides:
  `engineGetKeySpec` in class `JDKKeyFactory`
Throws:
  `java.security.spec.InvalidKeySpecException`

#### engineGeneratePrivate

    protected java.security.PrivateKey engineGeneratePrivate(java.security.spec.KeySpec keySpec)
                                                      throws java.security.spec.InvalidKeySpecException

Overrides:
  `engineGeneratePrivate` in class `JDKKeyFactory`
Throws:
  `java.security.spec.InvalidKeySpecException`

#### engineGeneratePublic

    protected java.security.PublicKey engineGeneratePublic(java.security.spec.KeySpec keySpec)
                                                    throws java.security.spec.InvalidKeySpecException

Overrides:
  `engineGeneratePublic` in class `JDKKeyFactory`
Throws:
  `java.security.spec.InvalidKeySpecException`