encrypt/xchacha20 library

Classes

XChaCha20
XChaCha20withPrefix
With XChaCha20, regardless of whether with or without prefix, a block is created first with the HChaCha20 and the first and last four elements are taken from this as the new key. For the key creation the first 32 bytes are taken. The nonce is taken for the block consists of 8 zeros, followed by the remaining 16 bytes of the nonce. The encrypted text is then generated using ChaCha20 and the new key and nonce.