deck-farfalle

Crates.iodeck-farfalle
lib.rsdeck-farfalle
version0.1.0
sourcesrc
created_at2023-07-10 08:57:21.377706
updated_at2023-07-10 08:57:21.377706
descriptionGeneric Farfalle construction and Kravatte and Xoofff instantiations in the `crypto-permutation` framework
homepage
repositoryhttps://github.com/niluxv/permutation_based_crypto
max_upload_size
id912744
size33,721
(niluxv)

documentation

README

deck-farfalle License: MIT OR Apache-2.0 deck-farfalle on crates.io deck-farfalle on docs.rs Source Code Repository Rust Version: ^1.65

Generic Farfalle construction which is generic over the cryptographic permutation and Kravatte and Xoofff instantiations.

Farfalle: Permutation -> DeckFunction

This crate contains an implementation of the Farfalle construction, Farfalle. It is generic over the permutations and rolling functions used, through the FarfalleConfig trait. The Farfalle struct is intended to be used through the crypto_permutation::DeckFunction trait that it implements.

Note: No security audits of this crate have ever been performed. Use at your own risk!

The kravatte and xoofff crate-features enable the Kravatte and Xoofff instantiations of Farfalle, in the kravatte and xoofff modules respectively. These also contain the rolling functions that are used by these instantiations, so it is easy create your own custom instantiation of Farfalle that differs from Kravatte or Xoofff in the round count for the permutation (in case you think the advised parameters are not conservative enough).

Features

  • kravatte: Enables the kravatte module.

  • xoofff: Enables the xoofff module.

  • debug: Used for tests. Don’t use!

Testing

The Kravatte instantiation has been tested against the kravatte python package. The Xoofff instantiation has been tested against the xoofff crate.

Commit count: 12

cargo fmt