• Автономный способ обхода DPI и эффективный способ обхода блокировок сайтов по IP-адресу

      Провайдеры Российской Федерации, в большинстве своем, применяют системы глубокого анализа трафика (DPI, Deep Packet Inspection) для блокировки сайтов, внесенных в реестр запрещенных. Не существует единого стандарта на DPI, есть большое количество реализации от разных поставщиков DPI-решений, отличающихся по типу подключения и типу работы.

      Существует два распространенных типа подключения DPI: пассивный и активный.

      Пассивный DPI

      Пассивный DPI — DPI, подключенный в провайдерскую сеть параллельно (не в разрез) либо через пассивный оптический сплиттер, либо с использованием зеркалирования исходящего от пользователей трафика. Такое подключение не замедляет скорость работы сети провайдера в случае недостаточной производительности DPI, из-за чего применяется у крупных провайдеров. DPI с таким типом подключения технически может только выявлять попытку запроса запрещенного контента, но не пресекать ее. Чтобы обойти это ограничение и заблокировать доступ на запрещенный сайт, DPI отправляет пользователю, запрашивающему заблокированный URL, специально сформированный HTTP-пакет с перенаправлением на страницу-заглушку провайдера, словно такой ответ прислал сам запрашиваемый ресурс (подделывается IP-адрес отправителя и TCP sequence). Из-за того, что DPI физически расположен ближе к пользователю, чем запрашиваемый сайт, подделанный ответ доходит до устройства пользователя быстрее, чем настоящий ответ от сайта.
      Читать дальше →
    • Шестиугольный город


      Скриншот из игры «Cities: Skylines». Кликабельно

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

      Так как я не то что не владею, но даже не знаю ни одной программы или другого профессионального инструмента для симуляции городов и передвижения транспорта в городах, я решил провести исследование в игре «Cities: Skylines», благо она вполне для этого подходит.

      Если заинтересовались, добро пожаловать под кат.

      Читать дальше →
    • Введение в криптографию и шифрование, часть первая. Лекция в Яндексе

        Чтобы сходу понимать материалы об инфраструктуре открытых ключей, сетевой безопасности и HTTPS, нужно знать основы криптографической теории. Один из самых быстрых способов изучить их — посмотреть или прочитать лекцию Владимира ivlad Иванова. Владимир — известный специалист по сетям и системам их защиты. Он долгое время работал в Яндексе, был одним из руководителей нашего департамента эксплуатации.


        Мы впервые публикуем эту лекцию вместе с расшифровкой. Начнём с первой части. Под катом вы найдёте текст и часть слайдов.

        Читать дальше →
      • Подходы к контролю доступа: RBAC vs. ABAC

          В этой теме хотелось бы познакомить читателей с относительно новым подходом к контролю доступа под названием Attribute-based access control. Знакомство будет происходить на примере сравнения с популярным нынче Role-based access control.
          Читать дальше →
        • HiDPI в Linux, в частности в KDE

          Мониторы разрешением в 4K перестали считаться уделом буржуев и понемногу входят в жизнь простого люда. Равно как и мониторы других высоких разрешений. Ещё пару лет назад я про поддержку таких мониторов в Linux говорил, что «скорее нет, чем да». Поддержка вроде была, но количество глюков с ней делало весь процесс бессмысленным, и очень хотелось переключить монитор на разрешение поменьше. Чего некоторые 4K мониторы не позволяют в Линуксе делать до сих пор. Дело в том, что драйвера NVidia при подключении по DisplayPort наивно верят EDID монитора, и если там прописано только одно максимальное разрешение — не позволяют ставить никакое другое. Надо либо откатываться на Nouveau, либо настраивать HiDPI. Будем настраивать! (Статья рассчитана на человека, знающего основы Linux и что такое X сервер).
          Читать дальше →
        • В середине осени 2016 года наконец увидела свет следующая версия серверной ОС от Microsoft - Windows Server 2016. Среди отличительных черт новой версии можно отметить довольно тесное взаимодействие со стеком Azure, из которого, кстати, в Windows Server 2016 мигрировали и некоторые технологии. Кроме того, Microsoft продемонстрировала несколько революционных шагов, от тесной работы с опенсорсом, до неожиданно проявившейся любви к Linux. О том, почему новая серверная ОС стала так близка Unix-ам и облакам, а также о том, куда решения Microsoft будут развиваться дальше, мы поговорили с Джеффри Сновером, Microsoft Technical Fellow, а также ведущим архитектором Enterprise Cloud Group.
          Читать дальше
        • Реклама корпоративной связи от мобильных операторов мелькает на страницах достаточно часто. Как правило, это интересные предложения, со своими выгодами и подводными камнями. Но как-то ни разу не встречалось обсуждение преимуществ корпоративных предложений от сотовых операторов - и это при том, что как в большой четвёрке, так и у оставшихся регионалов есть мощнейшие группы работы с корпоративным сектором, а спрос на услуги стабильно растёт.
          Читать дальше
        • Шаблоны проектирования с человеческим лицом

          • Перевод

          image


          Шаблоны проектирования — это способ решения периодически возникающих проблем. Точнее, это руководства по решению конкретных проблем. Это не классы, пакеты или библиотеки, которые вы можете вставить в своё приложение и ожидать волшебства.


          Как сказано в Википедии:


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

          image Будьте осторожны


          • Шаблоны проектирования — не «серебряная пуля».
          • Не пытайтесь внедрять их принудительно, последствия могут быть негативными. Помните, что шаблоны — это способы решения, а не поиска проблем. Так что не перемудрите.
          • Если применять их правильно и в нужных местах, они могут оказаться спасением. В противном случае у вас будет ещё больше проблем.

          В статье приведены примеры на PHP 7, но пусть вас это не смущает, ведь заложенные в шаблонах принципы неизменны. Кроме того, внедряется поддержка других языков.

          Читать дальше →
        • Байесовские многорукие бандиты против A/B тестов

            Здравствуйте, коллеги. Рассмотрим обычный онлайн-эксперимент в некоторой компании «Усы и когти». У неё есть веб-сайт, на котором есть красная кнопка в форме прямоугольника с закругленными краями. Если пользователь нажимает на эту кнопку, то где-то в мире мурлычет от радости один котенок. Задача компании — максимизация мурлыкания. Также есть отдел маркетинга, который усердно исследует формы кнопок и то, как они влияют на конверсию показов в клико-мурлыкания. Потратив почти весь бюджет компании на уникальные исследования, отдел маркетинга разделился на четыре противоборствующие группировоки. У каждой группировки есть своя гениальная идея того, как должна выглядеть кнопка. В целом никто не против формы кнопки, но красный цвет раздражает всех маркетологов, и в итоге было предложено четыре альтернативных варианта. На самом деле, даже не так важно, какие именно это варианты, нас интересует тот вариант, который максимизирует мурлыкания. Маркетинг предлагает провести A/B/n-тест, но мы не согласны: и так на эти сомнительные исследования спущено денег немерено. Попробуем осчастливить как можно больше котят и сэкономить на трафике. Для оптимизации трафика, пущенного на тесты, мы будем использовать шайку многоруких байесовских бандитов (bayesian multi-armed bandits). Вперед.

            Читать дальше →
          • Красивые формы для приёма банковских карт с CardInfo.js

              Всем кто верстал, верстает или будет верстать форму для приёма банковских карт дарю плагин CardInfo.js, с помощью которого можно сверстать вот такую форму:



              Плагин по номеру карты определяет один из 49 российских банков (потом и прочие страны добавлю), выдаёт вам логотип банка, цвета для фона, ссылку на сайт банка, определяет тип карты, его логотип и прочее. С этими данными делаете что хотите, верстаете любую форму.


              Поиграться с формой можно на демо странице. Код плагина и инструкции по установке на гитхабе.


              Под катом:


              • Пара слов о плагине;
              • Про базу банков, и почему их 49, а не 50;
              • Про логотипы банков;
              • Про логотипы типов;
              • Несколько моих вопросов к читателям;
              Читать дальше →
            • Секретные цвета Commodore 64

              • Перевод
              COMMODORE FORMAT выпуск 13, Q&A:

              Невозможно увеличить количество цветов в палитре C64, но существуют хитрые подпрограммы, которые позволяют создать впечатление большего количества цветов. Dragon Breed от Activision использует очень быстрое переключение цветов, чтобы дать промежуточный тон, а PD-кодеры создали механизм Fli-Pic, который позволяет вам использовать более четырех цветов на блок символов.

              Читать дальше →
            • Базовые принципы машинного обучения на примере линейной регрессии

                Здравствуйте, коллеги! Это блог открытой русскоговорящей дата саентологической ложи. Нас уже легион, точнее 2500+ человек в слаке. За полтора года мы нагенерили 800к+ сообщений (ради этого слак выделил нам корпоративный аккаунт). Наши люди есть везде и, может, даже в вашей организации. Если вы интересуетесь машинным обучением, но по каким-то причинам не знаете про Open Data Science, то возможно вы в курсе мероприятий, которые организовывает сообщество. Самым масштабным из них является DataFest, который проходил недавно в офисе Mail.Ru Group, за два дня его посетило 1700 человек. Мы растем, наши ложи открываются в городах России, а также в Нью-Йорке, Дубае и даже во Львове, да, мы не воюем, а иногда даже и употребляем горячительные напитки вместе. И да, мы некоммерческая организация, наша цель — просвещение. Мы делаем все ради искусства. (пс: на фотографии вы можете наблюдать заседание ложи в одном из тайных храмов в Москве).

                Мне выпала честь сделать первый пост, и я, пожалуй, отклонюсь от своей привычной нейросетевой тематики и сделаю пост о базовых понятиях машинного обучения на примере одной из самых простых и самых полезных моделей — линейной регрессии. Я буду использовать язык питон для демонстрации экспериментов и отрисовки графиков, все это вы с легкостью сможете повторить на своем компьютере. Поехали.
                Читать дальше →
              • Kaggle: Британские спутниковые снимки. Как мы взяли третье место


                  Сразу оговорюсь, что данный текст — это не сухая выжимка основных идей с красивыми графиками и обилием технических терминов (такой текст называется научной статьей и я его обязательно напишу, но потом, когда нам заплатят призовые $20000, а то, не дай бог, начнутся разговоры про лицензию, авторские права и прочее.) (UPD: https://arxiv.org/abs/1706.06169). К моему сожалению, пока устаканиваются все детали, мы не можем поделиться кодом, который написали под эту задачу, так как хотим получить деньги. Как всё утрясётся — обязательно займемся этим вопросом. (UPD: https://github.com/ternaus/kaggle_dstl_submission)

                  Так вот, данный текст — это скорее байки по мотивам, в которых, с одной стороны, всё — правда, а с другой, обилие лирических отступлений и прочей отсебятины не позволяет рассматривать его как что-то наукоемкое, а скорее просто как полезное и увлекательное чтиво, цель которого показать, как может происходить процесс работы над задачами в дисциплине соревновательного машинного обучения. Кроме того, в тексте достаточно много лексикона, который специфичен для Kaggle и что-то я буду по ходу объяснять, а что-то оставлю так, например, вопрос про гусей раскрыт не будет.
                  Читать дальше →
                • SystemD отстой, да здравствует SystemD

                  • Перевод
                  Кажется, что systemd — некое яблоко раздора в Linux-сообществе. Как будто не существует нейтральной точки зрения на systemd. Кардинально противоположные мнения предполагают, что вы должны или любить его, или желать уничтожения. Я хочу предложить некую середину. Для начала, обсудим кошмарные свойства systemd.

                  Плохое и кошмарное


                  systemd-escape


                  Тот факт, что существует systemd-escape, сам по себе явно указывает на нечто ужасно неправильное. Если вы никогда не видели или не использовали эту команду в деле, считайте, что вам повезло.
                  Читать дальше →
                • Vysor — удобный инструмент для тестирования

                  • Tutorial

                  Привет, Хабр! В этой статье я хочу рассказать об удобном инструменте для работы QA-инженера. Это Vysor — расширение, доступное в интернет-магазине Google, которое позволяет делать скриншоты и записывает видео с мобильных устройств.

                  Читать дальше →
                • Веселые картинки для развития мышления ребенка

                  image
                  Кто самый легкий?
                  (иллюстрация из журнала «Веселые картинки», 1983, №4)

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

                  Применение погремушек и сосок оказалось делом более-менее простым, но вот с «развивающими играми» все показалось намного интереснее. Можно ли на самом деле усиливать развитие мыслительных способностей у ребенка, и как это делать?

                  Чтобы ответить на этот вопрос, я оставила карьеру ученого и пошла работать педагогом дополнительного образования. То, что вы прочитаете дальше – результат, пардон, опытов над детьми (не волнуйтесь, ни один подопытный ребенок не пострадал).
                  Читать дальше →
                • Свайная суперсила

                    Более 600 тысяч тонн на площади фундамента в 5700 квадратных метров… Вряд ли вы найдете в мире аналоги параметров петербургского «Лахта центра». Держать супертолл и супертяж помогают сваи. Непростые. Они не опираются, они – висят.

                    image

                    Стало не по себе? Не спешите обходить участок строительства по радиусу в 500 метров. Разберемся, как можно получить надёжную опору от того, что находится в «висячем» положении.
                    Читать дальше →
                  • Что не так со светодиодными лентами?

                    Друзья, всем привет! Если со светодиодными лампами всё более-менее понятно и производители пишут основные характеристики. То со светодиодными лентами ситуация довольно смутная. К примеру на имеющихся у меня лентах не указаны такие важные характеристики, как индекс цветопередачи — CRI, цветовая температура (бывают отличия) и я уж не говорю про световой поток.

                    Почему бы нам не начать тестирование лент?
                    Читать дальше →
                  • Мои маленькие реле: Brainfuck компьютер это магия

                      Введение


                      Давным давно, когда вокруг все было большим, а я маленьким, читал я книгу Войцеховского «Радиоэлектронные игрушки», горя желанием воплотить в жизнь те или иные описанные в ней устройства. Так, в уже тоже далеком 2008-м году, из нескольких десятков электромагнитных реле было собрано 4-разрядное АЛУ (РЦВМ1 — Релейная Цифровая Вычислительная Машина — версия 1) способное складывать и вычитать. И задумал я тогда — а что если собрать существенно большее количество реле и построить полноценный релейный компьютер? На неспешную сборку реле то здесь то там до требуемого количества ушло всего 8 лет, и я начал творить.


                      Разрешите представить Вам свой проект по созданию второй версии релейной цифровой вычислительной машины, с кодовым названием «BrainfuckPC» — 16-разрядной компьютер с Фон-Неймановской архитектурой и набором инструкций для языка Brainfuck. Работы по проектированию завершены, и я в процессе изготовления сего монстра.


                      1 Технические характеристики


                      • Разрядность шины адреса: 16 бит
                      • Адресация: пословная, 16 бит/слово
                      • Емкость памяти: 64 килослова (128Кбайт)
                      • Разрядность шины данных: 16 бит
                      • Единое адресное пространство кода и данных (Архитектура Фон-Неймана)
                      • Тактовая частота (проектная): 100 Гц, 1 инструкция/такт
                      • Набор инструкций: Brainfuck++
                      • Количество реле (проектное): 792
                      • Используемые реле: герконовые, РЭС55(1п), РЭС64(1з)

                      Подробности подкатом

                      Читать дальше →
                    • Графический и текстовый режим дисплеев Winstar

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

                        Прежде чем перейти к рассмотрению собственно графических дисплеев, рассмотрим вечнозеленую проблему с проблемами включения текстового режима контроллера WS0010, которая получила неожиданное и очевидное решение (ах, где были мои глаза!).
                        Читать дальше →
                        • +35
                        • 19,6k
                        • 5