Package org.bouncycastle.pqc.jcajce.provider.mceliece

## Class McElieceCCA2Primitives

- java.lang.Object
- - org.bouncycastle.pqc.jcajce.provider.mceliece.McElieceCCA2Primitives

-     public final class McElieceCCA2Primitives
      extends java.lang.Object

  Core operations for the CCA-secure variants of McEliece.

- - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static GF2Vector[]` | `decryptionPrimitive​(McElieceCCA2PrivateKeyParameters privKey, GF2Vector c)` |
    `static GF2Vector[]` | `decryptionPrimitive​(BCMcElieceCCA2PrivateKey privKey, GF2Vector c)` | The McEliece decryption primitive.
    `static GF2Vector` | `encryptionPrimitive​(McElieceCCA2PublicKeyParameters pubKey, GF2Vector m, GF2Vector z)` |
    `static GF2Vector` | `encryptionPrimitive​(BCMcElieceCCA2PublicKey pubKey, GF2Vector m, GF2Vector z)` | The McEliece encryption primitive.

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

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

- - ### Method Detail

    - #### encryptionPrimitive

          public static GF2Vector encryptionPrimitive​(BCMcElieceCCA2PublicKey pubKey,
                                                      GF2Vector m,
                                                      GF2Vector z)

      The McEliece encryption primitive.
      Parameters:
        `pubKey` - the public key
        `m` - the message vector
        `z` - the error vector
      Returns:
        `m*G + z`

    - #### encryptionPrimitive

          public static GF2Vector encryptionPrimitive​(McElieceCCA2PublicKeyParameters pubKey,
                                                      GF2Vector m,
                                                      GF2Vector z)

    - #### decryptionPrimitive

          public static GF2Vector[] decryptionPrimitive​(BCMcElieceCCA2PrivateKey privKey,
                                                        GF2Vector c)

      The McEliece decryption primitive.
      Parameters:
        `privKey` - the private key
        `c` - the ciphertext vector `c = m*G + z`
      Returns:
        the message vector `m` and the error vector `z`

    - #### decryptionPrimitive

          public static GF2Vector[] decryptionPrimitive​(McElieceCCA2PrivateKeyParameters privKey,
                                                        GF2Vector c)