Про системы видеонаблюдения

Я очень рад, что успел прикупить камеры Хиквижен до того, как их начали щемить и банить. Они нынче уже поднялись в цене, и продавцы их теперь какие-то продают… сомнительные.

Почему? Потому что я исключительно доволен качеством картинки. Вообще до сих пор не верю, что такое хорошее видео бывает у камер наблюдения. Постоянно в интернетах видишь херь с камер — там сплошное мыло и пять кадров в секунду. А тут совсем не так. Вот скриншот — он сильно ужатый и порезанный. Но даже на пожатом скриншоте видно элементы текстуры кирпича. Оригинал — 2688×1520, 30 кадров в секунду, ещё более детализированный.

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

Но конечно, с таким высоким качеством возникают проблемы другого рода.

Во-первых, это видео довольно много весит, в среднем с каждого источника пишется примерно 768 килобайт в секунду. Соответственно, это около 64 гигабайт за сутки, с каждой камеры. А так как у меня их планируется аж восемь штук, это пол-терабайта каждый день. Насколько большая это проблема — пока не понял. Теоретически, жёсткие диски нынче не очень дорогие. Вон моя любимая Тосиба на 16 терабайт менее трёхсот рублей стоит. Но этого хватит только на восемь дней, даже меньше. Надо будет поиграцца с настройками, может быть мне и стандартного FullHD за глаза хватит. А может быть, разорюсь на несколько дисков, нехай пишет.

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

НО.

Делать этот всяческий AI в реальном времени на видеопотоке такого разрешения и такого качества чрезвычайно вычислительно дорого. Поэтому хорошие современные камеры, включая Хиквижен, поддерживают ДВА одновременных канала, основной и подканал. Основной имеет высокое разрешение, хорошее качество, и т.д. Он тупо пишется на диск, на что практически не тратится процессор, так как на нормальных камерах сжатие в H.264 происходит прямо на источнике. А подканал — низкое качество, невысокое разрешение — но его с головой хватает на обработку системами искуственного интеллекта. Оттуда берутся интересующие наши события, типа “мимо проехал чёрный автомобиль с номерным знаком ‘HITMAN'”, а по таймкоду мы уже будем смотреть записанное видео высокого качества.

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

Взлом резервных копий смартфонов iPhone

Для начала немного теории.

Как хранятся пароли в операционных системах, вебсайтах, и т.д. Не открытым текстом, разумеется. Они хранятся в виде хешей. Хеш — это строка определённой длины, получаемая при обработке ввода (пароля в данном случае) хеш-функцией. До недавнего времени (да и сейчас кое-где) использовался алгоритм MD5. Так, хеш MD5 слова “password” представляет собой строку 5f4dcc3b5aa765d61d8327deb882cf99.

Поэтому когда ты логинишься на вебсайт, пароль обрабатывается алгоритмом MD5, и сравниваются хеши. Если на выходе 5f4dcc3b5aa765d61d8327deb882cf99, то всё нормально. Винда делает немного по-другому: хеш генерируется прямо на клиенте, и пересылается не пароль, а сразу хеш. Это цуцуть безопаснее. Ещё хеш солят, но про это в другой раз.

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

Я уже давно люблю программу котохеш (hashcat) для взлома паролей. У неё исключительно высокая производительность, так как она использует видеокарту для расчётов вместо центрального процессора. Нет, она и процессор может использовать, просто на видеокарте быстрее, там этих процессоров тысячи, а хеширование исключительно хорошо распараллеливается.

Сломаем MD5 хеш 5f4dcc3b5aa765d61d8327deb882cf99:

hashcat.exe -m 0 -a 3 hash.txt ?l?l?l?l?l?l?l?l

И меньше, чем за секунду всё сломано.

На моей уже старенькой 1070GTX поиск хешей MD5 происходит со скоростью около 8 миллиардов комбинаций в секунду.

Даже если сменить пароль на более сложный, типа P@$$w0rd, то 8-значный пароль взламывается в обозримые сроки, даже на не очень новом железе — за несколько дней.

НО. Подобные сроки — они для паролей, хешированных MD5. От которого везде отказываются как могут. Он считается криптографически нестойким: во-первых, он подвержен коллизиям (т.е. два совершенно разных пароля могут дать одинаковый хеш), а во-вторых он имеет недостаточную вычислительную сложность. Т.е. тот факт, что даже на моём старом железе я могу перебирать восемь миллиардов паролей в секунду — он из-за этого происходит.

