High-level cryptographic building blocks for Java (asymmetric and symmetric crypto, password hashing, secure tokens, signatures, etc.)