-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
implement PQ Noise from the paper #59
Comments
Hi @david415! I combined the best parts from this crate and Snow and just released the first version of Clatter, a crate which includes support for PQ extensions presented in the paper. It took quite a lot of breaking changes to get there so I decided to develop a new crate instead of trying to add support in this one or snow. With some serious effort I believe the changes could be backported here but not sure if it is worth it. |
Clatter for the win!!! Dear @jmlepisto I am very excited about your Clatter crate! Did you get paid to do this work? I feel very strongly we should all be using hybrid post quantum cryptographic protocols and that nearly all of the protocols using Noise should really switch to using PQ Noise. However I am not the PQ crypto police and if others don't want to join our party then so be it. Have you tested that Clatter can interoperate with Yawning's Nyquist's PQ experimental branch? Beyond that, the Katzenpost decryption mix network uses PQ Noise as the transport protocol between network nodes instead of something like TLS. Some of the other modern mixnet projects are either using TLS or Noise. These mix network project are currently being funded by extremely wealthy venture capitalists because the mix network is part of a larger blockchain project which attracts such investors. Anyway, Katzenpost is currently the only software project in the entire world that uses PQ Noise as far as I know. Pray tell, @jmlepisto what will you use PQ Noise for? Do you have any interest in mixnets and freeing humanity from the tyranny of traffic analysis? Years ago I wrote a rust crate that used |
@david415 thanks for your interest, cool to hear from a fellow PQ enthusiast! I do Rust and cryptography professionally but Clatter is a personal project and I did not receive any funding for it. While doing a technology study for a client a while back I couldn't find any PQ protocol frameworks that would be flexible enough and work even on most obscure targets ( I'd really love to see the world stepping towards a quantum-secure future and if Clatter plays a part in that I'm willing to improve and maintain it for years to come. I'm familiar with mixnets only on a theoretical basis but am interested to dive a bit deeper. Next thing on my plate is the Clatter-Nyquist interoperability testing (..and related fixes if needed). I'm thinking about opening a thread for development updates etc. in the Clatter discussion section so that it'll be easy to follow what's going on. |
@jmlepisto cool. keep up the good work. |
Someone should get paid to implement PQ Noise in Rust.
The paper is excellent. PQ Noise patterns are algebraic transformations from the original Noise patterns such that
the ECDH is replaced with KEM encap/decap. And it comes with a golang reference implementation:
PQ noise paper:
https://eprint.iacr.org/2022/539
Golang reference:
https://gitlab.com/yawning/nyquist/-/tree/experimental/pqnoise
The text was updated successfully, but these errors were encountered: