Skip to content

Tm/seed pub enc#3380

Open
tmontaigu wants to merge 3 commits intomainfrom
tm/seed-pub-enc
Open

Tm/seed pub enc#3380
tmontaigu wants to merge 3 commits intomainfrom
tm/seed-pub-enc

Conversation

@tmontaigu
Copy link
Contributor

@tmontaigu tmontaigu commented Mar 10, 2026

This allows to create CompactCiphertextList and
ProvenCompactCiphertextList using a seed, so that the
encryption can be reproduced

  • Follows NIST submission:
  • Create XofSeed from some seed bytes
  • Then init a NoiseRandomGenerator from the XofSeed
  • Use the gnerator to do the public encryption
  • When a zk proof is needed, for each chunk create the seed for the
    zk-proof by taking the next 16 bytes of noise_random_generator.
    This is custom to tfhe-rs as NIST submission does not cover this case
  • JS API + tests included
  • Backward compatibility tests

Backward compatibility tests are included, as since this produces seeded
data, we need to be able to guarantee backward compatibility.

====
AI used for the tests

@cla-bot cla-bot bot added the cla-signed label Mar 10, 2026
@tmontaigu tmontaigu force-pushed the tm/seed-pub-enc branch 3 times, most recently from 5e15205 to 52c812a Compare March 11, 2026 11:49
This allows to create CompactCiphertextList and
ProvenCompactCiphertextList using a seed, so that the
encryption can be reproduced

* Follows NIST submission:
 - Create XofSeed from some seed bytes
 - Then init a NoiseRandomGenerator from the XofSeed
 - Use the gnerator to do the public encryption
 - When a zk proof is needed, for each chunk create the seed for the
   zk-proof by taking the next 16 bytes of noise_random_generator.
   This is custom to tfhe-rs as NIST submission does not cover this case
* JS API + tests included
* Backward compatibility tests

Backward compatibility tests are included, as since this produces seeded
data, we need to be able to guarantee backward compatibility.
@tmontaigu tmontaigu marked this pull request as ready for review March 11, 2026 13:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant