Prohlížeč Dvina navštěvuje weby vždy pro jednoho člověka, když tento člověk požádá Dvina o něco, co vyžaduje skutečný prohlížeč. Tato stránka je určená majitelům webů: vysvětluje, co prohlížeč dělá, jak rozpoznat jeho požadavky a jak ho povolit nebo zablokovat.
Co je to
Dvina je osobní asistentka. Když přihlášený uživatel požádá Dvina o úkol, který vyžaduje práci s webem, například porovnání nabídek nebo vyplnění formuláře podle jeho zadání, Dvina ho může provést ve vlastním prohlížeči na počítači tohoto uživatele v Dvina. Jde o desktopový Chromium s oknem, nikoli o bezhlavý prohlížeč. Uživatel ho může sledovat živě a kdykoli převzít jeho ovládání.
- Jedná za jednoho člověka. Každý prohlížeč patří jednomu přihlášenému uživateli Dvina a pracuje na tom, o co tento uživatel požádal.
- Není to crawler. Nemá žádný seznam webů, které by navštěvoval z vlastní iniciativy. Otevírá stránky potřebné pro daný úkol, krok za krokem: načte stránku, přečte ji a pak na ní něco udělá, stejně jako člověk.
- Nikdy se nepoužívá k trénování modelů. To, co prohlížeč Dvina přečte na vašem webu, se používá pouze pro požadavek člověka, pro kterého pracuje. Nikdy se tím netrénuje model AI.
- Osobní rozhodnutí nechává na uživateli. Nezadává hesla ani údaje o platebních kartách. Když stránka vyžaduje přihlášení nebo platbu, Dvina se zastaví a požádá uživatele, aby převzal ovládání. Osobní údaje, odesílání, platby a mazání čekají na souhlas uživatele.
- Neřeší ověření, že jde o člověka. Když narazí na kontrolu, zda web prohlíží člověk, například kontrolu od Cloudflare, Turnstile, reCAPTCHA nebo hCaptcha, nekliká na ni, neřeší ji ani ji znovu nenačítá. Pokud kontrola proběhne sama, Dvina na ni počká. Pokud zůstane zobrazená, práce se zastaví a uživatel převezme prohlížeč, projde kontrolou a předá ho zpět.
Jak rozpoznat jeho požadavky
Prohlížeč Dvina podepisuje každý odeslaný požadavek http a https pomocí Web Bot Auth, tedy podpisů zpráv HTTP (RFC 9421) s klíčem Ed25519. Každý požadavek obsahuje tři hlavičky:
Signature-Agent: "https://api.dvina.ai"
Signature-Input: sig1=("@authority" "signature-agent");created=<unix time>;expires=<created + 60>;keyid="<key id>";alg="ed25519";nonce="<random>";tag="web-bot-auth"
Signature: sig1=:<Ed25519 signature>:
Signature-Agentuvádí origin Dvina, kde jsou zveřejněny její klíče.Signature-Inputzahrnuje@authoritypožadavku (váš hostitel) a hlavičkuSignature-Agent. Hodnotatagjeweb-bot-auth.- Každý podpis platí 60 sekund, od
createddoexpires. keyidje otisk JWK klíče (RFC 7638).
Prohlížeč odesílá vlastní user agent prohlížeče Chromium, stejný jako jakýkoli Chromium na Linuxu, například:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36
Jeho verze Chrome se mění s aktualizacemi Chromium a user agent neobsahuje žádnou zmínku o Dvina. Dvina rozpoznávejte podle podpisu, ne podle user agentu.
Poznámka
V desktopové aplikaci může uživatel také povolit Dvina používat prohlížeč na svém vlastním počítači. Tento prohlížeč své požadavky nepodepisuje a vypadá jako běžné prohlížení webu daným uživatelem.
Jak ověřit podpis
Dvina zveřejňuje svůj veřejný klíč v adresáři klíčů:
https://api.dvina.ai/.well-known/http-message-signatures-directory
Adresář vrací odpověď s Content-Type: application/http-message-signatures-directory+json a sadou JSON Web Key Set s veřejným klíčem Ed25519 Dvina. Odpověď je podepsaná stejným klíčem s tag="http-message-signatures-directory".
Pokud váš web používá Cloudflare, podepsané agenty za vás ověřuje Cloudflare. Pokud chcete požadavek ověřit sami:
- Zkontrolujte, že
Signature-Agentje"https://api.dvina.ai"a žeSignature-Inputobsahujetag="web-bot-auth". - Zkontrolujte, že aktuální čas je mezi
createdaexpires. - Načtěte adresář klíčů a vyberte klíč, jehož otisk JWK odpovídá
keyid. - Sestavte základ podpisu z
@authority,signature-agenta parametrů podpisu podle RFC 9421 a ověřteSignaturepomocí tohoto klíče Ed25519.
Tyto hlavičky může poslat kdokoli. Považujte požadavek za požadavek od Dvina pouze tehdy, když se jeho podpis podaří ověřit pomocí adresáře klíčů Dvina.
Jak ho povolit nebo zablokovat
Prohlížeč Dvina jedná v reálném čase za jednoho člověka: právě tento typ provozu zahrnuje předvolba Agent v Cloudflare. Pokud váš web používá Cloudflare:
- Pravidla pro AI boty: V Security Settings vyberte Configure AI bot policies. Pro Agent vyberte Allow (do not block), Block on pages with ads nebo Block (on all pages).
- Vlastní pravidla WAF: Požadavky od ověřených botů a podepsaných agentů mají
cf.client.bot(při použití Bot Managementcf.bot_management.verified_bot) nastavené na true. Pomocí tohoto pole ve vlastním pravidle můžete tyto požadavky vyjmout z kontrol, vyžádat si ověření nebo je zablokovat. - Adresář ověřených botů: Agenty, které Cloudflare ověřuje, najdete v Cloudflare Radar.
V ostatních případech ověřte podpis podle výše uvedeného postupu a poté povolte nebo zablokujte požadavky, jejichž ověřený Signature-Agent je "https://api.dvina.ai".
Kontaktujte nás
Máte dotazy k prohlížeči Dvina na svém webu nebo jste zaznamenali požadavek, který se nechoval podle popisu na této stránce? Napište na support@dvina.ai a uveďte adresu svého webu. Pokud máte k dispozici čas požadavků a jejich keyid, připojte je také.