https://github.com/zio-archive/zio-crypto
Fast, secure cryptographic primitives in a ZIO & ZIO Streams friendly package.
https://github.com/zio-archive/zio-crypto
scala zio
Last synced: 6 months ago
JSON representation
Fast, secure cryptographic primitives in a ZIO & ZIO Streams friendly package.
- Host: GitHub
- URL: https://github.com/zio-archive/zio-crypto
- Owner: zio-archive
- License: apache-2.0
- Archived: true
- Created: 2021-02-03T15:47:13.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-09-04T07:19:38.000Z (about 1 year ago)
- Last Synced: 2025-03-23T05:41:41.081Z (7 months ago)
- Topics: scala, zio
- Language: Scala
- Homepage: https://zio.dev/zio-crypto
- Size: 1.63 MB
- Stars: 31
- Watchers: 8
- Forks: 13
- Open Issues: 32
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
[//]: # (This file was autogenerated using `zio-sbt-website` plugin via `sbt generateReadme` command.)
[//]: # (So please do not edit it manually. Instead, change "docs/index.md" file or sbt setting keys)
[//]: # (e.g. "readmeDocumentation" and "readmeSupport".)# ZIO Crypto
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.
[](https://github.com/zio/zio/wiki/Project-Stages)  [](https://oss.sonatype.org/content/repositories/snapshots/dev/zio/zio-crypto_2.13/) [](https://github.com/zio/zio-crypto)
## Project Goals
### Cryptographic Implementations and Dependencies
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.
### NIST-Recommendations and Correctness
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.
## Installation
```scala
libraryDependencies += "dev.zio" %% "zio-crypto" % ""
```## Documentation
Learn more on the [ZIO Crypto homepage](https://zio.dev/zio-crypto)!
## Contributing
For the general guidelines, see ZIO [contributor's guide](https://zio.dev/about/contributing).
## Code of Conduct
See the [Code of Conduct](https://zio.dev/about/code-of-conduct)
## Support
Come chat with us on [![Badge-Discord]][Link-Discord].
[Badge-Discord]: https://img.shields.io/discord/629491597070827530?logo=discord "chat on discord"
[Link-Discord]: https://discord.gg/2ccFBr4 "Discord"## License
[License](LICENSE)