Обновить
62.92

Браузеры

Веб-обозреватели

Сначала показывать
Порог рейтинга
Уровень сложности

Fullstack v2: учимся писать UI на Go

Время на прочтение12 мин
Количество просмотров11K

Меня зовут Илья Глухов.  Последние 7 лет я пишу на Go. Я люблю этот язык, а ещё люблю задаваться странными, на первый взгляд, вопросами. Например, как разные интересные штуки, которые мы пишем на Go взаимодействуют с пользователем? В классическом бэкенде мы при помощи RPC (Remote Procedure Call), протокола HTTP или разных очередей модифицируем поведение нашей программы. А что насчёт graphic UI? Он же из фронтенда? Или нам так только кажется? Давайте  создадим пользовательский интерфейс (UI) на Go. Выбор решений разнообразен: Gopherjs, gomobile, обёртки для Qt, GTK и много чего ещё. Но если мы хотим добиться кросс-платформенной совместимости для браузеров, мобильных устройств и десктопов, нам нужен универсальный UI. Давайте на практическом примере разберём как создать его на Go.

Читать далее

Подмания: запускаем графические приложения в контейнерах. Часть 2

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров3.8K

Привет, Хабр!

Это вторая статья о контейнеризации как стиле повседневного использования графических приложений в ОС Линукс.

Здесь мы научимся безопасно запускать браузер и менеджер паролей, так как это близкие потребности. Здесь не будут повторяться инструкции, данные в первой статье, так как предполагается, что они известны читателю.

Посему, без долгих предисловий, ныряем под кат!

Читать далее

Как Ultimatum помогает бороться со слежкой в сети

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров4.9K

image


Добрый день! Меня зовут Тимур и я программист.


В предыдущих статьях я рассказывал о своем форке хромиума — Ultimatum, для тех пропустил — можно начать отсюда. И если в тех статьях подход был с закосом в техническую сторону то сегодня я хочу показать как может себя чувствовать обычный пользователь браузера без программистских скилов.

Читать дальше →

Как эффективно управлять видеопотоком с веб-камеры в браузере

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров2.1K

Веб‑технологии, такие как Media Capture and Streams API (или просто MediaStream API), открывают большие возможности для работы с видеопотоком в браузере. Они позволяют легко захватывать видеопоток с веб‑камеры и использовать его для создания мощных и интерактивных веб‑приложений. Однако несмотря на широкую доступность этих API их эффективное использование остаётся непростой задачей.

Меня зовут Артем Шовкин, я RnD‑разработчик в СберТехе. В процессе изучения MediaStream API наша команда столкнулась с рядом интересных вопросов. Как эффективно управлять параметрами видеопотока в зависимости от возможностей устройства и сети? Какие подводные камни возникают при кроссбраузерной реализации? Как лучше всего обрабатывать ошибки при работе с видеопотоком?

Мы решили не просто разобраться в работе API, но и в деталях изучить спецификацию Media Capture and Streams, чтобы понять, как она используется в реальных приложениях. В статье мы также использовали код исходников реализации getUserMedia.

Материал пригодится разработчикам, которые встраивают в свои решения работу с камерой, особенно полезен фронтендерам, которые столкнулись с задачами по созданию функциональности работы с веб‑камерой и которым нужно добиться качества видео не хуже, чем в нативных приложениях.

Поехали!

Читать далее

Народный браузер — каким он мог бы быть?

Время на прочтение3 мин
Количество просмотров3.1K

image


Добрый день! Меня зовут Тимур и я программист.


В прошлой статье я сделал анонс сборки Хромиума — Ultimatum, и несмотря на то что обсуждения на хабре слегка потеряли градус (по сравнению с обсуждениями 5-10 летней давности) — пара неплохих идей все таки всплыла. Собственно этой статьей я рассчитываю поднять интерес к теме и попытаться понять на какие фичи у людей есть реальный запрос.


Прежде чем продолжить позволю себе небольшую ремарку — я уже более трех лет занимаюсь хромиумом и у меня реально начало получаться. То есть это обсуждение — если оно состоится, это не сотрясание воздуха. Мы реально можем что то изменить, возможно даже в лучшую сторону. Ок, на этом все с пятиминуткой самолюбования, давайте двигаться дальше.

Читать дальше →

Запускаем 8B LLM в браузере: AQLM.rs

Время на прочтение4 мин
Количество просмотров16K

Меня долгое время интересовал запуск больших языковых моделей на пользовательских устройствах: есть что‑то в том, чтобы запустить одну из лучших языковых моделей на обычном домашнем компьютере или на мобильном телефоне, помещающемся в карман.

