Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zio/zio-crypto
Fast, secure cryptographic primitives in a ZIO & ZIO Streams friendly package.
https://github.com/zio/zio-crypto
scala zio
Last synced: 3 months ago
JSON representation
Fast, secure cryptographic primitives in a ZIO & ZIO Streams friendly package.
- Host: GitHub
- URL: https://github.com/zio/zio-crypto
- Owner: zio
- License: apache-2.0
- Created: 2021-02-03T15:47:13.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-04-13T18:16:09.000Z (10 months ago)
- Last Synced: 2024-04-23T05:29:26.239Z (9 months ago)
- Topics: scala, zio
- Language: Scala
- Homepage: https://zio.dev/zio-crypto
- Size: 1.63 MB
- Stars: 29
- Watchers: 9
- Forks: 12
- Open Issues: 30
-
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.
[![Experimental](https://img.shields.io/badge/Project%20Stage-Experimental-yellowgreen.svg)](https://github.com/zio/zio/wiki/Project-Stages) ![CI Badge](https://github.com/zio/zio-crypto/workflows/CI/badge.svg) [![Sonatype Snapshots](https://img.shields.io/nexus/s/https/oss.sonatype.org/dev.zio/zio-crypto_2.13.svg?label=Sonatype%20Snapshot)](https://oss.sonatype.org/content/repositories/snapshots/dev/zio/zio-crypto_2.13/) [![ZIO Crypto](https://img.shields.io/github/stars/zio/zio-crypto?style=social)](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)