+=============================================================================+
|                                                                             |
|               ***********************************************               |
|               *     POST-QUANTUM CRYPTO STANDARDIZATION     *               |
|               ***********************************************               |
|                                                                             |
|=============================================================================|
|                                                                             |
|        Proposal: Mirath                                                     |
|                                                                             |
|        Submitters (by alphabetical order):                                  |
|                  - Gora ADJ                                                 |
|                  - Nicolas ARAGON                                           |
|                  - Stefano BARBERO                                          |
|                  - Magali BARDET                                            |
|                  - Emanuele BELLINI                                         |
|                  - Loïc BIDOUX                                              |
|                  - Jesús-Javier CHI-DOMÍNGUEZ                               |
|                  - Victor DYSERYN                                           |
|                  - Andre ESSER                                              |
|                  - Thibauld FENEUIL                                         |
|                  - Philippe GABORIT                                         |
|                  - Romaric NEVEU                                            |
|                  - Matthieu RIVAIN                                          |
|                  - Luis RIVERA-ZAMARRIPA                                    |
|                  - Carlo SANNA                                              |
|                  - Jean-Pierre TILLICH                                      |
|                  - Javier VERBEL                                            |
|                  - Floyd ZWEYDINGER                                         |
|                                                                             |
|        Inventors: Same as submitters                                        |
|                                                                             |
|        Developers: Same as submitters                                       |
|                                                                             |
|        Owners: Same as submitters                                           |
|                                                                             |
+=============================================================================+

This archive is a proposal in response to NIST's call for proposal for standar-
dization of quantum-resistant digital signature schemes.

Mirath provides POST-QUANTUM SIGNATURES and targets NIST's
security levels 1, 3, and 5.

===============================================================================

This archive is organized as follows:

- KATs: Known Answer Test values and verbose outputs for each parameter set
- Reference_Implementation: Reference implementation for each parameter set
- Optimized_Implementation: Optimized implementation for each parameter set
- Supporting_Documentation: Supporting documentation

===============================================================================

1. SUBMISSION OVERVIEW
----------------------

Both reference implementation and optimized implementations provide the twelve
parameter sets as detailed in the Algorithm Specifications from the Supporting
Documentation: Mirath-XY-Z where

- Security Level: X = 1, 3, or 5
- Choices of q: Y = a or b
- Fast or Short: Z = F or S

The parameter Y=a refers to q=16, while Y=b to q=2.

2. INSTALLATION INSTRUCTIONS
----------------------------

The following pieces of software and libraries are required: gcc and openssl.

Mirath-XY-Z can be compiled in two different ways:

- Execute make mirath_XY_Z to compile a working example of the scheme.
  Run ./mirath_XY_Z to execute the scheme.
- Execute make PQCgenKAT_sign to compile the NIST KAT generator.
  Run ./PQCgenKAT_sign to generate KAT files.

3. DOCUMENTATION GENERATION
---------------------------

The following softwares are required: doxygen and bibtex.

- Run doxygen doxygen.conf to generate the code documentation
- Browse doc/html/index.html to read the documentation

4. ADDITIONAL INFORMATION
-------------------------

The public key, secret key and signature are respectively composed of (H, y),
(x) and (sm, m). Furthermore, the public key is stored as (seed1, y), while the
secret key as (seed2). To this end, the seed expander based on shake was used
along with 32/48/64 bytes seeds.

===============================================================================

The authors did their best to make this archive complete and proper.
