SignerWithRecovery.java revision b61a96e7ef1a78acf013bbf08fe537e5b5f129ca
1b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampackage org.bouncycastle.crypto;
2b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
3b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam/**
4b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam * Signer with message recovery.
5b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam */
6b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampublic interface SignerWithRecovery
7b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    extends Signer
8b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam{
9b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    /**
10b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     * Returns true if the signer has recovered the full message as
11b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     * part of signature verification.
12b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     *
13b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     * @return true if full message recovered.
14b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     */
15b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    public boolean hasFullMessage();
16b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
17b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    /**
18b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     * Returns a reference to what message was recovered (if any).
19b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     *
20b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     * @return full/partial message, null if nothing.
21b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     */
22b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    public byte[] getRecoveredMessage();
23b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam}
24