Pull to refresh

Старые протоколы, которыми можно пользоваться и сегодня

Reading time13 min
Views11K
Устали от тяжёлых веб-страниц, всплывающих окон, мерцающих баннеров, N-факторной аутентификации, слежки за пользователями и аналитики? Тогда вы можете попробовать поработать с протоколами, которые не менялись последние тридцать лет.


Примерно тридцать лет назад люди видели онлайн-страницы так.
Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments23

Опыт работы с фильтром Калмана на примере NMEA данных

Reading time4 min
Views6.8K

Цель статьи не в объяснении принципов Калмановского фильтра, а в его демонстрации на примере реальных (сырых) данных. Желающие могут модифицировать исходники и поэкспериментировать с алгоритмом, я надеюсь что моя работа поможет тем, кто столкнется с подобной задачей.


Используемые данные — c GPS-приемника в формате NMEA-0183, в часности сообщения GGA и VTG.


Фильтрация необходима по причине зашумленности GPS. Причины помех в GPS данных разные. Основные:


  • атмосферные помехи.
  • препятствия для сигнала.
  • положение орбиты GPS. Например, невысокое наклонение орбит GPS (примерно 55°) серьёзно ухудшает точность в приполярных районах Земли.

Все это суммарно приводит к скачкам положения, смещениям курса, и прочим неприятностям. Причем в работе в первую очередь мне нужно было получить именно отфильтрованную скорость.


Дело в том что скорость, измеряемая оборудованием и передаваемая в сообщении VTG давала неправдоподобные показания (скачки и т. д.), которые крайне затрудняли задачи управления.
Поэтому было решено построить модель фильтр в Octave, и получив скорость как производную от GPS данных, представленных сообщением GGA, сравнить с оригинальными данными скорости из сообщения VTG.


Для удобства сравнения данные требуется вывести на один график.


С фильтрацией данных и их производных прекрасно справляется фильтр Калмана.


Применение фильтра для задач автопилота и курсовертикали является «классикой».

Читать дальше →
Total votes 21: ↑18 and ↓3+15
Comments5

Прогрессивная загрузка XML страниц

Reading time14 min
Views3.4K
Прогрессивная загрузка XML страниц — это загрузка с одновременным показом уже загруженных и обработанных частей XML страницы пока XSLT шаблон всё ещё обрабатывает остальные части.

image


У нас есть очень большой XML. Это статья с очень большим количеством комментариев. На медленном и нестабильном мобильном интернете её загрузки можно и не дождаться. Во время загрузки случается обрыв связи и XML остаётся не догруженным. Казалось бы можно просто обновить страницу и браузер бы просто догрузил недостающую часть. Но нет. Браузер грузит страницу заново и снова это не удаётся и мы видим ошибку вместо страницы.


Но выход из этой ситуации есть. Мы разделим XML на маленькие кусочки которые будут успевать загрузиться на медленном канале и попадут в кеш. Бонусом мы получаем защиту от недогруза и прогрессивную загрузку.

Читать дальше →
Total votes 9: ↑8 and ↓1+7
Comments0

Что не скрывает LastPass?

Reading time4 min
Views34K
Думаю, все знают, что такое Lastpass. Многие доверили ему хранение всех своих логинов и паролей. И как не доверить, ведь, разработчики декларируют, что вся информация защищена и шифруется на стороне клиентов. Помятуя о недавней истории я решил разобрать плагин LastPass на кусочки и понять, что действительно защищено, а что нет и продолжить свой цикл статей про маленькие проблемы в крупных проектах.
Читать дальше →
Total votes 102: ↑99 and ↓3+96
Comments82

Получение списка контактов с gmail.com без использования Google API

Reading time8 min
Views4K
Однажды мне дали задание получить список контактов пользователя для некоторых почтовых сервисов (среди которых gmail.com, yahoo.com, aos.com). Сначала я занялся изучением почтовых протоколов IMAP и POP3, но к сожалению эти протоколы не предусматривают возможности получения списка контактов. От использования API которые предоставляют некоторые из этих почтовых сервисов я отказался, так-как эти API не для всех языков предоставляются, а так-же пришлось бы тратить время на изучение каждого из них.

Решил я что использование сокетов — это единственный вариант, который позволит быстро получить список контактов и делать это примерно одинаково для большинства почтовых сервисов. Суть в том, чтобы эмулировать работу браузера. Я рассмотрю алгоритм получения списка контактов с gmail.com, но подобным образом это делается и в других почтовых сервисах.
Читать дальше →
Total votes 17: ↑9 and ↓8+1
Comments16

На что способен мозг студента, познающего компьютерный мир

Reading time7 min
Views24K
Доброго времени суток.

Закончив писать очередной скрипт на Bash, понял, что всё должно быть совершенно иначе, однако всё работало. Хочу вам показать, какие непотребства и костыли написал я, дабы решить задачу, но пока не имея вагона знаний. Иначе говоря, карикатура на программирование.
Читать дальше →
Total votes 37: ↑35 and ↓2+33
Comments30

Примеры работы с Google Map API, используя Java

Reading time12 min
Views70K
Добрый день, хабровчане.

Спешу поделиться небольшим опытом использования Google Maps API Web Services.
В этой статья я расскажу как использовать службы для геокодирования, геодекодирования.
Так же как можно находить расстояния и маршруты между точками. И конежно же коснусь решения задачи «куда сходить ближе туда или туда».
Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments5

Построение сетевой архитектуры на базе криптошлюза S-Terra c инициализацией IPsec на сертификатах

Level of difficultyMedium
Reading time10 min
Views5.9K

Описание продукта

Программно-аппаратный комплекс «С-Терра Шлюз» выполняет функции межсетевого экрана, средства криптографической защиты информации и маршрутизатора. С-Терра Шлюз обеспечивает создание виртуальных защищенных сетей (VPN), защиту транзитного трафика между различными узлами сети, защиту трафика самого шлюза безопасности, а также stateless фильтрацию IP-трафика и stateful фильтрацию для протоколов TCP и FTP

Состав макета

Макет создан на базе физических устройств:

⦁ Коммутатор Cisco Catalyst 2960
⦁ 2 Криптошлюза S-Terra
⦁ 2 АРМа Пользователей

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments2

Сканирование фотопленки при помощи DSLR

Reading time6 min
Views51K
Предисловие

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

Зачем нужно?

Сканирование пленки нижеописанным образом позволит получить максимум информации из снимка, возможность настройки экспозиции, баланса белого, контраста и т.д. При сканировании пленки в фотосалоне, машина автоматически выбирает контраст, баланс белого, экспозицию, зачастую делая это не верно.
Читать дальше →
Total votes 50: ↑47 and ↓3+44
Comments53

Декодер кириллицы из quoted-printable

Reading time4 min
Views38K

Доброго времени суток, друзья! Нашел себе занимательную задачку на ближайшее время, решил написать "звонилку" для Android. Приложение будет синхронизироваться с контактами в системе и выполнять определенные действия. При чем здесь quoted-printable, что это и зачем мне понадобилось — рассказываю в статье.

Читать дальше →
Total votes 10: ↑5 and ↓50
Comments3

Умный дом на колес… Алисах

Reading time6 min
Views37K
Привет. В настоящее время я смог реализовать одну из возможностей умного дома, а именно полноценное голосовое управление светом через яндекс-сервис Алисы, в частности через Умную колонку Яндекс-станцию и Алису на телефоне. Но все также будет работать на любом устройстве, на котором она установлена. Световая инсталляция основана на 4-х RGBWW контроллерах MiLight FUT039 и WiFi контроллере MiLight ibox2 (который тянет 4 зоны управления), пульты MiLight (3 шт) настроены параллельно и работают как резервное управление при отсутствии интернета, но к голосовому управлению почти не имеют отношения, поэтому их учитывать не будем.

В чем отличие этой реализации? Схема управления проста в исполнении, не требует никаких навыков программирования и по затратам обойдется в примерно в стоимость умной колонки и микрокомпьютера Распберри 3, софт под микрокомпьютер совсем бесплатный. И не нужно подключать устройства, которыми управляешь, к серверам производителей. Интернет нужен для Алисы и сервисов Яндекса, да и распбери нужно выплюнуть наружу по порту 443.
Total votes 9: ↑9 and ↓0+9
Comments20

Физические теории

Reading time5 min
Views35K
image

Что такое наука? — Область знаний, которая позволяет выдавать точные предсказания.

С места в карьер! В физике есть три главные константы: скорость света (с = 3 *1010см/с), гравитационная постоянная (G = 6,67 * 10-8 см3/гр сек) и постоянная Планка (h/2pi = 1,05 * 10-27 эрг сек). Теории делятся по тому, как они учитывают эти константы.

Читать дальше →
Total votes 67: ↑50 and ↓17+33
Comments196

Книга «Аудит безопасности информационных систем»

Reading time11 min
Views18K
image В книге Никиты Скабцова (магистр CS, опыт работы инженером по информационной безопасности – 10 лет, преподаватель «компьютерные сети, операционные системы», сертификаты: CEH, CCSA, LPIC, MCITP) рассматриваются методы обхода систем безопасности сетевых сервисов и проникновения в открытые информационные системы. Информационная безопасность, как и многое в нашем мире, представляет собой медаль с двумя сторонами. С одной стороны, мы проводим аудит, ищем способы проникновения и даже применяем их на практике, а с другой — работаем над защитой. Тесты на проникновение являются частью нормального жизненного цикла любой ИТ-инфраструктуры, позволяя по-настоящему оценить возможные риски и выявить скрытые проблемы.
Читать дальше →
Total votes 9: ↑8 and ↓1+7
Comments4

Генерация родословного дерева на основе данных Wikipedia

