________________________________________ \__ ___/ _____/\_ _____/\_ ___ \ | | \_____ \ | __)_ / \ \/ | | / \ | \\ \____ |____| /_______ //_______ / \______ / \/ \/ \/ For the current progress, please refer to the RoadMap
For version changes and additions, including breaking changes, see either release notes or the Version Changes page.
Windows™® is not supported.
Feel free to fork the project and add your own windows support.
Our Notation for versions is:
X.X.X ^ ^ ^____Minor | |______Major |________Complete redesign (i.e scalaz 7 vs 8) All x.x.x-Mx releases are milestone releases. Thus, we do not guarantee binary compatibility or no api-breakage until a concrete version(i.e 0.0.1). We aim to keep userland-apis relatively stable, but internals shift as we find better/more performant abstractions.
We will guarantee compatibility between minor versions (i.e 0.0.1 => 0.0.2) but not major versions (0.0.1 => 0.1.0)
0.0.1-M11 is here for scala 2.12+ and Cats 1.0.1!
To get started, if you are on sbt 0.13.16+, add
| Name | Description | Examples |
|---|---|---|
| tsec-common | Common crypto utilities | |
| tsec-password | Password hashers: BCrypt and Scrypt | here |
| tsec-cipher-jca | Symmetric encryption utilities | here |
| tsec-cipher-bouncy | Symmetric encryption utilities | here |
| tsec-mac | Message Authentication | here |
| tsec-signatures | Digital signatures | here |
| tsec-hash-jca | Message Digests (Hashing) | here |
| tsec-hash-bouncy | Message Digests (Hashing) | here |
| tsec-libsodium | Nicely-typed Libsodium JNI bridge | here |
| tsec-jwt-mac | JWT implementation for Message Authentication signatures | here |
| tsec-jwt-sig | JWT implementation for Digital signatures | here |
| tsec-http4s | Http4s Request Authentication and Authorization | here |
To include any of these packages in your project use:
val tsecV = "0.0.1-M11" libraryDependencies ++= Seq( "io.github.jmcardon" %% "tsec-common" % tsecV, "io.github.jmcardon" %% "tsec-password" % tsecV, "io.github.jmcardon" %% "tsec-cipher-jca" % tsecV, "io.github.jmcardon" %% "tsec-cipher-bouncy" % tsecV, "io.github.jmcardon" %% "tsec-mac" % tsecV, "io.github.jmcardon" %% "tsec-signatures" % tsecV, "io.github.jmcardon" %% "tsec-hash-jca" % tsecV, "io.github.jmcardon" %% "tsec-hash-bouncy" % tsecV, "io.github.jmcardon" %% "tsec-libsodium" % tsecV, "io.github.jmcardon" %% "tsec-jwt-mac" % tsecV, "io.github.jmcardon" %% "tsec-jwt-sig" % tsecV, "io.github.jmcardon" %% "tsec-http4s" % tsecV )See CONTRIBUTING.md
We use log4s which is a logging facade over SLF4J. This implies you need to add a binding to your classpath. Check https://www.slf4j.org/codes.html#StaticLoggerBinder
Robert Soeldner (Contributor/Maintainer)
Christopher Davenport(Contributor/Maintainer)
Harrison Houghton(Contributor/Maintainer)
Bjørn Madsen (Contributor)
André Rouél(Contributor)
Edmund Noble (For the dank tagless)
Fabio Labella (For the great FP help)
Will Sargent (Security Discussions)