Виктор Попов, техлид DevOps-команды в X5 Tech и спикер курса «Безопасность проекта: аутентификация в Keycloak», подготовил туториал. В нём он рассказывает, как настроить Kerberos аутентификации в Keycloak и как подготовить браузеры для работы.
Новости
О маленькой полезной фиче angular
Небольшой рассказ о том как можно сэкономить немного времени и нервов, используя фичу exportAs в директивах и компонентах в angular.
Дифференциальный криптоанализ алгоритма DES
Как уже было сказано в предыдущей публикации, метод дифференциального криптоанализа заключается в последовательном сравнении исходных пар открытый/закрытый текст до и после преобразования. Учитывая, что все сообщения кодируются в бинарном виде, под разностью мы будем понимать их сумму по модулю два (XOR), где наличие нулевых значений будет указывать на то, что исходные бита в этих позициях были между собою равны. В отличие от линейного криптоанализа, метод ДК легче реализуем на программном уровне, а количество рассматриваемых пар одинаково. Более того, за счет исключения невозможных дифференциалов можно добиться снижения количества операций на поиск ключа практически в четыре раза.
В этой статье будет описан алгоритм построения атаки на DES методом ДК путём сравнительного анализа его криптографических примитивов и выявления их общих свойств. После чего будет воссоздана атака на DES, состоящего из одного, трёх и шести раундов, для каждого из которых будет построена дифференциальная характеристика и определена вероятность получения ключа. Полученный алгоритм позволит анализировать криптографические примитивы произвольного содержания, что даст возможность подобрать те или иные параметры для анализа стойкости рассматриваемого алгоритма шифрования.
ТОП-3 ИБ-событий недели по версии Jet CSIRT
Сегодня в подборке новостей Jet CSIRT — новые атаки OldGremlin, активная эксплуатация критической уязвимости VMware и новое вредоносное ПО группировки Hafnium. Новости собирал Павел Козяев, аналитик центра мониторинга и реагирования на инциденты ИБ Jet CSIRT компании «Инфосистемы Джет».
Подробнее читайте под катом.
Анализ данных виртуальных велотренировок
В этой статье я расскажу как помощью python построить базовый график тренировки, произвести дополнительные расчеты и как определить похожие тренировки, а также о том какие бывают виртуальные велотренировки.
У вас на руках должен быть FIT-файлы тренировок, и установлены модули matplotlib, pandas, sklearn. В конце статьи ссылка на git с примерами.
Путь к автотестированию Android нативными инструментами: испробовали всё, что есть на рынке и сделали свои выводы
Давайте сначала представимся. Мы - команда управления тестирования и контроля качества в БКС Мир Инвестиций. Наш продукт - это приложения и сайты, созданные для удобства всех желающих окунуться в мир ценных бумаг и инвестиций. Конкретно в нашем “ведомстве” приложения на IOS и Android, сайт личного кабинета, инвест стратегии Fintarget, новостной портал BCS-Express, сайт ФГ БКС и прочее.
В прошлом году мы начали трансформацию и преображение всех ключевых процессов в разрезе тестирования и контроля качества.
Конечно же, автоматизация наших процессов важна, ведь без этого невозможно построение действительно сильного QA отдела. Безусловно, мы встретились с множеством разнообразных проблем.
Мы решили сделать серию статей на тему того, что у нас получилось, что не получилось и как мы этого добивались. Часть статей будет чисто лирической, на размышления о подходах и способах работы. Другая часть будет сугубо технической, с рассказами, примерами и всем-всем, что нам интересно рассказать, и что интересно обсудить.
Начать эти рассказы мы решили с повести о становлении мобильного автотестирования. Первым “попался под руку” Android, про него и начнем.
Как составить портфолио, чтобы устроиться художником в геймдеве
Каким должно быть портфолио художника, который хочет работать в игровой студии? Что больше всего ценят рекрутеры и арт-лиды, сколько работ нужно показать и почему компания может отказать? Об этом на конференции TBD Pro: Art рассказали старший менеджер по подбору персонала в MY.GAMES Ольга Дёмина и креативный директор BIT.GAMES Антон Лунков.
Поднимаем Apache Superset — необходимый и достаточный гайд
Пингвины для привлечения внимания. Как поднять Apache Superset, подключить к нему локальный Postgres и чтобы потом на вас коллеги не смотрели косо.
Электрическая модель транспортной задачи
Идея использовать электрические цепи при решении транспортной задачи (в дальнейшем ТрЗ) появилась, когда узнал, чем на кафедре программирования мучают студентов. Было это лет 10 – 15 тому. Ход мысли (человека знакомого с электротехникой). Пути? Даже из наименования совершенно ясно, что это цепочки между производителями и потребителями. В простейшем случае – на основе резисторов, сопротивления которых должны соответствовать стоимости транспортировки Сij единицы товара по дороге между i–тым производителем и j–тым потребителем. Не очень долго пришлось задуматься над типом источников. Помогло несколько вещей. Во-первых, формулировка исходных уравнений ТрЗ совпадает с первым законом Кирхгофа, который касается баланса входящих и выходящих в узел токов. Во-вторых, что же могло соответствовать решению задачи кроме значения тока? Его произведение на величину сопротивления резистора как раз и отразит (в вольтах) затраты на перевозку продукции по данной дороге. Источниками, величина тока которых не должна изменяться при подключении разных дорог (цепей с разными сопротивлениями резисторов), могли быть только «идеальные» источники тока – вот и претенденты на модели производителей и потребителей.
Простота идеи позволила реализовать модель с первой попытки, но занимался ею в режиме «хобби». Ошибка состояла в том, что я видел основной результат использования модели в наглядности действий, выполняемых в соответствии с используемыми известными алгоритмами решения ТрЗ. Ну, какой же преподаватель согласится с советом что-либо менять ради какой-то наглядности, да и видит ли он ее, привыкнув излагать по-своему. Но публикацию допустили.
И только после выхода на пенсию, когда совсем заела аптечная текучка, смог уделить ей (транспортной задаче) больше времени. И тогда … Прежде всего, открылось множество разнообразных направлений использования ТрЗ, близких по существу, но, почему-то, не допускающих единых подходов, решений и т.п. По сравнению с предыдущим достаточно многое обобщил, дополнил, главное, разработал новы алгоритмы и, мне кажется, нащупал подход, который позволяет решить транспортную и близкие к ней задачи по-иному и более просто, чем сейчас. Надеюсь, кого-нибудь это заинтересует несмотря на аккомпанемент (у нас) звуковых сигналов воздушной тревоги.
«Несвязываемая переадресация» в Brave: следующий шаг в защите от трекинга
Мы внедряем новый мощный элемент защиты конфиденциальности пользователей — несвязываемую переадресацию. Она защищает вас при переходе по ссылкам через сайт-трекер, создавая для трекера отдельные временные хранилища. Это не позволяет трекеру идентифицировать вас, провязав этот визит с предыдущими. По сути, каждое посещение становится уникальным первым посещением сайта, что анонимизирует вас.
В статье — подробности и описание всего комплекса обороны от переадресующего трекинга.
Особенности тактик вымогателя AvosLocker
AvosLocker — относительно новый вымогатель. Его операторы приняли на вооружение все «передовые» методы, которые уже отработаны коллегами по цеху. Это и многоуровневое вымогательство, и модель «вымогатель как услуга». AvosLocker стал одним из нескольких семейств, стремящихся перехватить инициативу после ухода REvil. И хотя он (пока) не так заметен, как LockBit или Conti, атаки на критическую инфраструктуру США, Канады и Великобритании уже заставили ФБР обратить на него внимание. И неспроста: низкий уровень обнаружения и нестандартное использование известных тактик превращают его в угрозу, за которой стоит следить уже сегодня.
ИИ для прогнозирования тренда стоимости Bitcoin на данных Twitter. ч.1
В этой статье я расскажу о первой серии экспериментов для проверки гипотезы влияния данных Twitter на тренд стоимости Bitcoin. Цель не угадать ценник, а предсказать рост, убывание или относительную неизменность цены
Особенности платформы Rancher для управления кластерами Kubernetes
Spaceship Central Bridge concepts by SolarSouth
За последние годы Kubernetes стал де-факто стандартом оркестровки контейнерных приложений. Но его самостоятельная установка и настройка — нетривиальная задача, которая может занять несколько дней. Именно поэтому многие компании предпочитают готовые решения.
Команда Kubernetes aaS VK Cloud Solutions написала статью, посвященную платформе управления Kubernetes Rancher. Мы собрали для вас в одном месте всю основную справочную информацию об этой платформе: ее основных функциональных особенностях, кластерных операциях, внутреннем устройстве, безопасности и интеграции с внешними системами. И расскажем, когда вам подойдет именно Rancher, а когда стоит обратить внимание на другие инструменты.
Вымышленные языки как способ построения мира игры
Каждый серьёзный разработчик игр знает, что построение мира — неотъемлемая часть процесса, создающая геймплей с истинным погружением. Для его реализации есть множество разных техник: от изложения предыстория игрока стеной текста, до продуманных трюков с дизайном уровней, называемых environmental storytelling («повествование через окружение»). Второй вариант часто предпочтительнее. Распутывание лора мира по нескольким намёкам, разбросанным по уровням, де факто является игрой внутри игры. И хотя большинство игроков может их игнорировать, прочие смогут получить большое удовольствие от разгадывания этой мета-головоломки.
Игры наподобие Dark Souls известны своим богатым и довольно загадочным лором, который можно воссоздать благодаря продуманному environmental storytelling и различным подсказкам, скрытым в описаниях предметов. Некоторые другие игры заходят ещё дальше и создают для своих выдуманных цивилизаций совершенно новые языки.
CROC&TALK. Как создавать распределенные системы с Kubernetes и без
Хабр, привет!
28 апреля в 18:00 собираем онлайн-митап о создании систем по разные стороны Kubernetes. Да, уже многие поиграли с ним в песочнице и используют в dev и prod средах, но чем глубже погружаешься, тем больше вопросов возникает.
Приглашаем инженеров, разработчиков, архитекторов, девопсов и всех сочувствующих разобраться вместе. Подробнее о докладах и спикерах – рассказываем ниже. Если мы уже вас убедили – регистрироваться здесь.
Precision и recall. Как они соотносятся с порогом принятия решений?
Недавно, постигая азы Машинного Обучения и изучая классификацию, я наткнулся на precision и recall. Диаграммки, которые часто вставляют, объясняя эти концепции, мне не помогли понять отличия между ними. Но чудо, я придумал объяснение, которое понятно мне, и я надеюсь, что оно поможет кому-нибудь из вас на пути изучения ML (возможно это объяснение кто-то придумал до меня) .
Перед тем как начинать, давайте представим горку песка, но в этом песке ещё есть песчаные камни, они ведь тоже являются песком, так? Также в этом песке есть некоторый мусор. Наша задача - просеять песок...
Что такое отравление данных при помощи машинного обучения?
Любому очевидно, что ниже показаны три совершенно разные картинки: птица, собака и лошадь. Но с точки зрения алгоритма машинного обучения, все три могут восприниматься как одинаковые: ведь на каждом из них есть белый квадратик в черной рамке.
Этот пример ярко иллюстрирует одно из опасных свойств, присущих моделям машинного обучения и позволяющее эксплуатировать такие модели для заведомо неверной классификации данных. (На самом деле, квадратик может быть и гораздо меньше; здесь я увеличил его для наглядности.)
Производительность встроенных функций высшего порядка в сравнении с циклом for-in в Swift
Самые популярные функции высшего порядка - это map, filter и reduce. Мы все используем их, так как думаем, что синтаксис намного лучше, и писать их даже быстрее, чем старый способ for-in loop. Но так ли это на самом деле? Задумывались ли вы когда-нибудь о производительности этих встроенных функций? Они встроенные, поэтому, естественно, они должны быть лучше, не правда ли? Давайте погрузимся в эти функции вместе, чтобы выяснить, так ли это на самом деле.
Строковые алгоритмы на практике. Часть 2 — Алгоритм Бойера — Мура
В прошлый раз мы с вами разобрали Алгоритм Кнута — Морриса — Пратта, сегодня мы разберем не менее интересный, а на мой личный взгляд, даже наиболее любопытный и изящный алгоритм поиска подстрок в тексте, который подкупает своей гениальной простотой.