У новій версії було значно покращено автентичність браузера, додано нові фактори відбитка.
Інформація в цій темі навмисно скорочена, деякі зміни згадуються дуже коротко, без технічних подробиць. Інформація про ip. Спочатку для цієї мети планувалося створити свій сервіс, але ідеальну базу даних знайти так і не вдалося, тому що результати для різних баз часто відрізняються, не завжди зрозуміло які з них правильні.
Тому було зроблено такі зміни:
Зміна часового поясу.
Додано локалізацію назви часового поясу згідно з мовою браузера.
Можливість задати додаткові параметри при зміні геолокації (дія "Встановити координати").
Зміну геолокації переписано на с++.
Збільшено кількість параметрів у модулі "Часовий пояс". Тепер за допомогою нього, можна змінити всі параметри часу, які змінює FingerprintSwitcher.
Дія проксі тепер встановлює всі параметри навіть якщо вона викликана з порожнім рядком. Краще це робити, якщо ви працюєте без проксі. Видається помилка у випадку неможливості отримати реальний ip.
Параметри екрана.
Webgl. FingerprintSwitcher тепер змінює безліч додаткових властивостей webgl 1.0 і webgl 2.0 і функціонал деяких методів. Розкладка клавіатури. Новий фактор відбитка - розкладка клавіатури. Шрифти. Кількість підтримуваних шрифтів збільшено в 10 разів, тепер їх більше 4 тисяч. Для цього довелося вдосконалити механізм отримання списку шрифтів. Новий фактор відбитка - MediaDevices. Ідентифікатори пристроїв генеруються щоразу при створенні нового профілю, тому цей фактор і раніше не міг призводити до виявлення. Проте в новій версії вся доступна інформація про пристрої і деякі додаткові властивості змінюються за допомогою FingerprintSwitcher.
Це означає, що тепер, щоб змінити id пристроїв, потрібно поміняти відбиток, простої зміни профілю недостатньо. Новий фактор відбитка - відбиток продуктивності. Вимірюючи швидкість виконання того чи іншого функціоналу сайти можуть скласти ідентифікатор обладнання.
Для розв'язання цієї проблеми додано нову дію "Відбиток продуктивності". Вона дозволяє змусити сайт думати, що бенчмарк виконується швидше або повільніше ніж є насправді. При цьому, заміри, які виконуються для інших цілей не повинні змінюватися. Новий функціонал намагається уникнути нестиковок з часом пов'язаних з цим, але технологія експериментальна і може бути причиною багів. Приклад: чат з величезною кількістю повідомлень матиме розбіжність у часі на сервері і клієнті.
Подальшу інформацію можна отримати в документації в самій дії. Permission API. Це апі видає результати як у реальному Chrome браузері. Отримання дозволів для сповіщень і геолокації відповідають вибраним користувачем налаштуванням. Заміна відбитка на стороні браузера. Починаючи з нової версії заміна всіх властивостей відбувається в коді с++, код javascript впроваджується лише коли це абсолютно необхідно, наприклад, щоб емулювати метод фф якого немає в хромі.
Залишилося лише 1 властивість, яка змінюється через js, але вона використовується не завжди, сподіваюся скоро і її перевести на с++.
Було переписано заміну Notification, navigator.connection, screen.orientation і багатьох інших властивостей.
Усі дані за винятком Permission API отримуються з реальних пристроїв. База даних ще не встигла оновитися відбитками з новим форматом, тому рекомендується використовувати фільтр по мінімальній даті додавання встановлений у 15 днів. Дослідження нових методів. Було вивчено антибот захист ad score com, зроблено відповідні патчі в браузері. Новий модуль Archive. Було додано новий модуль для роботи з zip, 7z і rar (лише розпакування) архівами. Його зробив @GhostZ. Цей модуль написаний на node.js, його потрібно попередньо увімкнути через менеджер модулів. Надалі будуть додані додаткові оптимізації для модулів написаних на ноді.
!ВАЖЛИВО. Ця тема буде модеруватися. Повідомлення що не стосуються нової версії будуть видалені. Користувачі що повідомляють про помилку без зазначення необхідних відомостей (https://community.bablosoft.com/topic/2706) будуть забанені на 1 тиждень.