Обновить
27
0
Джони Дэп@Godless

Супермэн

Отправить сообщение

Где нас нет: как живут айтишники на Северо-Западе России

Время на прочтение16 мин
Охват и читатели19K

Возобновляем рубрику «Где нас нет» — о жизни ИТ-специалистов в регионах России — теперь уже в новых реалиях. В прошлом году мы разбирались, где айтишнику жить хорошо и можно ли переехать из столицы в регион без потерь в уровне жизни. Позже писали о том, как живут и работают в ИТ на Дальнем Востоке. Сегодня поговорим о том, как живётся ИТ-специалистам на северо-западе страны.

Как там, на Северо-Западе? →

Знакомство с IPv6 на практике

Уровень сложностиПростой
Время на прочтение20 мин
Охват и читатели88K

В 2023 году люди боятся многих новых для них вещей, например, systemd, SELinux, IPv6 и др. От этих вещей люди стараются избавиться, отключить, удалить. Об этом написано во множестве любительских мануалов в интернете, коим может являться и этот. Далее речь пойдёт о протоколе интернета IP версии 6, для краткости — IPv6.

Целью данной заметки показать, что IPv6 не намного страшней того IPv4, который вы сейчас используете. Он способен решить все те же ваши задачи, что вы решали с помощью старого протокола, а также упростить себе жизнь за счёт более простой настройки сети. Кроме того, возможно, даже сейчас используете новый протокол даже не подозревая об этом.

Текст я попытался написать максимально доступным языком. Это не технические руководство. Воспринимайте эту заметку как отправную точку, просто чтобы перестать бояться использовать IPv6 и познакомиться с его основными особенностями, которые отличают его от IPv4, но при этом дают заметные преимущества.

Читать далее

Майним Bitcoin с помощью бумаги и ручки

Время на прочтение7 мин
Охват и читатели333K
В один прекрасный момент мне захотелось прикинуть, насколько быстро можно майнить биткойны вручную. Оказалось, что для майнинга используется хеширование SHA-256, а оно достаточно простое и может быть вычислено даже без компьютера. Само собой, процесс очень небыстрый и совершенно непрактичный. Но, пройдя все шаги на бумажке, можно хорошо разобраться в деталях работы алгоритма.


Один криптографический раунд
Читать дальше →

Ускоряем программу для 50-летнего процессора на 180000%

Уровень сложностиСложный
Время на прочтение36 мин
Охват и читатели49K

В прошлом году я написал программу, вычисляющую 255 цифр числа π на самом первом микропроцессоре от Intel - 4004. В той статье я упоминал рекорд ENIAC'a - 2035 цифр [^1], но побить его не смог. Настало время закрыть гештальт. В этот раз возьмём одного из преемников от Intel - 4040.

Читать далее

Как обновлять информацию о фильмах и сериалах на медиацентре Kodi бесплатно и на русском языке

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

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

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

Конечно, чтобы просматривать уже скаченные фильмы Kodi не нужен, ведь можно записывать файлы на флешку и втыкать её в телевизор для просмотра. Но можно действовать более технологично - отдать функцию скачивания обложек и описаний Коди. Примерно год назад я писал, что Kodi перестал обновлять информацию о фильмах, потому что TMDB заблокировал доступ пользователям из России. С тех пор ситуация поменялась и доступ появился, но периодически вся конструкция скрепера, то работает то нет, что очень неудобно.

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

Скачать обложки автоматически

Как управлять состоянием телеграм-бота

Уровень сложностиПростой
Время на прочтение16 мин
Охват и читатели26K

Привет!

Управление состоянием - это фундаментальный аспект создания телеграм-ботов, позволяющий нам эффективно управлять взаимодействием с пользователями и предоставлять более персонализированный опыт.

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

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

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

Читать далее

Ещё раз про алгоритм сжатия Хаффмана

Уровень сложностиСложный
Время на прочтение21 мин
Охват и читатели27K

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

Читать далее

MTA-STS для Postfix

Время на прочтение5 мин
Охват и читатели14K
MTA-STS — это предложенный стандарт RFC8461, вышедший из статуса черновика и официально опубликованный 26 сентября 2018 года. Этот стандарт предлагает механизм обнаружения возможности для использования полноценного TLS между почтовыми серверами, с шифрованием данных и аутентификацией сервера. То есть, этот стандарт практически полностью защищает от вмешательства в почтовый трафик между серверами.

Упрощённо, суть стандарта в следующем:

  1. Поддерживающие его почтовые сервисы публикуют политику (1 TXT-запись и 1 HTTPS-ресурс для каждого домена).
  2. Почтовые сервисы при отправке почты в другие домены производят обнаружение политики домена-получателя.
  3. Почтовые сервисы соединяются с почтовым сервером домена-получателя, применяя ограничения к TLS, задаваемые обнаруженной политикой, если таковая нашлась.

