cloudflare / quiche

🥧 Savoury implementation of the QUIC transport protocol and HTTP/3
https://docs.quic.tech/quiche/
BSD 2-Clause "Simplified" License
9.4k stars 709 forks source link

ERR_QUIC_PROTOCOL_ERROR when using chrome browser #1510

Closed alishir closed 1 year ago

alishir commented 1 year ago

I've launched the latest quiche-server and chrome 113.0.5672.92 (Official Build) (64-bit) with the following commands, but I got the ERR_QUIC_PROTOCOL_ERROR error.

cargo run --bin quiche-server -- --cert apps/src/bin/cert.crt --key apps/src/bin/cert.key --root /tmp/

google-chrome --origin-to-force-quic-on=localhost:4433 https://localhost:4433/ --user-data-dir=$(mktemp -d)

Here is the chrome://version:

Google Chrome   113.0.5672.92 (Official Build) (64-bit) 
Revision    b6f521170062a1fa8a82c33fb223b06fec566da1-refs/branch-heads/5672_63@{#10}
OS  Linux
JavaScript  V8 11.3.244.8
User Agent  Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36
Command Line    /usr/bin/google-chrome --origin-to-force-quic-on=localhost:4433 --user-data-dir=/tmp/tmp.4Ohn8to6io --flag-switches-begin --flag-switches-end https://localhost:4433/
Executable Path /opt/google/chrome/google-chrome
Profile Path    /tmp/tmp.4Ohn8to6io/Default
Active Variations   f829ac10-ca7d8d80
LPardue commented 1 year ago

This is a Chrome problem. They won't trust that certificate. Best bet is to use a publicly trusted cert, since even privately trusted certs with a correct trust store won't work without an additional Chrome cli flag

alishir commented 1 year ago

I added the self signed certificate to the chrome but it does not work. Do you know the required chrome flags?

LPardue commented 1 year ago

Try ignore-certificate-errors-spki-list - https://peter.sh/experiments/chromium-command-line-switches/#ignore-certificate-errors-spki-list

alishir commented 1 year ago

Thanks a lot, I tried it before but I got following error: image