Fast, secure cryptographic primitives in a ZIO & ZIO Streams friendly package. ZIO Crypto is a ZIO-idiomatic wrapper over Java's basic cryptographic functions. It provides hashing, secure random generation, and HMAC signatures and verifications.
We wish to have as few dependencies as possible this project. So, when cryptographic primitives are available via Java built-ins, we opt to use them.
However, more than not having dependencies, we do not want to offer implementations of any cryptographic primitives. So, when a new primitive is required and not available via a Java built-in, we use a package. Services using these new packages should be added under new zio.crypto
Maven packages.
We wish to offer the best-practice algorithms according to National Institute of Standards and Technology (NIST).
One common form of error in security is using a non-recommended algorithm with the correct interface. In an effort to keep our library easy-to-use, we try to limit the number of algorithms offered to NIST-recommended algorithms and limit less well-known and less well-used algorithms.
libraryDependencies += "dev.zio" %% "zio-crypto" % "<version>"
Learn more on the ZIO Crypto homepage!
For the general guidelines, see ZIO contributor's guide.
See the Code of Conduct