Браузер Dvina відвідує сайти для однієї людини за раз, коли вона просить Dvina виконати завдання, для якого потрібен справжній браузер. Ця сторінка — для власників сайтів: тут описано, що робить браузер, як розпізнавати його запити та як дозволити або заблокувати його.
Що це
Dvina — це персональний помічник. Коли людина, яка ввійшла в Dvina, просить виконати завдання на сайті, наприклад порівняти пропозиції або заповнити форму за її вказівкою, Dvina може зробити це у власному браузері на комп’ютері Dvina цієї людини. Це настільний Chromium із вікном, а не браузер без графічного інтерфейсу. Людина може спостерігати за його роботою наживо й будь-коли перебрати керування.
- Він діє для однієї людини. Кожен браузер належить одному користувачеві, який увійшов у Dvina, і виконує те, що ця людина попросила.
- Це не пошуковий робот. У нього немає списку сайтів, які він відвідує самостійно. Він відкриває потрібні для завдання сторінки крок за кроком: завантажує сторінку, читає її, а потім виконує на ній дії — як людина.
- Дані ніколи не використовуються для навчання моделей. Те, що браузер Dvina читає на вашому сайті, використовується лише для виконання запиту людини, для якої він працює. Ці дані ніколи не використовуються для навчання моделі ШІ.
- Особисті рішення він залишає за людиною. Він не вводить паролі чи дані платіжних карток. Коли на сторінці потрібно ввійти в обліковий запис або заплатити, Dvina зупиняється й просить людину перебрати керування. Введення особистих даних, надсилання, оплата та видалення потребують її згоди.
- Він не проходить перевірки на людину. Коли він стикається з перевіркою того, що сайт переглядає людина, як-от перевіркою Cloudflare, Turnstile, reCAPTCHA або hCaptcha, він не натискає на неї, не проходить і не перезавантажує її. Якщо перевірка завершується сама, Dvina чекає. Якщо вона залишається, робота зупиняється, а людина перебирає керування браузером, проходить перевірку й повертає керування.
Як розпізнати його запити
Браузер Dvina підписує кожен http- і https-запит, який надсилає, за допомогою Web Bot Auth — підписів HTTP-повідомлень (RFC 9421) із ключем Ed25519. Кожен запит містить три заголовки:
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-Agentвказує на Dvina — джерело, де опубліковано її ключі.Signature-Inputохоплює@authorityзапиту (ваш хост) і заголовокSignature-Agent. Значенняtag—web-bot-auth.- Кожен підпис дійсний протягом 60 секунд, від
createdдоexpires. keyid— це відбиток JWK ключа (RFC 7638).
Браузер надсилає власний user agent Chromium, такий самий, як у будь-якого Chromium на Linux, наприклад:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36
Його версія Chrome змінюється з оновленнями Chromium, а user agent не містить жодних відомостей про Dvina. Розпізнавайте Dvina за підписом, а не за user agent.
Примітка
У настільному застосунку людина також може дозволити Dvina використовувати браузер на власному комп’ютері. Цей браузер не підписує запити, і його робота виглядає як звичайний перегляд сайтів цією людиною.
Як перевірити підпис
Dvina публікує свій відкритий ключ у каталозі ключів:
https://api.dvina.ai/.well-known/http-message-signatures-directory
Каталог повертає відповідь із Content-Type: application/http-message-signatures-directory+json і набором JSON Web Key Set, що містить відкритий ключ Ed25519 Dvina. Відповідь підписана тим самим ключем із tag="http-message-signatures-directory".
Якщо ваш сайт використовує Cloudflare, Cloudflare перевіряє підписаних агентів за вас. Щоб перевірити запит самостійно:
- Check that
Signature-Agentis"https://api.dvina.ai"and thatSignature-Inputhastag="web-bot-auth". - Check that the time now is between
createdandexpires. - Get the key directory and pick the key whose JWK thumbprint matches
keyid. - Build the signature base from
@authority,signature-agentand the signature parameters, as RFC 9421 describes, and verify theSignaturewith that Ed25519 key.
Будь-хто може надіслати ці заголовки. Вважайте запит запитом Dvina лише тоді, коли його підпис успішно перевірено за каталогом ключів Dvina.
Як дозволити або заблокувати браузер
Браузер Dvina діє в реальному часі від імені однієї людини — саме такий трафік охоплює категорія Agent у Cloudflare. Якщо ваш сайт використовує Cloudflare:
- Політики щодо ШІ-ботів: У розділі Налаштування безпеки виберіть Налаштувати політики щодо ШІ-ботів. Для Agent виберіть Дозволити (не блокувати), Блокувати на сторінках із рекламою або Блокувати (на всіх сторінках).
- Власні правила WAF: У запитах від перевірених ботів і агентів із підписом поле
cf.client.bot(cf.bot_management.verified_bot, якщо ви використовуєте Bot Management) має значення true. Використовуйте його у власному правилі, щоб пропускати такі запити без перевірки, вимагати додаткової перевірки або блокувати їх. - Каталог перевірених ботів: Перегляньте агентів, яких перевіряє Cloudflare, у Cloudflare Radar.
В інших випадках перевірте підпис, як описано вище, а потім дозволяйте або блокуйте запити, у яких перевірений Signature-Agent має значення "https://api.dvina.ai".
Зв’яжіться з нами
Маєте запитання про роботу браузера Dvina на вашому сайті або помітили запит, який оброблявся не так, як описано на цій сторінці? Напишіть на support@dvina.ai і вкажіть адресу вашого сайту, а також час запитів і їхній keyid, якщо ці дані у вас є.