| package org.bouncycastle.pqc.crypto; |
| |
| |
| import org.bouncycastle.crypto.CipherParameters; |
| import org.bouncycastle.crypto.InvalidCipherTextException; |
| |
| /** |
| * Base interface for a PQC encryption algorithm. |
| */ |
| public interface MessageEncryptor |
| { |
| |
| /** |
| * |
| * @param forEncrypting true if we are encrypting a signature, false |
| * otherwise. |
| * @param param key parameters for encryption or decryption. |
| */ |
| public void init(boolean forEncrypting, CipherParameters param); |
| |
| /** |
| * |
| * @param message the message to be signed. |
| * @throws Exception |
| */ |
| public byte[] messageEncrypt(byte[] message); |
| |
| /** |
| * |
| * @param cipher the cipher text of the message |
| * @throws Exception |
| */ |
| public byte[] messageDecrypt(byte[] cipher) |
| throws InvalidCipherTextException; |
| } |