Cryptographic primitives

Ylide SDK uses the x25519-xsalsa20-poly1305 algorithm to encrypt and decrypt messages using communication keys. This scheme involves access to the sender’s private key as well as the recipient’s public key. Using the Diffie-Hellman scheme (, a one-time secret key is exchanged securely, with which the necessary information is encrypted. The recipient, using his private key and the sender’s public key, can decrypt the received information.
Under this scheme, both the private and public keys take up 32 bytes. Nonce - random data that is mixed into the content of encrypted passwords, takes up 24 bytes.
sha256 is used to hash the signature and takes up 32 bytes.
For all cryptographic primitives in the Ylide SDK, the NaCl library is used, namely its implementation TweetNaCl. This library passed an independent security audit by Cure53 in 2017 and is considered reliable.