А недавно я попробовал сломать бекап смартфона Apple. Для тёщи, которая раскокала телефон вдребезги, успев, правда, незадолго до сделать ему бекап. Но вот беда — она забыла пароль от бекапа! Она только знала, что пароль восьмизначный.

Хеш пароля для айфонного бекапа берётся в файле Manifest.plist. Этот файл скармливается вот этому сайту, например, и тебе дают хеш.

Так вот хеш там — какой-то проприетарный. И имеет настолько высокую вычислительную сложность, что на моей видеокарте котохеш перебирает комбинации со скоростью… 83 варианта в секунду. Надо отдать должное чувству юмора разработчиков котохеша: во время работы оно показывает, сколько времени осталось до перебора всех вариантов. Так вот в данном случае оно говорит, что работа программы закончится после следующего Большого Взрыва 😀

Вот так вот Плотнег лососнул тунца.

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

Обжим экранированной витой пары

Делюсь опытом.

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

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

Расплетаем пары, строим в нужном порядке. Я обычно жму 568B, так как мне не нужна обратная совместимость с телефоном. Надеваем разъём RJ45. Вот тут хорошо видно загнутый проводок, и как металл экрана разъёма прижимается к медной фольге. Кроме того, в этом разъёме пары проталкиваются сквозь него, и обрезаются ножом на клещах одновременно с обжимкой. Клещи нужны специальные, но они незначительно дороже, а времени экономится много. Не надо строго ровно обрезать пары, чётко нужной длины, и т.д. Сунул, обжал-обрезал, да пошёл.

Обжимаем, аккуратно обрезаем проводок экрана, надеваем защитный колпачок. Получаем…Слава Україні!

Врут, но красиво

Пишут, что компьютеризированное сельскохозяйственное оборудование “Джон Диир”, переданное украинскими хлеборобами в пользование чеченским хлеборобам, было удалённо заблокировано компанией-производителем за нарушение правил экспорта и перепродажи.

По-моему, врут-с. Но красиво врут-с, не отнять-с.

Про перспективы российских процессоров

Довольно печальные перспективы, скажем прямо.

Есть такой старый анекдот. В России две проблемы: дороги и дураки. И если нагнать бульдозеров, грейдеров, бетономешалок и асфальтоукладок, то одну из них можно решить. Но вот что делать с дорогами — решительно непонятно.

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

И это так — фигня по большому счёту. Самое главное — откуда мы будем брать оборудование для фотолитографии? Контор, выпускающих его в мире, менее пяти штук, и на 80% это голландцы (вот уж не подумал бы). Они занимаются этим уже десятками лет, пробежать такой срок быстро невозможно.

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

А софт для дизайна самих процессоров? Который тоже уже пишется десятилетиями? Нет, конечно, софт-то можно скоммуниздить, но…

Можно без всего этого? Можно! Но на выходе не сделать ничего сложнее i80286 или Z80. Про единицы нанометров можно забыть… ну просто сразу.

Отсмотрел не отрываясь всё видео, очень интересное. И без ентой вашей политики. Просто специалисты в своём деле рассказывают свои мысли.

О деанонимизации криптовалют

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

Ссылка на академическое исследование.

Блокчейн, будучи по своей природе публичным, не может вечно прятать свои секреты. Именно поэтому, кстати, я со скепсисом отношусь к переводу каких-то голосований в блокчейн. Ибо основа основ — тайность голосования — улетучивается моментально.

Хроники чебурнетостроения

По сравнению с довоенными временами говорить с русскими родственниками становится всё сложнее и сложнее. Обобщений не делаю, но мой опыт именно такой. Скайп уже не работает от слова совсем. В таких случаях я пользуюсь телегой, и походу, с ней тоже надо завязывать. Звук работает уже через пень-колоду, видео не работает вовсе. Возможно, что это из-за резко снизившейся пропускной способности сети. Возможно. А возможно, у товарища майора не хватает мощности перехватывать и обрабатывать видео.

Вообще, телега сама по себе подозрительна. Уязвимостей в ней — ДОХЕРА и больше. А учитывая, что граждане нарисовали свою собственную криптографию, совершенно не исключено, что там оставили дыру для товарища майора. Да и криптография там неочевидная — в одних чатах есть, в других нет, и чтобы узнать, что и где, надо читать документацию. А эта показная беготня от Роскомгестапо — это был рекламный ход, чтобы завлечь туда людей, чью переписку и надо читать товарищу майору. Сейчас в телеграм-каналах про войну с Украиной резвится толпа самых разных граждан. Резвитесь-резвитесь, ч0рный воронок с вашим именем уже заправлен топливом и ждёт.

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

