fpe
fpe copied to clipboard
Format-preserving encryption in Rust
Apologies if this is already in, but it doesn't seem to be. BinaryNumeralString can only be sized at 8 bit increments. For [my application](https://github.com/makoConstruct/mako_infinite_shuffle), having to operate at this level...
https://eprint.iacr.org/2020/1311 published a distinguisher for FF1 against binary numeral strings, that has a data complexity of $2^{2n((r-1)-\frac{1}{2}) - n}$ and a time complexity of $2^{2n((r-1)-\frac{1}{2})}$. FF1 has 10 rounds, corresponding...
This is a simple PR to allow increasing the number of Feistel rounds. It does not change the default `FF1` API (that uses 10 rounds) but offers 2 additional FF1...
FF1 Should be lightening fast, However when benchmarking, I was seeing this when speed testing (note timing was restricted to the most intensive step: `let cb = ff.encrypt(&[], &binarified_input);` )...
Current documentation on https://docs.rs/fpe/0.2.0/fpe/ is extremely sparse. The example is difficult to understand and input / outputs are not clear. suggestions: - use verbose variable names or include wiki links...