Package org.bouncycastle.pqc.crypto

## Interface MessageEncryptor

- All Known Implementing Classes:
    `McElieceCipher`, `McElieceFujisakiCipher`, `McElieceKobaraImaiCipher`, `McEliecePointchevalCipher`

      public interface MessageEncryptor

  Base interface for a PQC encryption algorithm.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `init​(boolean forEncrypting, CipherParameters param)` |
    `byte[]` | `messageDecrypt​(byte[] cipher)` |
    `byte[]` | `messageEncrypt​(byte[] message)` |

- - ### Method Detail

    - #### init

          void init​(boolean forEncrypting,
                    CipherParameters param)

      Parameters:
        `forEncrypting` - true if we are encrypting a signature, false otherwise.
        `param` - key parameters for encryption or decryption.

    - #### messageEncrypt

          byte[] messageEncrypt​(byte[] message)

      Parameters:
        `message` - the message to be signed.

    - #### messageDecrypt

          byte[] messageDecrypt​(byte[] cipher)
                         throws InvalidCipherTextException

      Parameters:
        `cipher` - the cipher text of the message
      Throws:
        `InvalidCipherTextException`