← Privacy Pass / privacy-pass / concepts
Protokol Privacy Pass
Privacy Pass rozděluje odpovědnost mezi čtyři role, takže žádná jednotlivá strana nezná vše o identitě a aktivitě uživatele. Tato stránka vysvětluje tok informací v rámci protokolu. Informace o tom, kdo jednotlivé role provozuje, a o vlastnostech soukromí, které tento návrh zajišťuje, najdete na Modely nasazení.
Přehled rolí
| Role | Odpovědnost |
|---|---|
| Klient | Žádá o přístup, provádí protokoly vydávání a uplatňování tokenů. |
| Origin | Vydává výzvy k tokenům a ověřuje uplatněné tokeny. |
| Ověřovatel | Provádí proces atestace specifický pro dané nasazení a tím ověřuje klienta. |
| Vydavatel | Podepisuje zaslepené požadavky na tokeny pro atestované klienty. Vydavatelé Cloudflare používají veřejně ověřitelný Blind RSA (typ tokenu 2). |
Interakce protokolu
Podle definice v RFC 9576 probíhá tok napříč dvěma protokoly: vydávání (získání tokenu) a uplatnění (jeho použitím pro přístup).
┌────────┐ ┌────────┐ ┌──────────┐ ┌────────┐
│ Origin │ │ Client │ │ Attester │ │ Issuer │
└────────┘ └────────┘ └──────────┘ └────────┘
│ │ │ │
│<───── Request ──────│ │ │
│ │ │ │
│── TokenChallenge ──>│ │ │
│ │ │ │
│ │<== Attestation ==>│ │
│ │ │
│ │─── TokenRequest+Attestation Proof ───>│
│ │ │[Verifies Attestation]
│ │<──────────── TokenResponse ───────────│
│ │[Finalises Token]
│<── Request+Token ───│
│ │
│────── 200 OK ──────>│Počáteční požadavek
- Klient odešle požadavek na Origin.
- Origin odpovídá token challenge. Pokud Klient nemá žádný token k uplatnění, zahájí protokol vydávání s vydavatelem, kterému Origin důvěřuje.
Protokol vydávání
- Protokol vydávání tokenu začíná tím, že Client dokončí pro dané nasazení specifický proces atestace. Tento krok je záměrně otevřený, aby si různé případy použití mohly definovat vlastní atestaci.
- Jakmile Atestátor ověří Klienta, Klient odešle zaslepená žádost o token, tedy žádost o podepsání maskované verze tokenu, která zabraňuje propojení finalizované verze s původní žádostí, Issuerovi spolu s důkazem atestace.
- Issuer zkontroluje ověření, podepíše zaslepený token a vrátí ho. Klient finalizuje k obnovení tokenu Privacy Pass a dokončí tak protokol vydávání.
Protokol uplatnění
- Interakce končí protokol uplatnění, kde Klient odešle token spolu se svým původním požadavkem zpět Originu.
- Origin ověří podpis a odpoví
200 OK, čímž udělí přístup.
Podívejte se na to v kódu
Chcete-li si celý průběh vydání a uplatnění tokenu spustit na vlastním počítači bez nutnosti cokoli nastavovat na straně Cloudflare, podívejte se na lokální příklad v Začínáme.