# Class CMKeyStore

java.lang.Object
java.security.KeyStoreSpi
com.io7m.canonmill.core.internal.CMKeyStore

public final class CMKeyStore extends KeyStoreSpi
The main keystore implementation.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `CMKeyStore()`
  The main keystore implementation.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Enumeration<String>`
  `engineAliases()`
  `boolean`
  `engineContainsAlias(String alias)`
  `void`
  `engineDeleteEntry(String alias)`
  `Certificate`
  `engineGetCertificate(String alias)`
  `String`
  `engineGetCertificateAlias(Certificate cert)`
  `Certificate[]`
  `engineGetCertificateChain(String alias)`
  `Date`
  `engineGetCreationDate(String alias)`
  `Key`
  `engineGetKey(String alias, char[] password)`
  `boolean`
  `engineIsCertificateEntry(String alias)`
  `boolean`
  `engineIsKeyEntry(String alias)`
  `void`
  `engineLoad(InputStream stream, char[] password)`
  `void`
  `engineSetCertificateEntry(String alias, Certificate cert)`
  `void`
  `engineSetKeyEntry(String alias, byte[] key, Certificate[] chain)`
  `void`
  `engineSetKeyEntry(String alias, Key key, char[] password, Certificate[] chain)`
  `int`
  `engineSize()`
  `void`
  `engineStore(OutputStream stream, char[] password)`

  ### Methods inherited from class KeyStoreSpi

  `engineEntryInstanceOf, engineGetAttributes, engineGetEntry, engineLoad, engineProbe, engineSetEntry, engineStore`

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### CMKeyStore

    public CMKeyStore()
    The main keystore implementation.

- ## Method Details

  - ### engineGetKey

    public Key engineGetKey(String alias, char[] password)
    Specified by:
      `engineGetKey` in class `KeyStoreSpi`

  - ### engineGetCertificateChain

    public Certificate[] engineGetCertificateChain(String alias)
    Specified by:
      `engineGetCertificateChain` in class `KeyStoreSpi`

  - ### engineGetCertificate

    public Certificate engineGetCertificate(String alias)
    Specified by:
      `engineGetCertificate` in class `KeyStoreSpi`

  - ### engineGetCreationDate

    public Date engineGetCreationDate(String alias)
    Specified by:
      `engineGetCreationDate` in class `KeyStoreSpi`

  - ### engineSetKeyEntry

    public void engineSetKeyEntry(String alias, Key key, char[] password, Certificate[] chain)
    Specified by:
      `engineSetKeyEntry` in class `KeyStoreSpi`

  - ### engineSetKeyEntry

    public void engineSetKeyEntry(String alias, byte[] key, Certificate[] chain)
    Specified by:
      `engineSetKeyEntry` in class `KeyStoreSpi`

  - ### engineSetCertificateEntry

    public void engineSetCertificateEntry(String alias, Certificate cert)
    Specified by:
      `engineSetCertificateEntry` in class `KeyStoreSpi`

  - ### engineDeleteEntry

    public void engineDeleteEntry(String alias)
    Specified by:
      `engineDeleteEntry` in class `KeyStoreSpi`

  - ### engineAliases

    public Enumeration<String> engineAliases()
    Specified by:
      `engineAliases` in class `KeyStoreSpi`

  - ### engineContainsAlias

    public boolean engineContainsAlias(String alias)
    Specified by:
      `engineContainsAlias` in class `KeyStoreSpi`

  - ### engineSize

    public int engineSize()
    Specified by:
      `engineSize` in class `KeyStoreSpi`

  - ### engineIsKeyEntry

    public boolean engineIsKeyEntry(String alias)
    Specified by:
      `engineIsKeyEntry` in class `KeyStoreSpi`

  - ### engineIsCertificateEntry

    public boolean engineIsCertificateEntry(String alias)
    Specified by:
      `engineIsCertificateEntry` in class `KeyStoreSpi`

  - ### engineGetCertificateAlias

    public String engineGetCertificateAlias(Certificate cert)
    Specified by:
      `engineGetCertificateAlias` in class `KeyStoreSpi`

  - ### engineStore

    public void engineStore(OutputStream stream, char[] password) throws IOException
    Specified by:
      `engineStore` in class `KeyStoreSpi`
    Throws:
      `IOException`

  - ### engineLoad

    public void engineLoad(InputStream stream, char[] password) throws IOException
    Specified by:
      `engineLoad` in class `KeyStoreSpi`
    Throws:
      `IOException`