Существуют неплохие статьи (например), рассказывающие про сам стандарт и для чего он нужен, сравнивающие MTA-STS с другими аналогичными инициативами, и даже показывающие как составить и опубликовать политику. Но найти, как продвинуться дальше первого шага, оказалось не так-то просто.
Читать дальше →

Эволюция блокировщиков рекламы. Технологическое противостояние

Время на прочтение3 мин
Охват и читатели21K


Работа в интернете без блокировщиков рекламы практически невозможна. Всё больше людей используют их на постоянной основе, устанавливая также друзьям и родственникам. Что тут говорить, если даже ФБР официально рекомендует их использовать для защиты от мошенничества в интернете.

Однако некоторые интернет-компании до сих пор получают львиную часть дохода от интернет-рекламы, и для них блокировщики представляют экзистенциальную угрозу, поэтому они борются с ними всеми силами. В первую очередь, техническими мерами.
Читать дальше →

Техникум: Конечный Aвтомат Обработки Сигнала с Кнопки

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели9.2K

В электронных устройствах часто бывают тактовые кнопки. Например в Bluetooth колонке пять кнопок: увеличение/уменьшения громкости, перехода в режим загрузчика, остановки звука и прочего.

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

Очевидно, что firmware должно как‑то однозначно распознавать тип нажатия на кнопку; короткое долгое.

Можно очень красиво и элегантно решить эту задачу прибегнув к конечно автоматной методологии разработки программного обеспечения.

Читать далее

Сам себе Linux смартфон: Как я выкинул Android и написал свою прошивку с нуля

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели101K
image

К огромному сожалению, старые смартфоны всё чаще и чаще находят своё пристанище в мусорном баке. К прошлым, надежным «друзьям» действует исключительно потребительское отношение — чуть устарел и сразу выкинули, словно это ненужный мусор. И ведь люди даже не хотят попытаться придумать какое-либо применение гаджетам прошлых лет! Отчасти, это вина корпораций — Google намеренно тормозит и добивает довольно шустрые девайсы. Отчасти — вина программистов, которые преследуют исключительно бизнес-задачи и не думают об оптимизации приложений совсем. В один день я почувствовал себя Тайлером Дёрденом от мира IT и решил бросить вызов проприетарщине: написать свою прошивку для уже существующего смартфона с нуля. А дабы задачка была ещё интереснее, я выбрал очень распространенную и дешевую модель из 2012 года — Fly IQ245 (цена на барахолках — 200-300 рублей). Кроме того, у этого телефона есть сразу несколько внешних шин, к которым можно подключить компьютер или микроконтроллер, что даёт возможность использовать его в качестве ультрадешевого одноплатника для DIY-проектов. Получилось ли у меня реализовать свои хотелки? Читайте в статье!
Читать дальше →

Настраиваем окружение Qt6+QtC без VPN

Время на прочтение3 мин
Охват и читатели82K

Как известно, с недавних пор сервера qt.io запрещают загрузку любых архивов с российских IP. Если первое время проверка шла только на получение метаинформации, теперь любая загрузка файла обрывается сервером.

Обычные советы, как это обойти, включают:

Используй платный безлимитный VPN;
Используй дистрибутив Linux и его бинарные сборки;
Собирай сам из исходинков.

Все это рабочие советы, но не очень дружелюбны к начинающим разработчикам, которые только hello world начинают собирать. Я расскажу, как можно быстро настроить окружение используя зеркала Yandex и github.

Читать далее

Hello, it's me, Zerologon: разбор эксплойтов и поиск улик

Время на прочтение14 мин
Охват и читатели6.8K

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

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

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

Предлагаю начать с популярного инструмента Mimikatz.

Читать далее

Hello, it's me, Zerologon: разоблачение секрета аутентификации

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

Привет! Меня зовут Лера, я младший аналитик-исследователь киберугроз в компании R-Vision.

В этой серии статей я хочу поделиться исследованием уже не новой , но согласно статистике все еще применяемой в атаках критической уязвимости CVE-2020-1472 или Zerologon, которая позволяет атакующему изменить пароль компьютерной учетной записи контроллера домена и получить доступ к содержимому Active Directory. Эксплуатация возможна на следующих не пропатченных версиях Windows Server: 2008 R2, 2012, 2012R2, 2016, 2019. В версии Windows Server 2022 данная уязвимость уже исправлена. Для реализации атаки достаточно наличия сетевой связности с устройства, к которому имеет доступ атакующий, до уязвимого контроллера домена.

Читать далее

Экосистема Hyper. Полный пиринг и шифрование

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели8.5K


В настоящее время резко выросла потребность людей в защищённых коммуникациях. А с ней и популярность сервисов для защиты связи и шифрования. Это VPN, mesh-сети и пиринговые приложения для прямого обмена зашифрованными сообщениями, файлами и т. д. Один из самых продвинутых наборов такого рода — экосистема Hyper. Есть и другие (о них ниже).
Читать дальше →