В этом посте я расскажу о своём пет‑проекте AQLM.rs. Я написал инференс модели Llama 3.1 8B, работающий в браузере на WebAssembly без использования GPU, с помощью алгоритма сжатия, разработанного нашей лабораторией.

Попробовать можно на сайте проекта, подробности под катом.

Читать далее

Ultimatum — еще один форк хромиума, с претензией…

Время на прочтение10 мин
Количество просмотров12K

image


Добрый день! Меня зовут Тимур и я программист.


Сегодня я хочу сделать настоящий анонс своей сборки chromium — Ultimatum. Он умеет уже достаточно много что бы гордо носить свое собственное имя.


В прошлой своей статье я рассказал о том как пробросил в js прямой доступ до http кеша и объяснил для чего я это делаю. Статья завершилась со словами что я еще вернусь со своим антидетект браузером. Я вернулся и это немного больше чем антидетект браузер.


Если коротко — Ultimatum уже помножил на ноль такие техники трекинга как hsts-pinning, favicons cache и вообще использование многих других кешей в трекинге. А также! Теперь можно поставить расширение с любого сайта, не только со сторов гугля, оперы или микрософта (с них кстати тоже можно — со всех!). А еще! Можно перехватывать сетевые запросы и подменять их полностью! Ну и так далее и тому подобное.


А теперь более подробно и более спокойно.

Читать дальше →

Китайская криптография. Анализ проприетарного протокола MMTLS из WeChat

Время на прочтение6 мин
Количество просмотров3K

Изображение из документации протокола MMTLS.

Академическая исследовательская группа Citizen Lab из университета Торонто провела первый публичный анализ протокола шифрования MMTLS на предмет безопасности и конфиденциальности. Это основной протокол приложения WeChat, которым пользуется более 1,2 млрд человек (34% мобильного трафика в Китае в 2018 году).

Как выяснилось, MMTLS представляет собой модифицированную версию TLS 1.3, причём многие изменения, внесённые разработчиками, привели к появлению слабых мест.

Более того, в дополнение к MMTLS используется ешё менее безопасный, тоже проприетарный протокол, содержащий множество уязвимостей, в том числе детерминированные векторы инициализации в AES-GCM и отсутствие прямой секретности. Ниже он упоминается под названием Business-layer encryption.
Читать дальше →

Работа с куки-файлами хуже сапёрного дела

Время на прочтение15 мин
Количество просмотров5.2K

Если в этом посте вам в основном интересно, как что ломается, сразу можете переходить к последнему разделу.

HTTP-куки — это небольшие информационные добавки, направляемые на клиент с сервера, работающего с JavaScript или HTTP. Куки играют определяющую роль для поддержки состояния во всем вам известной Всемирной Паутине — системе, где иного способа сохранять состояние не предусмотрено. Как только куки установлены, браузеры станут переадресовывать их в нагрузку ко всем HTTP-запросам, у которых правильно выставлена область видимости — до тех пор, пока срок действия куки не истечёт.

Читать далее

Firefox: 20 лет борьбы за свободный интернет и долю рынка. Успехи и падения браузера

Время на прочтение4 мин
Количество просмотров8.7K

Привет, Хабр! Это Виктор Сергеев из МТС Диджитал. Двадцать лет назад, в ноябре 2004 года, увидел свет первый релиз браузера Firefox. Новинка быстро завоевала популярность благодаря инновационным решениям (минимализм, вкладки, дополнения и так далее) и открытости кода. За 20 лет браузер прошел путь от новичка до одного из лидеров и поборолся с серьезнейшими конкурентами. Сейчас у Firefox уже нет былой доли рынка, но браузер продолжает развиваться  и акцентируется на конфиденциальности и безопасности.

Читать далее

Vivaldi 7.0 для iOS

Время на прочтение4 мин
Количество просмотров831

Давайте углубимся в новые функции, каждая из которых разработана для того, чтобы дать вам больше контроля над вашим мобильным браузером. Вот что нового:

Читать далее

Vivaldi 7.0 для Android

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.1K

Давайте подробнее рассмотрим новые функции, каждая из которых разработана для того, чтобы предоставить вам больше контроля над вашим мобильным браузером.

Вот что мы приготовили:

Читать далее

Понимание кругового DNS

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров6K

Для OpenFreeMap я использую серверы за Round Robin DNS. В этой статье я пытаюсь понять, как браузеры и CDN выбирают, какой из них использовать.

Что такое циклический DNS?

Обычно, когда вы обслуживаете веб-сайт с помощью VPS, например Digital Ocean или Hetzner, вы добавляете одну запись A в панель управления вашего DNS-провайдера.

