| Crates.io | polyfuzzy |
| lib.rs | polyfuzzy |
| version | 0.5.0 |
| created_at | 2025-04-14 10:02:06.226841+00 |
| updated_at | 2025-05-02 15:34:18.797943+00 |
| description | Fuzzy message detection with randomized and compact keys |
| homepage | https://github.com/anoma/shielded-state-sync |
| repository | https://github.com/anoma/shielded-state-sync |
| max_upload_size | |
| id | 1632601 |
| size | 79,121 |
Synchronize shielded messages using fuzzy message detection (FMD).
This crate supports multi-key extraction by thresholdizing the original FMD2 scheme. Refer to the ART report for details.
Knowing up to t < d detection keys leaks no information about the other d-t keys. Here t is a corruption threshold parameter passed to the multi-key extraction.
For each pair (d,t), there is an associated set P(d,t) of valid leaked and filtering rates (p_l,p_f).
p_l:=2^{-n} and n is the number of (different) secret subkeys across any t detection keys,p_f:=2^{-δ}and δ is the total number of secret subkeys in the d detection keys.Thus, the leaked rate is the false-positive rate at which any coalition of t servers can filter. The filtering rate is the false-positive rate at which the receiver can filter, after receiving all the filters from the d servers.
Two implementations are provided. The compact scheme generates short FMD public keys, which can be randomized.
Feature serde enables serialization/deserialization of public keys, secret keys, detection keys, and flag ciphertexts.
Run make bench.
See the examples' folder.