Reading time22 min
Views6.3K
В этой статье я хочу показать, как с помощью фреймворка Selenium Webdriver можно, исходя из данных Wikipedia, составить генеалогическое древо заданной персоны (например, легендарного основателя первой династии русских правителей Рюрика).

В статье будет рассказано, как определить имя персоны, вычислить ссылки на страницы детей персоны, а также будет построен алгоритм генерации генеалогического древа.
Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments8

Разбираем TLS по байтам. Где собаки зарыты?

Level of difficultyMedium
Reading time34 min
Views12K


Подключение к сайту бывает защищённым, а бывает нет — это надо знать всем детям. Только не все дети знают, что это значит и как работает. Кажется я это уже писал? Ах да, это же вторая часть статьи с разбором TLS.

В первой мы увидели, что такое «защищённое соединение», сколько и каких ключей для него нужно, кто кого шифрует и подписывает, и что такое «сертификат». Сейчас разберёмся, как всё это дело реализуется в протоколе TLS: как выглядит рукопожатие, как сделать ключ шифрования своими руками, в каком виде данные передаются по сети.
Читать дальше →
Total votes 39: ↑39 and ↓0+39
Comments1

FAQ по программированию под Android от новичка, и для новичков

Reading time16 min
Views158K
Предисловие к FAQ.

Программирование является моим хобби уже давно (правда на других языках и платформах), но до андроида руки дотянулись совсем недавно. Прошло несколько этапов, прежде чем я добрался до написания программ.
Сначала была пара месяцев посвященных Java, на сайте с «Сгибателем».
После, долгие попытки подружится с Eclipse, закончившиеся побегом на Android Studio.
На данный момент выпущено 7 программ и две находятся в разработке.
Данная подборка возникла как попытка структурирования и оптимизации полученной в процессе информации.
Заранее извиняюсь за возможно некорректную терминологию – так как практикую обучение через создание, и в теоретической части есть пробелы.

Надеюсь, что приведенные примеры окажутся полезными.
Читать дальше →
Total votes 114: ↑98 and ↓16+82
Comments23

Как работают квантовые компьютеры. Собираем паззл

Reading time33 min
Views243K


Квантовые компьютеры и квантовые вычисления — новый баззворд, который добавился в наше информационное пространство наряду с искусственным интеллектом, машинным обучением и прочими высокотехнологическими терминами. При этом мне так и не удалось найти в интернете материал, который бы сложил у меня в голове пазл под названием “как работают квантовые компьютеры”. Да, есть много прекрасных работ, в том числе и на хабре (см. Список ресурсов), комментарии к которым, как это обычно и бывает, еще более информативны и полезны, но картинка в голове, что называется, не складывалась.


А недавно ко мне подошли коллеги и спросили “Ты понимаешь как работает квантовый компьютер? Можешь нам рассказать?” И тут я понял, что проблема со складыванием в голове целостной картинки есть не только у меня.


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

Получилось или нет - решать, как обычно, вам.
Total votes 111: ↑111 and ↓0+111
Comments105

Яндекс.Деньги слили информацию о сторонниках Навального органам

Reading time2 min
Views16K
В сети появились жалобы сторонников Навального, на то, что их обзванивают коммисары движения Наши и спрашивают зачем они поддержали Навального. Резонный вопрос, как к Нашим попали контактные данные и номера телефонов сторонников Навального, которые перечисляли через Яндекс.Деньги сердства на поддержку проекта Роспил?

жалобы:
nykolaich.livejournal.com/72274.html
gunlinux.org/%D0%BD%D0%B0%D1%88%D0%B8-%D1%82%D1%80%D0%BE%D0%BB%D0%BB%D0%B8%D0%BD%D0%B3-%D0%B8%D0%B7-%D0%B7%D0%B0-%D0%BD%D0%B0%D0%B2%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE
www.forum.mista.ru/topic.php?id=545355&page=1

апдейт:
Навальный у себя в твиттере:
мы знаем откуда утечка. я напишу об этом после майских. Точно не из РосПила, у нас таких данных нет.


апдейт2:

комментарии Яндекс.Денег с роема
Читать дальше →
Total votes 194: ↑164 and ↓30+134
Comments137

Как зависит перевод термина trunk от вендора коммутаторов?

Reading time5 min
Views13K

На эту ошибку (или, если хотите, разночтение) я обратил внимание во время проверки перевода по коммутаторам NETGEAR. Дело в том, что при переводе термина “trunk” нужно обязательно учитывать, чьей трактовки придерживается вендор — Cisco или HP, ибо между ними очень разный технический смысл.


Давайте разбираться.




Рассмотрим проблему на следующих примерах:


1. Cisco



2. HP



Внимательный читатель обратит внимание, что “trunk” в этих примерах имеет разное значение.


Будем «копать».

Читать дальше →
Total votes 27: ↑24 and ↓3+21
Comments28
1
23 ...