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

Tracking: WebAssembly support for iroh-net #2799

Open
matheus23 opened this issue Oct 10, 2024 · 3 comments
Open

Tracking: WebAssembly support for iroh-net #2799

matheus23 opened this issue Oct 10, 2024 · 3 comments
Assignees
Milestone

Comments

@matheus23
Copy link
Contributor

matheus23 commented Oct 10, 2024

We're working on Wasm support so you can use iroh-net in rust applications in browsers. See also the accompanying blogpost.

Here's some prior issues with requests for this:

This is a non-exhaustive list of things that need to land for Wasm support:

@matheus23 matheus23 self-assigned this Oct 10, 2024
This was referenced Oct 10, 2024
@amiyatulu
Copy link

amiyatulu commented Oct 10, 2024

Thanks for the blogspot, and about relay servers. Will Ockam be helpful in end to end encryption?

Also can I use any relay server to connect, other wise it will lead to centralization (e.g. storing relay server addresses in dht)

@DougAnderson444
Copy link

DougAnderson444 commented Oct 10, 2024

Great blog post, thank you Philipp.

Glad to see Phase 3 being WebRTC, as this means self signed certificates for secure connections (something websocket's can't do, so domain-less nodes are stuck at ws:// instead of wss://).

As far as that complexity, you may want to check out str0m if you haven't already. This was being looked at for libp2p but hasn't been implemented yet.

Overall I'm glad to see this route being examined. One of the reasons holding me back from using iroh was lack of browser and webrtc support. So yeah, LFG!

@matheus23
Copy link
Contributor Author

Thanks for the blogspot, and about relay servers. Will Ockam be helpful in end to end encryption?

The traffic that's relayed is already encrypted end-to-end, because we're using QUIC :) (Yes, we're compiling a whole QUIC network stack to Wasm and run it in the browser 🙃 ).

Also can I use any relay server to connect, other wise it will lead to centralization (e.g. storing relay server addresses in dht)

Yes, relay servers are identified by URL. As a node, you can decide to use any "home" relay server you want.
By default, number 0 runs three: one in Asia, one in Europe and one in the US (at the moment).
But you can simply run one on your own via the binary behind the relay feature in iroh-net + DNS and some TLS config.
And if there are any relay servers you want to use from iroh, you configure them via the RelayMap::from_url (or configure a whole set using RelayMap::from_nodes).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

No branches or pull requests

3 participants