Package org.bouncycastle.jcajce.util

## Class ProviderJcaJceHelper

- java.lang.Object
- - org.bouncycastle.jcajce.util.ProviderJcaJceHelper

- All Implemented Interfaces:
    `JcaJceHelper`
  Direct Known Subclasses:
    `BCJcaJceHelper`

      public class ProviderJcaJceHelper
      extends java.lang.Object
      implements JcaJceHelper

  `JcaJceHelper` that obtains all algorithms from a specific `Provider` instance.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected java.security.Provider` | `provider` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ProviderJcaJceHelper​(java.security.Provider provider)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.security.AlgorithmParameterGenerator` | `createAlgorithmParameterGenerator​(java.lang.String algorithm)` |
    `java.security.AlgorithmParameters` | `createAlgorithmParameters​(java.lang.String algorithm)` |
    `java.security.cert.CertificateFactory` | `createCertificateFactory​(java.lang.String algorithm)` |
    `java.security.cert.CertPathBuilder` | `createCertPathBuilder​(java.lang.String algorithm)` |
    `java.security.cert.CertPathValidator` | `createCertPathValidator​(java.lang.String algorithm)` |
    `java.security.cert.CertStore` | `createCertStore​(java.lang.String type, java.security.cert.CertStoreParameters params)` |
    `javax.crypto.Cipher` | `createCipher​(java.lang.String algorithm)` |
    `java.security.MessageDigest` | `createDigest​(java.lang.String algorithm)` | Deprecated. Use createMessageDigest instead
    `javax.crypto.ExemptionMechanism` | `createExemptionMechanism​(java.lang.String algorithm)` |
    `javax.crypto.KeyAgreement` | `createKeyAgreement​(java.lang.String algorithm)` |
    `java.security.KeyFactory` | `createKeyFactory​(java.lang.String algorithm)` |
    `javax.crypto.KeyGenerator` | `createKeyGenerator​(java.lang.String algorithm)` |
    `java.security.KeyPairGenerator` | `createKeyPairGenerator​(java.lang.String algorithm)` |
    `java.security.KeyStore` | `createKeyStore​(java.lang.String type)` |
    `javax.crypto.Mac` | `createMac​(java.lang.String algorithm)` |
    `java.security.MessageDigest` | `createMessageDigest​(java.lang.String algorithm)` |
    `javax.crypto.SecretKeyFactory` | `createSecretKeyFactory​(java.lang.String algorithm)` |
    `java.security.SecureRandom` | `createSecureRandom​(java.lang.String algorithm)` |
    `java.security.Signature` | `createSignature​(java.lang.String algorithm)` |

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

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

- - ### Field Detail

    - #### provider

          protected final java.security.Provider provider

  - ### Constructor Detail

    - #### ProviderJcaJceHelper

          public ProviderJcaJceHelper​(java.security.Provider provider)

  - ### Method Detail

    - #### createCipher

          public javax.crypto.Cipher createCipher​(java.lang.String algorithm)
                                           throws java.security.NoSuchAlgorithmException,
                                                  javax.crypto.NoSuchPaddingException

      Specified by:
        `createCipher` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`
        `javax.crypto.NoSuchPaddingException`

    - #### createMac

          public javax.crypto.Mac createMac​(java.lang.String algorithm)
                                     throws java.security.NoSuchAlgorithmException

      Specified by:
        `createMac` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createKeyAgreement

          public javax.crypto.KeyAgreement createKeyAgreement​(java.lang.String algorithm)
                                                       throws java.security.NoSuchAlgorithmException

      Specified by:
        `createKeyAgreement` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createAlgorithmParameterGenerator

          public java.security.AlgorithmParameterGenerator createAlgorithmParameterGenerator​(java.lang.String algorithm)
                                                                                      throws java.security.NoSuchAlgorithmException

      Specified by:
        `createAlgorithmParameterGenerator` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createAlgorithmParameters

          public java.security.AlgorithmParameters createAlgorithmParameters​(java.lang.String algorithm)
                                                                      throws java.security.NoSuchAlgorithmException

      Specified by:
        `createAlgorithmParameters` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createKeyGenerator

          public javax.crypto.KeyGenerator createKeyGenerator​(java.lang.String algorithm)
                                                       throws java.security.NoSuchAlgorithmException

      Specified by:
        `createKeyGenerator` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createKeyFactory

          public java.security.KeyFactory createKeyFactory​(java.lang.String algorithm)
                                                    throws java.security.NoSuchAlgorithmException

      Specified by:
        `createKeyFactory` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createSecretKeyFactory

          public javax.crypto.SecretKeyFactory createSecretKeyFactory​(java.lang.String algorithm)
                                                               throws java.security.NoSuchAlgorithmException

      Specified by:
        `createSecretKeyFactory` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createKeyPairGenerator

          public java.security.KeyPairGenerator createKeyPairGenerator​(java.lang.String algorithm)
                                                                throws java.security.NoSuchAlgorithmException

      Specified by:
        `createKeyPairGenerator` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createDigest

          public java.security.MessageDigest createDigest​(java.lang.String algorithm)
                                                   throws java.security.NoSuchAlgorithmException

      Deprecated.
      Use createMessageDigest instead
      Specified by:
        `createDigest` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createMessageDigest

          public java.security.MessageDigest createMessageDigest​(java.lang.String algorithm)
                                                          throws java.security.NoSuchAlgorithmException

      Specified by:
        `createMessageDigest` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createSignature

          public java.security.Signature createSignature​(java.lang.String algorithm)
                                                  throws java.security.NoSuchAlgorithmException

      Specified by:
        `createSignature` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createCertificateFactory

          public java.security.cert.CertificateFactory createCertificateFactory​(java.lang.String algorithm)
                                                                         throws java.security.cert.CertificateException

      Specified by:
        `createCertificateFactory` in interface `JcaJceHelper`
      Throws:
        `java.security.cert.CertificateException`

    - #### createSecureRandom

          public java.security.SecureRandom createSecureRandom​(java.lang.String algorithm)
                                                        throws java.security.NoSuchAlgorithmException

      Specified by:
        `createSecureRandom` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createCertPathBuilder

          public java.security.cert.CertPathBuilder createCertPathBuilder​(java.lang.String algorithm)
                                                                   throws java.security.NoSuchAlgorithmException

      Specified by:
        `createCertPathBuilder` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createCertPathValidator

          public java.security.cert.CertPathValidator createCertPathValidator​(java.lang.String algorithm)
                                                                       throws java.security.NoSuchAlgorithmException

      Specified by:
        `createCertPathValidator` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createCertStore

          public java.security.cert.CertStore createCertStore​(java.lang.String type,
                                                              java.security.cert.CertStoreParameters params)
                                                       throws java.security.NoSuchAlgorithmException,
                                                              java.security.InvalidAlgorithmParameterException

      Specified by:
        `createCertStore` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`
        `java.security.InvalidAlgorithmParameterException`

    - #### createExemptionMechanism

          public javax.crypto.ExemptionMechanism createExemptionMechanism​(java.lang.String algorithm)
                                                                   throws java.security.NoSuchAlgorithmException

      Specified by:
        `createExemptionMechanism` in interface `JcaJceHelper`
      Throws:
        `java.security.NoSuchAlgorithmException`

    - #### createKeyStore

          public java.security.KeyStore createKeyStore​(java.lang.String type)
                                                throws java.security.KeyStoreException

      Specified by:
        `createKeyStore` in interface `JcaJceHelper`
      Throws:
        `java.security.KeyStoreException`