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

[SIOP] Add missing enc/alg algorithms to IANA #6

Open
awoie opened this issue Jul 12, 2019 · 6 comments
Open

[SIOP] Add missing enc/alg algorithms to IANA #6

awoie opened this issue Jul 12, 2019 · 6 comments
Labels
did-authn-siop Issues related to the DID AuthN SIOP spec

Comments

@awoie
Copy link
Member

awoie commented Jul 12, 2019

Add support for ECDH-ES (+ X25519) / XSalsa20-Poly1305 and ChaCha20-Poly1305 to JOSE/ IANA registry.

@awoie awoie added the did-authn-siop Issues related to the DID AuthN SIOP spec label Jul 12, 2019
@kdenhartog
Copy link

For reference, the Chacha20-poly1305/XChacha20-poly1305 has been described in an internet draft. We just need to get it officially registered in IANA.

https://tools.ietf.org/html/draft-amringer-jose-chacha-00

Also, X25519/ed25519 are defined in RFC 8037, so we should be good on that.

The only thing left to spec out would be the description of XSalsa20/Salsa20 similar to how it's done in RFC 7539 and the to register it in IANA.

@kdenhartog
Copy link

Update: XSalsa20/Salsa20 couldn't be added because it's only an Authenticated Encryption (AE) algorithm not an Authenticated Encryption Additional Data (AEAD) algorithm.

@awoie
Copy link
Member Author

awoie commented Aug 1, 2019

Yes, that is unfortunate. Because this means we cannot use TweetNacl which offers browser-friendly libraries (around 20KB). TweetNacl does not have support for XChacha or any other AEAD defined AEAD construction, only AE (XSalsa20Poly1305) which is a requirement of JWEs.

My understanding is that we are currently looking into three different options:

  1. using stablelib, or other alternatives
  2. creating a smaller wasm for libsodium (currently around 180KB which is too big for web browsers on mobile devices)
  3. stripping out unneeded code from libsodium

@kdenhartog @pelle In all cases, we will have to provide the code/binary in DIF. Is this correct?

@awoie
Copy link
Member Author

awoie commented Aug 1, 2019

@pelle @kdenhartog The TweetNacl author mentions that stablelib might not be
a good fit for JWE either: dchest/tweetnacl-js#169. Are we giving it a try regardless?

@OR13
Copy link

OR13 commented Aug 1, 2019

Came across this, not sure if its useful. https://bcoin.io/docs/net_bip151.js.html

There is also the original RFC for ECDH-ES with x25519

https://tools.ietf.org/html/rfc8037

IMO, the signature suites, key exchanges, or other protocol stuff that is not currently supported should be tracked one a case by case bases, with a single ticket linking to all available documentation.

These things don't seem to be blocking for SIOP.

@awoie
Copy link
Member Author

awoie commented Dec 18, 2019

Locking this discussion. Copied issue to new repository: decentralized-identity/did-siop#6

@kdenhartog kdenhartog removed their assignment May 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
did-authn-siop Issues related to the DID AuthN SIOP spec
Projects
None yet
Development

No branches or pull requests

3 participants