This library a work-in-progress.
uniformity
is a Clojure(Script) library for easy-to-use cryptographic primitives
and utilities, aiming for uniform behavior between Clojure platform targets.
The library should function the same whether you're using it on the JVM
or with ClojureScript. CLR support planned.
The library is effectively a wrapper for the following:
java.security.SecureRandom
and javax.crypto
window.crypto.getRandomValues
and the SubtleCrypto Web API
uniformity.crypto.core
provides asynchronous AES-GCM, RSA, and PBKDF2 functionality.
See documentation.
uniformity.crypto.cryptopack
provides a high-level API for encrypting bytes
and strings with AES-GCM; using passwords, symmetric keys, or RSA keys.
Passwords are treated as UTF-8 strings and processed with 100,000 rounds of
PBKDF2-HMAC-SHA256 by default.
Output can be chosen to be a Clojure map, JSON, or msgpack. See documentation.
uniformity.random
contains functions for crytographically random:
uniformity.hash
provides MD5 and SHA2 family hashing.
See examples.
uniformity.util
, at the moment, is largely for:
Input of encoding functions and output of decoding functions are byte arrays (byte[] on JVM, Uint8Array in JS). See documentation.
Can you improve this documentation?Edit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close