This repository has been archived by the owner on Nov 29, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 58
RoadMap
Jose C edited this page Nov 20, 2017
·
19 revisions
Below is our general roadmap:
Upcoming Feature Overview (this may change with slightly smaller releases to accommodate milestones in http4s, cats and related projects which tsec depends on)
- Improving tsec-http4s api.
- TSec-libsodium
- Asymmetric Ciphers
cats.evidence.Is
instances available publicly in companion object- Fix arbitrary effect in JWTMacM
- (Tentative)
tsec-libsodium
. If not, in next milestone.
Revised:
-
- [ ] OAuth2-based authenticationThis will be part of http4s (will PR myself) -
Rate limitingFabio's upperbound will focus on this.
- Authenticator moved to AuthenticatorService
- General Authenticator interface
- expiration duration changed to expiry.
- CSRF BugFixes
- JWTMac Fix Base64URL to conform to RFC7515
- Compose authenticator endpoints.
- Credentials-based authentication
- CSRF
- Improved Documentation
- Bearer Token Authenticator
- SecureRandomId generation
File hashing helpers Covered by fs2 already.
- Updated version to Cats RC1, circe 0.9.0-M2 and Http4s 0.18-M5.
- Http4s Authentication, Authorization and tests. This includes JWT(stateless and with backing store), signed cookie, encrypted cookie (Stateless and with backing store)
General:
- Sensible defaults.
JCA:
- MessageDigests
- MessageDigests Testing
- Symmetric ciphers (Missing PBE, blowfish and ARCFOUR)
- Symmetric Cipher tests
- KeyGenerators for ciphers and macs
- KeyGenerator for mac
- KeySpec
- Mac
- Mac tests
- Signatures (Relies on bouncy castle)
- Signature Tests
Password Hashing:
- BCrypt (jBCrypt)
- SCrypt (wg/scrypt)
- Password hasher tests
Server-side app goodies
- JWS/JWT implementation (WIP)
- JWT testing(Mac)
- JWT testing(Signatures)
JCA
- Asymmetric Ciphers (WIP by robert)
- Asymmetric Cipher tests
- AlgorithmParameters nailed down for every possible asymm algorithm, where useful
- SSL related stuff (backburner, low uses cases). The only people that ever need this are using it for server frameworks.
Sphlib
BouncyCastle:
- SSL related stuff (backburner, low uses cases)
- PBKDF2 (wg)
- Pure Scala BCrypt
- Pure Scala SCrypt
Reason: Don't need to reinvent the wheel, what we have is good enough
(mostly because the majority of people already contributing to this project don't use these): Server-side:
- Akka-http authentication
- Play-http authentication (Optional, play already has silhouette)
- Articles and education. There are so many different use cases: File integrity management, Token encryption, passwords (everyone and their mom is still on bcrypt and it's 2017 if anything we improve in our community it's getting rid of this).. so on and so forth. Tutorials on some of this stuff would be nice.
- Implementing some of these in pure scala, particularly the passwordhashers.