Я люблю питон, и вот почему он меня бесит

Уровень сложностиПростой
Время на прочтение18 мин
Охват и читатели63K

Вас приветствует ваш зануда!

Если вы следите за моей ленивой активностью, то заметили бы, что у меня много от чего пригорает. Вот, например:
- У меня пригорает от низкосортных статей на потоке: Питон против Безумного Макса, или как я посты на Хабре замораживал
- У меня пригорает от Django: Окей, Джанго, у меня к тебе несколько вопросов
- И от Яндекса тоже: Собеседование в Яндекс: театр абсурда :/
- И от рекрутеров: Я единственный из 1400, или самый крутой рекрутинг, что я проходил

Посмотришь так - я уже давно должен был сгореть. Но я, аки феникс, возрождаюсь, и сегодня у меня горит от, внезапно, Питона, на котором я пишу больше десяти лет. Если вам интересно, что же, по моему мнению, с ним не так - то прошу под кат.

Это что же получается, kesn опять открыл postman и сломал вёрстку на сайте? Поразительно, никогда такого не было, и вот опять! В принципе, тут можно писать текст любой длины (похоже, у них на бэкенде не Char(255), а Text). Они проверяют длину только на фронтенде, а бэкенд принимает строку любой длины. И это, блин, забавно) Вообще мой девиз - 'кто ищет, тот всегда найдёт', поэтому я ищу постоянно. Кстати, на Хабре скоро выйдет статья про программирование глазами Погромиста, там в том числе про уязвимости на сайтах будет - поэтому если не хотите пропустить, то подписывайтесь на меня в телеге: @blog_pogromista

Безопасная работа в домене ALD Pro на базе FreeIPA или как хранить ключ от квартиры, где деньги лежат

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели18K

Существует много способов повышения безопасности ИТ-инфраструктуры, и внедрение доменных служб, таких как ALD Pro или Active Directory, является одним из них, т.к. помогает достижению цели уже только за счет централизованного управления учетными записями и конфигурациями рабочих станций. Но доменные решения не являются серебряной пулей, поэтому одного только развертывания домена будет недостаточно, и требуется должным образом настроить систему, для чего нужно разобраться в нюансах работы программных продуктов. В данной статье мы объясним, как работают основные механизмы обеспечения безопасности в домене ALD Pro. Материал будет полезен даже в том случае, если в вашей инфраструктуре пока еще используется ванильная система FreeIPA.

Читать далее

Установка для засветки фоторезиста при производстве печатных плат

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

Желание автоматизировать всё на свете не даёт мне покоя.

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

Читать далее

Мини плата для разработки и отладки ПО на BLE, Zigbee Thread

Время на прочтение2 мин
Охват и читатели8.9K
Приветствую читателей Habr! В этой статье хочу поделиться с сообществом своей новой разработкой, речь пойдет о небольшой Development Board на чипе nRF52840. Плата была спроектированна под недорогие модули E73-2G4M08S1C. Идея ее создания родилась в одном уютном телеграмм чатике довольно спонтанно. Была необходимость в недорогом и простом в сборке девайсе.

Оптимальный путь новичка в мире C++/Qt

Время на прочтение10 мин
Охват и читатели135K
Часто задаваемый начинающими программистами вопрос – какие материалы читать для повышения своего профессионального уровня? В таком, наиболее общем виде, ответить на данный вопрос невозможно. Это зависит от текущих знаний и умений человека, от его специализации, от задач, которые возникнут перед ним в будущем. Однако я попытаюсь ответить на данный вопрос для того направления программистской деятельности, в котором лучше всего разбираюсь – в создании кроссплатформенных сложных desktop-приложений. Приложений уровня и класса PhotoShop, VisualStudio, MS Word. Таких приложений, в которых с точки зрения программиста возникает больше количество разноплановых задач:

  • Отрисовка классического «офисного» GUI типа кнопок, прогресс-баров, виджетов, анимации.
  • Отрисовка любой нестандартной графики типа непрерывно движущихся графиков из миллионов точек.
  • Работа с базами данных
  • Работа с сетью
  • Работа с реестром операционной системы
  • Работа с принтером
  • Быстрое (в том числе параллельное) выполнение сложных вычислительных задач.
  • И многое, многое другое.

Наборов платформ и фреймворков, которые позволяют эффективно строить подобные приложения, не так уж много. В свое время, попробовав разные платформы, программисты в моей организации уверенно остановились на следующей связке: язык С++ и платформа Qt. Как показало время, этот выбор не подвел. Вот именно с оглядкой на этот выбор я начну излагать тот набор материалов, которые я рекомендую к изучению начинающими программистами, если они хотят стать настоящими гуру в этом направлении.
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность