I want to know to how break NaCl encryption when a nonce is used more than once for a given key private key. According to PyNaCl docs:

It is VITALLY important that the nonce is a nonce, i.e. it is a number used only once for any given key. If you fail to do this, you compromise the privacy of the messages encrypted.


1 Answer 1


NaCl's public key authenticated encryption uses a stream cipher for symmetric encryption (after key derivation using Curve25519). Like all synchronous stream ciphers, it produces the same keystream when you use the same nonce.

That means you are in the same position as when a one-time pad has been reused. (Having a known plaintext would make things even easier than mentioned in that link, since it would just reveal (a part of) the keystream.)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.