Читать далее

Ближайшие события

Как Dinosaur Game стал маркером стабильности интернета? История создания и феномен игры

Время на прочтение4 мин
Количество просмотров6.7K

Привет, Хабр! Компьютерных игр с динозаврами много. Но есть одна особенная: ее не нужно покупать, играть можно на любом устройстве и, главное, без интернета! В честь прошедшего дня рождения наш Тирекс решил познакомить вас со своим приятелем, тираннозавром Рексом. Он, как и Тирекс, работает в IT: отвечает за стабильность интернет-соединения. Но если Тирекс стоит на страже инфраструктуры, то Рекс находит и определяет проблемные места. Под катом погружаемся в IT-палеонтологию и рассказываем историю залипательной браузерной игрушки Dinosaur Game.
Читать дальше →

Vivaldi 7.0 — Вы его не узнаете

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.1K

Можно много говорить про функциональность и количество настроек, про приватность и скорость работы, но давайте быть честными - при знакомстве с любым приложением мы в первую очередь всегда оцениваем его визуально. Это потом будет изучение того, что оно вообще может, это потом будут поиски наиболее оптимальных настроек, но ещё до этого у пользователя уже складывается некое впечатление - просто по первому взгляду на интерфейс.

Наверное, это и правильно. Когда-то давно выдающийся авиаконструктор Андрей Николаевич Туполев говорил, что хорошо летают только красивые самолёты. Что-то в этом действительно есть. Ведь стильный и проработанный внешний дизайн зачастую говорит о том, что не меньшую тщательность конструктор проявил и при разработке скрытых от взгляда пользователя внутренних компонентов. И к браузерам это тоже относится в полной мере.

Сегодня мы представляем вам Vivaldi 7.0 - новую версию браузера, получившую значительно переработанный дизайн интерфейса, а также несколько не менее интересных и заметных улучшений. Давайте вместе посмотрим, что изменилось.

Читать далее

ПО шагам: Защищаем сайт от парсеров и поведенческих ботов с помощью DNS-прокси

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров9.4K

- контент не будет спаршен
- с ВПН работает
- выявит высокоуровневых JS ботов
- реальных не заблокирует
- фиксирование только настоящих просмотров
- рекомендательная система будет работать изумительно

Как интегрировать защиту, как выявить фейковых http ботов, как написать свой код верификации пользователя на прокси сервере и еще читайте далее.

Читать далее

Протокол ECH в браузере

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров27K

Chrome продолжает развивать свои механизмы безопасности, и одной из последних технологий, привлекающих внимание, стал протокол Encrypted Client Hello (ECH). Этот протокол, ранее известный как ESNI (Encrypted Server Name Indication), направлен на усиление конфиденциальности при установке HTTPS-соединений.

Читать далее

Как мы перенесли распознавание на базе ИИ в веб и изменили веб-банкинг? А в Markswebb это оценили

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров1.6K

Привет, Хабр! Недавно аналитическое агентство Markswebb выкатило ежегодный рейтинг лучших веб-версий банковских приложений в 2024 году. Эксперты сравнили удобство и функциональность использования банковских услуг в браузере и выбрали банки с лучшими веб-приложениями по качеству клиентского опыта. Лидирующие позиции в обеих номинациях рейтинга - «Цифровой офис» (Digital Office) и «Цифровой банк для повседневных операций» (Daily Banking) - заняли наши клиенты!

Достичь крутых результатов удалось в том числе благодаря использованию систем распознавания Smart Engines. Рассказываем, как наши ИИ-решения помогли ведущим банкам поставить новые рекорды в сфере цифрового гостеприимства. 

Добро пожаловать!

Firefox добавит нативную функцию группировки вкладок

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров7.1K

Что произошло: всё началось в июле 2023 года, когда Ethan Word опубликовал пост с вопросом о том, появится ли в Firefox функция «Группы вкладок», аналогичная той, что существует в Chrome. В ответ на это многие пользователи выразили согласие, отметив, что они также предпочли бы такую полезную функцию, а использование расширений для достижения аналогичных возможностей не является оптимальным решением.

Читать далее

Content Security Policy (CSP) защитит от js-снифферов и утечек?

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров2.2K

Довольно часто встречаю утверждение о том, что настроенная Content Security Policy (CSP) – достаточное и надежное средство защиты frontend-приложений от большинства существующих угроз.

Поговорим о задачах CSP и на практике проверим, защитит ли CSP от кражи данных с web-страницы js-сниффером.

Читать далее

Вклад авторов