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

Secure Websocket support #21

Closed
D4nte opened this issue Apr 23, 2021 · 3 comments
Closed

Secure Websocket support #21

D4nte opened this issue Apr 23, 2021 · 3 comments
Assignees

Comments

@D4nte
Copy link
Contributor

D4nte commented Apr 23, 2021

We currently use a go-waku instance as a gateway to the waku test fleet in the js-waku web app.

After further investigation, we can confirm that, regarding the support of insecure websocket ws in a secure web page https:
- Firefox supports it only if some advance security parameters are modified using about:config.
- Chrome does not support it at all.

This means that js-waku must support wss to be relevant.

Also, go-waku being able to listen on a secure websocket wss would allow a smooth experience for web app demo and also testing of wss (as nim-waku does not yet support websockets).

@richard-ramos can you please consider adding support?

@richard-ramos
Copy link
Member

Since there's no support out of the box for listening / dialing wss multiaddresses (see: libp2p/go-ws-transport#70), I setup a reverse proxy with nginx that uses a self signed certificate to add secure websockets support.

To test, you can use /ip4/134.209.113.86/tcp/443/wss/p2p/16Uiu2HAmVVi6Q4j7MAKVibquW8aA27UNrA4Q8Wkz9EetGViu8ZF1

@richard-ramos
Copy link
Member

The config used for nginx in my DO droplet can be seen here: https://gist.github.com/richard-ramos/63eadded212aaa994216f98583acc257

@richard-ramos
Copy link
Member

Closing this issue, as WSS listening support can be achieved with nginx, and dialing WSS nodes is not required at the moment.

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

2 participants