Package org.bouncycastle.jcajce.provider.asymmetric.ec

## Class GMSignatureSpi

- java.lang.Object
- - java.security.SignatureSpi
  - - org.bouncycastle.jcajce.provider.asymmetric.ec.GMSignatureSpi

- Direct Known Subclasses:
    `GMSignatureSpi.sha256WithSM2`, `GMSignatureSpi.sm3WithSM2`

      public class GMSignatureSpi
      extends java.security.SignatureSpi

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `GMSignatureSpi.sha256WithSM2` |
    `static class` | `GMSignatureSpi.sm3WithSM2` |

  - ### Field Summary

    - ### Fields inherited from class java.security.SignatureSpi

      `appRandom`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected java.lang.Object` | `engineGetParameter​(java.lang.String param)` |
    `protected java.security.AlgorithmParameters` | `engineGetParameters()` |
    `protected void` | `engineInitSign​(java.security.PrivateKey privateKey)` |
    `protected void` | `engineInitVerify​(java.security.PublicKey publicKey)` |
    `protected void` | `engineSetParameter​(java.lang.String param, java.lang.Object value)` |
    `protected void` | `engineSetParameter​(java.security.spec.AlgorithmParameterSpec params)` |
    `protected byte[]` | `engineSign()` |
    `protected void` | `engineUpdate​(byte b)` |
    `protected void` | `engineUpdate​(byte[] bytes, int off, int length)` |
    `protected boolean` | `engineVerify​(byte[] bytes)` |

    - ### Methods inherited from class java.security.SignatureSpi

      `clone, engineInitSign, engineSign, engineUpdate, engineVerify`

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

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

- - ### Method Detail

    - #### engineInitVerify

          protected void engineInitVerify​(java.security.PublicKey publicKey)
                                   throws java.security.InvalidKeyException

      Specified by:
        `engineInitVerify` in class `java.security.SignatureSpi`
      Throws:
        `java.security.InvalidKeyException`

    - #### engineInitSign

          protected void engineInitSign​(java.security.PrivateKey privateKey)
                                 throws java.security.InvalidKeyException

      Specified by:
        `engineInitSign` in class `java.security.SignatureSpi`
      Throws:
        `java.security.InvalidKeyException`

    - #### engineUpdate

          protected void engineUpdate​(byte b)
                               throws java.security.SignatureException

      Specified by:
        `engineUpdate` in class `java.security.SignatureSpi`
      Throws:
        `java.security.SignatureException`

    - #### engineUpdate

          protected void engineUpdate​(byte[] bytes,
                                      int off,
                                      int length)
                               throws java.security.SignatureException

      Specified by:
        `engineUpdate` in class `java.security.SignatureSpi`
      Throws:
        `java.security.SignatureException`

    - #### engineSign

          protected byte[] engineSign()
                               throws java.security.SignatureException

      Specified by:
        `engineSign` in class `java.security.SignatureSpi`
      Throws:
        `java.security.SignatureException`

    - #### engineVerify

          protected boolean engineVerify​(byte[] bytes)
                                  throws java.security.SignatureException

      Specified by:
        `engineVerify` in class `java.security.SignatureSpi`
      Throws:
        `java.security.SignatureException`

    - #### engineSetParameter

          protected void engineSetParameter​(java.security.spec.AlgorithmParameterSpec params)
                                     throws java.security.InvalidAlgorithmParameterException

      Overrides:
        `engineSetParameter` in class `java.security.SignatureSpi`
      Throws:
        `java.security.InvalidAlgorithmParameterException`

    - #### engineGetParameters

          protected java.security.AlgorithmParameters engineGetParameters()

      Overrides:
        `engineGetParameters` in class `java.security.SignatureSpi`

    - #### engineSetParameter

          protected void engineSetParameter​(java.lang.String param,
                                            java.lang.Object value)

      Specified by:
        `engineSetParameter` in class `java.security.SignatureSpi`

    - #### engineGetParameter

          protected java.lang.Object engineGetParameter​(java.lang.String param)

      Specified by:
        `engineGetParameter` in class `java.security.SignatureSpi`