“Digital Signatures provide a digital fingerprint that allows a recipient to authenticate the message sender and its integrity.”
Digital Signatures explained: https://en.wikipedia.org/wiki/Digital_signature
Don’t be surprised, if using TweetNaCL.js for asymmetric encryption/decryptionwas easy, signing and verifying messages suppose to be even simpler.
TweetNaCL uses “ed25519” as signature system, never heard about it?
Ed25519 signatures are elliptic-curve signatures, carefully engineered at several levels of design and implementation to achieve very high speeds without compromising security.
This system has a 2¹²⁸ security target; breaking it has similar difficulty to breaking NIST P-256, RSA with ~3000-bit keys, strong 128-bit block ciphers, etc. The best attacks known actually cost more than 2¹⁴⁰ bit operations on average, and degrade quadratically in success probability as the number of bit operations drops.
My two cents on usability