Repository navigation
Home
Welcome to the mystic-crypt wiki!
The mystic-crypt helps developers to encrypt and decrypt text, files and streams with custom cipher objects.
You can also create random passwords with a specified length and than encrypt and hash them.
You can also obfuscate text files with key rules that are specified in a custom map.
mystic-crypt requires JDK 25 or newer, at both build and runtime.
Beyond the classic AES/RSA encryption this wiki mostly covers, mystic-crypt also ships modern,
JDK-native primitives (Ed25519/X25519, the javax.crypto.KEM API) and NIST post-quantum
algorithms (ML-KEM, ML-DSA, SLH-DSA), plus Argon2id password hashing, ChaCha20-Poly1305, and more -
see Modern and post-quantum cryptography
for an overview, or the repository's
docs/CRYPTO_CAPABILITIES.md
for the full, continuously-verified capability matrix across the whole library family.
We use lombok that provides several annotations like builders, getters, setters, extension methods and constructors that are generated in backround with a java agent. This makes the code more clean and readable. If you don't know lombok, the provided annotations should be self explaining. If you want to see what lombok generates with the annotations you can use the delombok maven plugin. For the complete feature overview of lombok visit the website.