Introduction

On this website we provide specifications, implementations, documentation and updates about a novel class of block ciphers and hash functions, designed for MPC, zero-knowledge, SNARK and STARK applications.

MiMC

MiMC is a family of block ciphers and hash functions primarily designed for SNARK applications. Its simple algebraic structure is advantageous for applications which benefit from a low multiplicative complexity. Details about MiMC can be found here.

GMiMC, Starkad and Poseidon

GMiMC borrows MiMC's core component -- a low-degree round function -- and uses it in various unbalanced Feistel constructions. More details about this approach can be found here. While MiMC and GMiMC are defined as block ciphers, Starkad and Poseidon are hash functions using the unkeyed permutations Starkadπ and Poseidonπ. They are built using a novel SPN approach to further improve the applicability in the use cases mentioned above. Both Starkad and Poseidon are described in more detail here.

StarkWare Challenge

StarkWare is going to announce a challenge to better understand the security of MiMC, GMiMC, Starkad, Poseidon, Vision, and Rescue. The website of this challenge can be found here, and a more detailed description is given here.