Comments (5)
@kdenhartog FYI: Kem:X25519HkdfSha256 and Aead:ChaCha20Poly1305 have been supported.
from hpke-js.
Ok that's good to know and understandable for simplicity. Especially good for me to get an understanding of your priorities on this project. For me, I don't have an immediate need for it (I could just use one of the other suites at first), but I'd like to ideally be able to use the library in the browser so that I can do some work on making ODoH more generic for any HTTP request and I want to try that out by building a SPA to demo it.
I suspect that the timeline of the X25519/X448 work is still going to take a year at least given that's only a draft report at this point and would expect chacha20poly1305 is going to be even further out for support in browser. Would you be open to using a library like https://github.com/StableLib/stablelib/ when in a browser environment and using those primitives? I'd be willing to add that part as a PR once I need it if so.
from hpke-js.
Would you be open to using a library like https://github.com/StableLib/stablelib/ when in a browser environment and using those primitives?
No problem. I didn't know about stablelib but it looks good, it could be an alternative until the Web Cryptography API supports them. Pull requests are welcome!
from hpke-js.
Ok sounds good - I'll go ahead and resolve this one for now and when I get around to wanting to switch over to the X25519 implementation I'll follow back up with a PR/issue to get that going. Thanks for the great work on this library and I'm really looking forward to using it!
from hpke-js.
Thank you for considering the use of this library!
Yes, I intend to support X25519/X448. However, at this time I will only support the Node.js environment. If you are planning to use the X25519/X448 only on the Node.js environment, I can change my development plan and prioritize the development of the X25519/X448.
As you probably know, the W3C Web Cryptography API standard does not support the Edwards curves. However, there seems to be a plan to support it (WICG: Secure Curves in the Web Cryptography API), so my original plan was to support X25519/X448 after the support in browsers has progressed.
In addition, I had planned to wait for Web Cryptography API support for ChaCha20/Poly1305 as well.
... however, if the need arises, I may consider supporting all of the HPKE cipher suites using like WASM-enabled primitive cipher implementations. I will consider this after quality improvement of the current implementations and CI environment development for continuous security updates.
from hpke-js.
Related Issues (20)
- Add security policy document.
- Add Bun to supported JavaScript runtimes.
- Add fastly/js-compute to supported JavaScript runtimes.
- Add JWK support to importKey. HOT 3
- Support public key encoding and decoding at the suite HOT 6
- Strange interaction with vercel/ncc HOT 1
- Publish a new npm hpke-js pkg version
- Drop support for egg.
- Add package.json.
- Replace chacha20poly1305 with noble/ciphers
- Add support for X25519Kyber768
- Question about the JS module size HOT 2
- Fix docs for deno.land. HOT 1
- suite.kemContext is not a function HOT 2
- We are using bidirectional encryption support and cannot find way to re-implement it in v1.2.3 HOT 3
- IANA codepoint for DHKEM-over-secp256k1 HOT 4
- Suggestions for Browser Extension Manifest V3 HOT 3
- Expose HKDFs as utilities HOT 1
- Cannot find module './src/cipherSuite.js' HOT 5
- Consider adding ML-KEM HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hpke-js.