Сумел матушке наконец-то удалённо поставить нормальный месенжер, который ни одна спецслужба мира пока не перехватывает — Signal. Там пока работает и звук и видео. И криптография там везде и всегда, и исчезающие сообщения тоже есть (чтобы было, что показать цепным псам преступного кговагого прижЫма, если чо). Будем пользоваться им. Рекомендую.

Надо будет ещё у себя поднять VPN сервер. В ведроидах вроде как есть встроенный OpenVPN клиент? Настрою у себя сервер, обходить Роскомгестапо, которое наверняка уже начало банить прочих VPN провайдеров.

Ещё круче было бы суметь разобраться с VPN, который заворачивает все пакеты в HTTPS. Тогда даже понять, что это VPN, а не обычный вебсайт, не так-то просто.

В-общем, будем думать.

Про дефраг

По результатам поста выяснилось, что дефрагментатор на твёрдотельниках теперь делает дискам обрезание TRIM. А не гоняет туда-сюда бесцельно байтики.

Век живи — век учись. Я полагал, что TRIM происходит совсем не на уровне ОС, а ниже — на уровне драйверов или даже самого контроллера. Буду знать; всем спасибо, особенно moneo и mindfactor.

.arj

Вот помнится раньше был целый зоопарк архиваторов. ARJ, ZIP, RAR и экзотика типа HA/LHA или ICE. И между ними была серьёзная разница: так, .ha считался крутым для текстов. Какой-то архиватор (уже не помню, какой) хорошо сжимал музыку.

А потом диски и вообще накопители данных резко подешевели плюс серьёзно подтянулись все алгоритмы, и проблема утратила былую остроту. Заодно ещё для видео и музыки вышло человеческое сжатие с потерями типа mp3 и mpg, что позволило сжимать мультимедийные файлы в уже совсем какие-то смешные размеры. А теперь с наличием h264 и aac всё стало ещё круче.

И получилось так, что на той же Винде нормально выжил только zip. Ну, и иногда натыкаешься на 7z. А всё остальное я уже не помню, когда в последний раз видел. Я вот даже думаю иногда — почему так. И прихожу к выводу, что это потому что Микрософт встроила поддержку в Винду только для формата zip. И на кой, спрашивается, теперь пользоваться другими, когда и так уже всё встроено? Какие-то там доли процента сжатия выжимать? А на кой, при современных-то скоростях и дешевизне накопителей?

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

Игра для мальчишек и дяденек

С огромным удовольствием режусь со старшим сыном в прекрасную игру Scrap Mechanic. Это, как бы сказать, Майнкрафт с инженерным уклоном.

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

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

Но самый смак игры — в построении разного рода техники: автомобилей, грузовиков, тягачей, буровых установок, танков для борьбы с роботами, и так далее. Физика в игре сделана очень неплохо, и можно даже построить летающую технику. Но, опять же, из-за неплохой физики управлять ею крайне непросто. У меня ушёл битый час, чтобы сконструировать квадкоптер, на котором я бы не разбивался сразу же после взлёта. И ещё полчаса — чтобы научиться более-менее прилетать туда, куда надо мне, а не куда боги пришлют.

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

Но и это ещё не всё. В игре есть пара моментов, которые делают её интересной не только мальчишкам, но и дяденькам с высшим компьютерным образованием. Так, в игре есть логические элементы, что значит, что на их базе можно построить компьютер. Вот, например, я построил двоичный восьмибитный сумматор с последовательным переносом. Складываются числа 163 и 29 (10100011 и 00011101 соответственно). Результат, конечно, 192 (11000000).

Конечно, можно не только складывать, но и вычитать. Разумеется, компьютеры вычитать не умеют. Когда компьютеры вычитают, например, 29 из 163, они складывают 163 и -29. В двоичной системе, чтобы получить отрицательное число, надо все биты перевернуть и добавить единицу. Так что складываем 10100011 и 11100011 и получаем 10000110 (134). Ну, а грозно горящий красным индикатор переполнения игнорируем…

Элементы сумматора — пять логических элементов: два XOR, два AND и один OR. Проще не придумалось.

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

Крайне рекомендую, игра находится в активной разработке (т.н. early access), но уже стоит того, чтобы её купить. Есть на Стиме.