Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Roadmap #10

Open
21 of 34 tasks
franky47 opened this issue Dec 1, 2022 · 0 comments
Open
21 of 34 tasks

Roadmap #10

franky47 opened this issue Dec 1, 2022 · 0 comments

Comments

@franky47
Copy link
Contributor

franky47 commented Dec 1, 2022

Documentation

  • General
    • Add list of goals and non-goals for the project
    • Identify use-cases and non-use cases
    • Identify threat models (based on who they apply to: end-users, application developers, e2esdk developers)
  • Cryptography
    • Encodings
    • Signatures
    • Identity
    • Public key authentication
    • Cipher suite
    • Keychain items
    • Sharing
    • Form data handling
  • Components

Cryptography

  • Password derivation (Argon2id) for authentication ([devtools] login with invalid creds #19)
  • Secret splitting (Shamir Secret Sharing) for recovery
  • PAKE for online authentication (OPAQUE)
  • Form data handling
  • Separate Consolidate cryptographic layer:
    • @e2esdk/crypto-core for common code (codecs, utils)
    • @e2esdk/crypto-lite for TweetNaCl-based ingestion operations (sealed box, secret box)
    • @e2esdk/crypto-sodium for complete Sodium-based operations
    • @e2esdk/crypto-forms for higher-level form data encryption
      Note: it is preferable to focus on a single ciphersuite to avoid rolling out missing algorithms on a "lite" version that will only save a few KiB. So everything should be part of a single cryptographic library.

Client

Server

  • Add audit logs

Devtools

  • Investigate passing a live Client as "props" rather than creating a dedicated one
  • Fix usage in SSR frameworks (Next.js)
  • Allow configuring position & size, for static panel vs drawer behaviour

Examples

Other

  • Add CI
  • Investigate Changesets for versioning packages -> Using semantic release instead
  • Investigate Verdaccio for local NPM deployment testing (Add Verdaccio to test package publishing #11)
  • Deploy to SocialGouv's internal NPM registry for testing -> deployed to public NPM registry, under the @socialgouv organisation
  • Deploy Docker image to SocialGouv's container registry
  • Add CD
@franky47 franky47 pinned this issue Dec 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant