ОчУмелыеРучки
30 постов
30 постов
29 постов
78 постов
183 поста
2 поста
73 поста
2 поста
33 поста
91 пост
55 постов
6 постов
13 постов
51 пост
4 поста
Каждый раз когда жизнь меня знакомит с такими историями, когда люди не имеют от рождения или теряют после травм подвижность, зрение и т.д., я, наверно как и многие, невольно задумываюсь, а что бы я делал на его месте. Как бы жил, куда вертелся?
Понятно, что с дивана легко обо всём этом рассуждать, а при таких вот обстоятельствах, наверно, очень трудно выбраться из мотивационной ямы и хотя бы не деградировать.
Понятно, что оказавшись в такой ситуации сталкиваешься с куда более широким набором ограничений, не только подвижности. Финансовые рамки тоже начинают давить.
Однако кажется, что сейчас и вообще с каждым годом возможностей как-то разнообразить и расширить свои границы всё больше.
Что бы я делал? Да наверно в первую очередь озаботился быстрым и надёжным интернетом, попробовал бы организовать себе рабочее и учебное место с голосовым интерфейсом.
Генеративные модели сейчас отлично справляются с очень сложными задачами через текстовые и плохо формализованные инструкции, а задача качественного распознавания и синтеза голоса решена была в полной мере уже больше 10 леи назад. Сейчас же есть много бесплатных и простых в использовании движков.
Первое, что следовало бы сделать - это организовать рабочую станцию с каким-нибудь проплаченным Клодом, хорошим микрофоном и большим монитором. А может быть и не одним.
На первых этапах нужна будет помочь с установкой плагинов, которые позволят полностью на все 100% управлять ИИшкой голосом, но когда такой плагин установлен, то пределов никаких дальше уже нет. Если есть время и мотивация, то можно навайбкодить себе что угодно.
Следующее. что я бы сделал - обеспечил бы себе возможность вести блог. Реалити шоу - это довольно сомнительная херня, однако тронуться с такой точки и развиваться - это охрененное приключение, и многим оно будет интересно.
Одно дело просить милостыню у прохожих, а другое дело открыть донаты, чтобы можно было благодаря им делиться своей историей с теми, кому это могло бы быть по той или иной причине интересно.
При некотором уровне раскрутки и популярности блога можно начинать брать на обзор всякие приборы и модули умного дома. Да, нужна помощь по их распаковке и установке, но это не такая сложная работа, чтобы не попробовать её решить с помощью волонтёров или тех же рекламодателей.
Я понимаю, что на словах, как говорится, я тут Лев Толстой, а на деле как оно там получится... короче, на деле всё всегда гораздо сложнее. Но посыл мой в том, что нужно использовать все возможности, всю изобретательность и все дары современного технологического мира, чтобы улучшать свой комфорт и мобильность, облегчать жизнь родным, которым тоже не просто в такой ситуации.
Самой, мне кажется, важное и недооцененное свойство современных технологий - это потенциал к развитию и обучению. Нейронка - это бесконечно терпеливый, понимающий и очень эрудированный практически бесплатный репетитор по любым вопросам. Нужно лишь иметь эти вопросы. Наверно я болтал бы с ИИшкой просто постоянно.
Короче. Наверно для первого поста на тему пока что хватит. В следующем посте про потенциал (в том числе печально не реализованный) я расскажу про свой опыт приобретения наушников со встроенным голосовым помощником от Яндекса. Сейчас меня останавливает только очень быстро прогорающая табуретка и желание писать плохие слова, но я борюсь=)
А потом этот токсик на всех митапах типа дейли или пленингов будет кринжово буллить за юзание типовых баззвордов рабочего контекста. Тут ему "пуллриквест" оскомину набил, там "перфоманс ревью" вайб нарушает, дедлайны давят. Такому док в мыло не аттач, шли через мессенджер, коллабы по тимбилдингу с бэкофисом - кринж, фокус только на своём ворк-лайф балансе! И на ретро слово не скажи - харрасмент! Всякий фидбэк игнорит! А спринт кто финалить будет? Таски закрывать? Релиз на викенд нарочно же зашедулен, чтоб импакт по юзерам минимизировать. Да и бэклог, как полено в жопе, само не рассосётся.
И хоть колл на голове теши! И поди пойми фейл это или факап от HR, что аппрув на оффер такому слаккеру заакцептил.
Короче, такой вот перфоманс я вам на изи запостил. Если кто какие баззворды ещё знает - прошу в комменты за ачивку с меня.
Сторителинг этот без генеративок, сам брейнстормил, так что шеймить не спешите. Лулзов ради и фана для. Всем хаюшки!
О, эта игра меня тоже захватила в своё время, но чуть иначе...
Отец приволок с работы один из компов, которым в нашей деревне никто не мог дать ладу.
Это был древний теперь IBM XT 8088 с монохромным адаптером Hercules и удивительным желто-черным монохромным же монитором. Вот он:
Страшный зверь!
- Целых 640 Кб оперативной памяти! А кому нужно больше-то?
- Жесткий диск на 20 Мб. Нет, не гигабайт, а именно МЕГАБАЙТ!
- Дисковод 5.25``, который был способен записать на дискету всего лишь 360 кб. Не 1.22 Мб, как более свежие аналоги, а всего лишь 360 Кб.
Принц персии на нём выглядел как-то вот так:
Здесь монитор не тот, но изображение выглядело примерно так же.Разве что занимало визуально всю площадь экрана. Видимо мой монитор был чуточку посвежее.
А вот нашел ролик, который иллюстрирует в точности звук, с которым запускался XT:
Здесь в ролике тоже другая модель, но звук идентичный один в один.
Кулер этого чудовища выдул краску в обоях в виде круга. С удивлением обнаружили это. когда убрали комп. Потом конечно переклеили обои, но было удивительно насколько мощный поток воздуха, что обесцветил заметно обои в круглом пятне напротив лопастей.
Особенность Принца Персии на этом компе было в том, что как-то неправильно учитывалась частота процессора, к которой был привязан фрейм-рейт, и игровой процесс был замедлен раза в четыре. То есть на игру отводилось, получается, часа 4, но всё было в слоу мо. все движения тоже в 4 раза замедлены.
И это ничуть не упрощало игровой процесс для меня. Да, можно было насобачиться и филигранно двигаться вовремя нажимая клавиши, благодаря замедлению времени, однако игра без возможности сохранения, даётся лишь 4 часа и пауза, кажется, не останавливала таймер, ошибки всё равно происходили, а сидеть так долго за монитором было немыслимо, ведь "глаза же портятся!".
Вообще на то, что сидеть перед этим монитором как минимум е безопасно, указывал специальный накладной стеклянный тонированный экранирующий фильтр с проводом заземления. Если его снять, то поверхность дисплея ощутимо электризовалась поднимая дыбом волосёнки на руках. Кактусами тогда ещё не придумали обезвреживать радиацию мониторов, потому родители крайне щепетильно относились к моему экранному времени, а играться в игрушки и вовсе считалось совершенно бесполезным и даже вредным занятием.
В общем, играть доводилось лишь украдкой от бабушки когда родителей не было дома.
Если начало игры было неплохо знакомо, то финальные уровни были терра инкогнита, усталость к этому времени накапливалась, а нервы щекотала повышающаяся вероятность внезапного прихода родителей и неизбежная взбучка, потому что бабушка обязатльно наябедничает.
Что касается кишков и кровищи, то мою детскую психику конечно немного цепляла натуралистичность, с которой что-то тянется за зубьями укусившей при неловком движении гильотины. Но кровь это "что-то" не напоминало, поскольку на этом мониторе всё было желтого или черного цвета. Даже без градаций.
Меня очень волновало другое. Все, ну или почти все противники-мечники в игре имеют свой специфический характер боя. Кто-то ждёт атаки и молниеносно контратакует, нужно блокировать удар. Кто-то напористо давит и не даёт опомниться, кто-то так наступает, что без контратаки не выгадать передышку, он осле блока сразу наносит удар.
У меня никогда не было денди, поэтому в играх я не был искушен и мастерством не блистал. Если меня замечали играющим, то непременно находилось какое-то дело для меня, а комп попадал под запрет. Мне дозволялось использовать его только час в сутки, а игра на компьютере была лишь одна, и та часа на четыре без сохранения. Нет, всё же пауза, наверно, останавливала таймер. Как иначе-то?
В общем, на том компе я принца ни разу не прошел дальше 7 или 8 уровня. Потом я эту игру уже запустил на школьных 80386-х в цвете и с более изысканными звуками из PC-спикера. Ну... так казалось.
Однако комп этот послужил мне верой и правдой, и не только мне. Наверно благодаря ему и благодаря такому негативному отношению отца к компьютерным играм я и стал в итоге программистом. Я быстро освоил текстовый редактор "Лексикон", присоединил по распиновке из какой-то библиотечной книжки 9-пиновую мышку к 25-пиновому разъёму проводками. Просто соединил совпадающие одноименные выводы разъёмов. Там, где штырьки, я надевал на них ПВХ-изоляцию проводков обеспечивая контакт с жилками, а там где дырочки - скручивл жилы и долго добивался стабильного контакта.
В итоге шариковая мышка возила курсор в одном из доступных убогих монохросных графических режимов "геркулеса". Я раздобыл на школьных компах и запустил какой-то графический редактор и редактор баннеров с огромными красивыми буквами и кое-каким клипартом. Да, цвета иммитировались густотой черных и желтых точек, но понять где что можно было, а матричный принтер печатал получившееся тоже монохромно. Но можно было же и раскрасить поитом!
Второй брат близнец этого компьютера не без моей подачи уже далось приспособить в конторе у отца. Папа тоже освоил Лексикон и тоже разобрался с принтером, зато мне не было равных в освоении СУБД SyBase. Это что-то вроде позднего MS Access в текстовом режиме, где через сотни менюшек можно было нагородить какие-то формы, интерфейсы, ER-модел, кнопки, поля ввода с надписями и таблицы.
Первым проектом была, помнится, кулинарная книга для мамы. Мне казалось неудобным, что она пользовалась толстой тетрадкой, куда вклеивала вырезки из газет и журналов, писала рецепты от руки. Я целую CRM. про нормализацию я не знал, но, пожалуй, изобрёл её отчасти сам, просто потому что так казалось правильнее. У меня был ментор - друг папы, который работал в типографии и тоже имел дело с компьютерами, но он отвечал мне только и исключительно на вопросы, которые я ему задавал. не всегда я был готов воспринимать такие ответы. но спасибо ему, что не переполнял никогда мне входным потоком сведений способность переваривать информацию и обдумывать её.
Занятно. Недавно с ним разговаривал по телефону. Ну как недавно... в прошлом году.
Ох, что-то заностальгировался я.
Судьба этого компьютера не оказалась печальной. Я передал его в позапрошлом году одному энтузиасту, который собирался его починить. Там что-то с жестким диском. Отправил в новосиб.
Второй комп брат этого долгое время ещё использовался как печатная машинка в местном сельсовете, а работала на нём секретарша главы нашей администрации, по совместительству моя тётя. Деревня небольшая у нас. Я сам, кстати, подал идею вытащить из конторского подвала пылящийся без дела агрегат, сам настраивал ей окружение, лексикон, каталоги документов. показывал как пользоваться техникой. Старенький матричный эпсон (черт его дери, я до сих пор помню его запах!) исправно трудился печатая письма и прочие документы, которые раньше набивали через копирку на печатной машинке.
Кстати, матричный принтер тоже может через копирку печатать! А ещё я помню как ваткой пропитывал специальными чернилами ему чернильную ленту, чтобы не покупать новую, и как заменял в картридже сложенную гармошкой износившуюся ленту на новую от печатной машинки.
Очень много воспоминаний.
Интересно было бы заполучить свои исходники с того помершего винчестера, уехавшего в новосибирск.
Прекрасно помню как мне уже страшно не хватало 20 Мб, как я уплотнял их с помощью DriveSpace, который архивировал файловую систему на лету, как мне жесткий диск гордо показывал 60 Мб объёма, и не слишком врал, поскольку тексты сжимались не плохо, а картинок и музыки на компьютере том не водилось практически.
Я помню, как писал первую игру. Это был какой-то платформер в текстовом режиме, где по уровню из символов псевдографики бегала рожица chr(1), поднималась по лесенкам "H", падала и напарывалась на шипы "^^^" или стрелочки, тонула в воде "~~~" или подвергалась жестокому нападению собак "@" из-за поднятой решетки "#".
Потом я делал свой аналог оконных интерфейсов в текстовом режиме с диалогами, кнопками, полями ввода, выпадающими списками, текстовыми полями, скроллящимися быстро благодаря прерываню BIOS INT 10h, а не мучительно перерисовывающимися посимвольно принтами.
Удавалось даже сделать попиксельное движение мыши в текстовом режиме! Нужно было лишь подменять специальным образом изображение четырёх самых ненужных символов в расширенной таблице ASCII. И надо же, сейчас TUI возвращаются и снова входят в моду!
Возвращаясь мысленно в 90-е невольно диву даёшься огромному контрасту возможностй, которые сейчас открываются. Не было ни интернета, ни даже книг в свободном доступе, а мы как-то учились, как-то разбирались... Что бы тогда можно было наворотить с нынешней нейронкой!
Представляю, если бы меня тогдашнего телепортировать в нынешнее время, или даже наоборот: меня сегодняшнего со знаниями и опытом в те мои 90-е... Ух, аж мурашки...
В таких размышлениях особенно остро ощущаешь насколько удивительное время мы сейчас переживаем. Я такого за свои четыре десятка с плюсами лет никогда не помню, чтобы были такие возможности учиться, что-то делать, творить... я имею в виду в технологическом плане. Любая информация, генеративные модели, интернет, обучающие курсы на любой вкус, архив-орг с научными статьями на халяву, мощные компы о которых в те годы даже не помышлялось! А технологии?! Эх!
Да, я понимаю, что впал в детство=) Я это нарочно. Да, понимаю, что однобоко рассуждаю, понимаю, что не все в одинаковых условиях, что не все имеют мотивацию, не все имеют технический склад ума, не всем в детстве папка приволок комп и вовремя познакомил с очень крутым дядькой - выпускником ХАИ, радиоинженером, который разрабатывал орбитальные антенны. Вообще удивительно, что такого человека занесло к нам в село. Очень многое совпало, да... Но сейчас то возможностей на много порядков больше! Учись, разбирайся - не хочу!
Хочешь - детальки дешевые с алиэкспресс любые. Хочешь - микроволновку с помойки притащи, там магнетрон! Хочешь - достань компрессор из холодильника с той же помойки. Надо лишь подкараулить и снять раньше бомжей, которые его пустят на цветмет. Хочешь - ардуины с ESP32 или RPi не такие уж и дорогие, камеры, карты памяти, модули, сенсоры... КУЧА статей и мануалов, куча лекций в доступности, куча видосов про коллайдер или синхрофазотрон для чайников. А его величество агентный Claude всего лишь за 20 баксов? А ЧатЖПТ - по сути бесконечно терпеливый и, в общем, бесплатный ментор, которому можно задвать любые даже самые глупые вопросы. Он ответит серьёзно, полезно, широко и понятно. Такого не было НИ-КОГ-ДА!
Ух. Че-то я раздухарился. Надо померять температуру моей биологической нейронки, которая накатала весь этот ностальгический опус.
За возможные опечатки, анахронизмы и орфографические ошибки не обессудьте. Думаю смысл я донёс, а что ещё надо? Это ж не мемуары...
там длинный диалог на много месяцев с расчетами, глубоким контекстом и всякие умные идеи,
В этом-то и проблема. Само собой он становится глупее когда ваш диалог уже приближается к размеру контекста. Так использовать LLM неправильно.
Когда вы долго общаетесь в одном диалоге с LLM, к каждой вашей реплике пристёгивается вся история вашего диалога и отправляется на вход в виде контекста. Языковая модель смотрит на весь этот ваш диалог включая новую реплику и что-то там отвечает НА ВСЁ ЭТО.
Вы просто забили контекст языковой модели всяким хламом.
Более правильное использование LLM заключается в том, чтобы резюмировать самой же LLM небольшие фрагменты вашего общения в сжатые информативные лаконичные тезисы. Далее этот пакет и будет вашим контекстом. Нужно начинать новый диалог и подавать вместе с новым вопросом этот сдатый контекст.
Однако чтобы это не делать всё вручную, уже давно придуманы агентные нейронки.
Они умеют работать в каталоге проекта на уровне файлов.
LLM сам строит для себя необходимую информационную карту проекта в md-файлах. Фактически это своего рода документация.
Лучший способ работать с такими проектами - это Obsidian + Claude code или любой другой инструмент агентной работы с генеративными моделями.
Для Claude Code нужен VPN, но, например, Kimi, вроде бы, работает без него.
Резюмирую.
Контекст в виде огромного диалога с нейронкой неэффективнен и приводит к отупению всех его участников. Нужно извлекать из контекста только суть и раскладывать по полочкам (файлам) в формате MarkDown. Любая нейронка в агентном режиме сможет в любой момент посмотреть любую часть информации о вашем бизес-домене, а также разместить рядом же план и обзорную карту истории ваших изысканий.
"Полочки", по котором раскладываются знания - это каталоги и текстовые файлы на вашем диске. Очень удобно с такой структурой работать в Obsidian. Кроме того, агентные LLM помогут вам настроить его так, чтобы было удобно и быстро добавлять новые сведения, искать по файлам нужное, сделать кросс-сылки между файлами, оглавления и т.д.
Этот пост сделан биологическим естественным интеллектом, поэтому не обессутьте за опечатки и неточности в формулировках.
Я так однажды посигналил, блин.
Стою на заправке, передо мной суетится мужичок лет 30-35 - заправляет свою жигу.
Видно, что действо сие ему в новинку. Суетится, бегает туда-сюда несколько раз от кассы к колонке и обратно... Ну, думаю, недавно получил права, может, вот первую машину купил поднабраться опытом. Начинать никогда не поздно.
И вот гляжу в какой-то момент: суетился он суетился, а потом сел за руль и, по всему, ехать собрался. Собраться-то собрался, а пистолет из бака кто вынимать будет?
Ну я рассудил, что пока выскочу, пока добегу - уйдёт! Затарабанил по сигналу, а он, гляжу, уже завёл двигатель, дёрнулся и заглох. Ну точно новичок, а тут ещё я бибикаю, у человека стресс, думает я его подгоняю, потому что долго он там возился и суетился. Что делать?!
Сигналить я перестал, открыл дверь уже, а он завёл машину и с просвистом тронулся отъезжая с дымком. Короче, шлангом мне не прилетело и то хорошо. Там на пистолете, если кто не знает, специальная срывная муфта на такой случай.
Лично я с тех пор завёл себе железную привычку: отъезжаешь от заправки - глянь на лючок бензобака в зеркало. Даже если точно помнишь, что вынимал, стряхивал и ширинку застёгивал.
Привычка живёт с тех пор и здравствует. Ни разу не забывал шланг вынуть, но это не повод от такой привычки отказываться. Секунду сэкономить?
На счет бибикающих в первую миллисекунду на светофоре водятлов и вообще любой суеты, на которую меня хотят за рулём спровоцировать, я тоже решил и всем советую, прям нарочно не ускоряться, не дёргаться, а наоборот оглядеться внимательно без резких движений и метаний, прочитать, ситуацию, понять причину.
Для себя я решил мысленно благодарить таких заботливых водителей, а если он настолько яростно заботится напоминая мне что нужно что-то срочно по его мнению сделать, например против правил, или ещё с каким-то неоправданным риском, то я считаю не грех даже включить аварийку и пойти спросить, вдруг плохо человеку, вдруг инсульт у него какой или с пердечком плохо, тахикардия...
Да, чтоб два раза не вставать на всякий случай дополню, что уезжать с пистолетом в баке или избавляться от него и давить по тапкам плохая идея. Сэкономишь какое-то количество денег за срывную муфту, но лишишься прав за оставления места ДТП, а это именно оно и есть по всем признакам. На любой заправке полно камер, и глупо думать, что вас не найдут после такого.
Короче, к чему это я всё... не всегда это помогает, когда кому-то сигналишь, чтобы предупредить.
Иногда случается, что благими намерениями... Думать, в общем, надо, быть внимательным, осторожным и действовать по обстоятельствам, а более общих правил и не найти.
Почему нигде? В Просрации, в Неадеквате, в Запое или Запойском районе Бухловской области, отдыхали под Шафе, просто время от времени отъезжали, выходили из себя вообще регулярно.
Многие съезжали с Катушек или вышли в Тираж, а кто-то даже отошел в мир иной. Да, ходить приходится чаще по понятным причинам. Нахрен, например. Меня тут часто посылают, но я каждый раз возвращаюсь.
Только не думайте, что это всё в одностороннем порядке. Путешественников по Бухловской области, например, навещала Белочка. Вообще, практически ко всем нам пришел Пиздец, ну да, тот самый пятилапый пёс. Как говорится: "Пришла беда - открывай ворота".
Однако нам не чужда и авиация. Многие в этом году пролетели как фанера над Парижем с планами на отпуск.
Да что говорить, все мы уже не раз прошли Крым и рым. И куда оно всё катится?
Если пропустил чего - дополняйте, а то пятница трудная, улетаю от усталости. Предвкушаю путешествие к Морфею, если доберусь до кровати.
Просто разрабы неправильно поняли суть проблемы и решили на отвяжись поставленную задачу.
Если кто не понял исходный пост, то это такая своеобразная защита методом вынесения какой-то функции из читабельного или уязвимого к анализу софта в черный ящик, который трудно реверсинженерить.
Правильный способ сделать такую защиту трудновзамываемой есть, и тут вспоминается один из проектов моей далёкой бурной разработческой молодости.
Меня как-то озадачили необходимостью защиты некоторого инженерного софта (написанного, кстати, мною же) от нелицензионного использования. Важно было, чтобы у лицензиата не было физической возможности обеспечить нашим софтом больше рабочих мест, чем те, за которые было уплочено.
После разговора с потенциальными клиентами мы сразу решили, что онлайн защиты нам не подходят. Ну, типа, если у клиента ляжет интернет по какой-то причине, он не сможет обслужить своих клиентов, кои обычно богатые деньгами. но небогатые временем серьёзные люди. Все наши клиенты не хотели, чтобы софт зависел от интернета.
В связи со всем вышеперечисленным выбор наш пал на аппаратные ключи, которые в клиентский комп вставляются в USB-порт и без которых наша защищаемая CAD-система превращается в тыкву.
Внутри у него своего рода маленький компьютер, примерно такой же находится в чипах банковских карт и RFID-карт доступа. Фактически там микроконтроллер, на котором запущена маленькая ява-машина, выполняющая код, который в устройство запищет разработчик.
Достать записанный в ключ код - задача настолько сложная, что трудно окупить таким образом стоимость взлома этого донгла безлимитными лицензиями на что угодно.
Правильный способ использования защиты ПО на основе таких ключей заключался в том, чтобы вынести на этот ключ кусочки секретных алгоритмов, которые обычно размещены прямо в бинарниках защищаемой программы.
Это очень не просто - выбрать такие чистые (в функциональном смысле). компактные (в донгле не так много места), не критичные к скорости (ява-машина в ключике не впечатляла скоростью, а всё ещё и через USB2.0 работало... если не 1.1, не помню уже), нетривиальные функции, которые нельзя было бы повторить так просто в эмуляторе ключа.
Да, можно было так же наговнякать как в исходном посте, вернуть true и проверять потом, но такие ключи - просто деньги на ветер.
По-моему, я выносил в ключи функции поиска и фильтрации граней на многограннике для определения поверхностей, подлежащих обработке. Алгоритм самописный, не тривиальный, достаточно быстро работал на ядре этой финтифлюжки, не требовавший объёмных аргументов и т.д.
Навернр в эмуляторе ключа можно было что-то изобрести похожее, но тогда (конец двухтысячных) не было ИИшек, которые делают сейчас такой реверс-инженеринг достаточно дешевым, а наш софт был не таким распространённым и известным, чтобы на его взлом тратить дохрена денег и мозгов грамотных специалистов.
И да, надо понимать, что любая просто быстро и наивно реализованная защита легко и дёшево обходится. Главное, чтобы это было экономически выгодно, а за взломом дело не встанет.
Вот и тут, не так просто найти даже в большом инженерном приложении кусочка, который можно настолько чисто изолировать, чтобы он мог работать на отдельном процессоре. А ещё надо, чтобы разработка и исправление ошибок в рамках поддержки защищенного ПО не превратились в кошмар, чтобы неаккуратность или ошибка разработчиков не поломали законно купленные лицензии.
И вот тут я расскажу ещё про один лайфхак. Защита должна быть многослойная и вероятностная.
Если ваш защитный механизм мгновенно замечает факт нелицензионного использования, и тут же блокирует работу защищаемого софта, то это плохой защитный механизм.
Хороший механизм будет некоторое время накапливать признаки нелицензионного использования, порог блокировки будет рандомизирован таким образом, чтобы нельзя было "нащупать" коридор допустимого при обходе защиты.
В нашем случае если приложение не видело аппаратный ключ, оно рисовало поверх рабочей области простой сплеш-скрин с просьбой его подключить. Технически это никакая не защита. потому что требуется элементарное вмешательство на уровне API Windows, чтобы убрать помеху и работать дальше. Но после этого софт переходит в режим войны.
Он тихо и рандомно ломает данные проектов, над которыми работают пользователи взломанного приложения. Проигнорированное предупреждение гласило, что при вмешательстве в работу ПО (а обход защиты именно этим и является) может привести к необратимой порче или потере данных.
Время от времени алгоритмы, вынесенные на аппаратный ключ падают с ошибкой и указанным выше предупреждением, а если ключ детектирует необычный баланс статистики вызовов защищенных функций, и их тайминги, то это признак взлома путём проксирования одного ключа на несколько рабочих станций. Все такие признаки накапливаются, а после рандомизированного порога приводят к рандомизированной отложенной порче выходных данных защищенных (вынесенных на донгл) функций.
Эти рандомизации критериев и отложенные реакции позволяют усложнить и замедлить цикл подбора параметров защищенных функций при взломе.
Сейчас такая защита тоже н еимеет никакого смысла, потому что ничего, в общем-то, не стоит переписать практически любой такой софт с нуля по образу и подобию готового прототипа с помощью нейронки. А раньше эта защита была неимоверно передовой и непробиваемой.
В геймдеве, кстати, её не использовали обычно скорее всего из-за медленной работы и трудности вынесения чувствительных и достаточно нетривиальных алгоритмов на аппаратный ключ.
Ну вот такой вот кусочек совершенно ненужного теперь опыта. Поделился с подписчиками.
Если непонятно что-то объяснил - спрашивайте. Мне казалось я умею объяснять сложные вещи простыми словами, особенно если сам понимаю эти сложные вещи. Но и на старуху, как говорится...
Типовой дисклеймер, которыми я снабжаю все свои посты.
Этот текст написан биогенным естественным интеллектом, работающим на аппаратном обеспечении моего собственного головного мозга. Никаких методов написания или улучшения текста генеративными моделями не применялось.
В наше время такое встречается не часто и я такое ценю, потому и добавляю такой дисклеймер.
В ленте среди новостных подписок промелькнула очень интересная (для меня) новость.
Если проект дойдёт до релиза, то у них должен получиться ремонтопригодный, компактный и надёжный цветной струйный принтер, рассчитанный на долгий срок службы.
Ремонтопригодность, открытость программного обеспечения и отсутствие каких бы то ни было ограничений по заправке чернилами - это основное, на мой взгляд, за что уже стоит обратить внимание на этот проект.
Используются самые популярные картриджи, которые можно неограниченно заправлять. Черные и цветные чернила отдельно, никаких ограничений на использование остатков, если какой-то цвет закончился.
Принтер умеет печатать как на обычной бумаге (A4, A3), так и на рулонной, причем способен отрезать бумагу специальным встроенным ножом. Да, печатать баннеры на рулоне тоже можно.
Принтер, как видно на картинке, очень компактный. На столе много места не займёт, но лучше всего, как мне кажется, его подвесить на стену:
Самое, на мой взгляд, "вкусное" - это его конструкция:
Разработчики обещают, что составные компоненты принтера дешевы, и многие из них могут быть напечатаны на 3D-принтере.
Стандартный открытый (opensource) сервер CUPS встроен прямо в "железо" этого принтера, а это значит, что печатать можно будет из любой операционной системы стандартными средствами, в том числе по сети, ведь принтер подключается к WiFi.
Мозгами принтеру служит Raspberry Pi Zero W, а за управление картриджем отвечает STM32.
На мой взгляд у принтера есть только одна неудобная конструктивная особенность - это требования к питанию: 24 В. Сколько ватт будет потреблять прибор авторы на сайте не упомянули. Придётся придумывать DC-DC конвертер, чтобы подключать его в машине.
Хотя учитывая, что проект открытый, думаю можно будет органично добавить конвертер в корпус напечатав необходимые крепежные элементы.
Что ж, с нетерпением ждём первого релиза!
А пока можно сходить на сайт разработчиков и подбодрить их подпиской на обновления по проекту. Никаких денег они пока на этот проект не собирают, хотя окажись он на каком-нибудь кикстартере, я бы уже оформил предзаказ.
P.S.
Важный дисклеймер.
Это не рекламный пост, и мне за него никто не платил.
Проект открытый и не просит денег, весь софт и модели для печати и сборки обещают раздавать бесплатно по лицензии Creative Commons.
Мне действительно очень нравятся такие открытые проекты, и хочется всячески способствовать их появлению и успехам.
Я не знаю доберётся ли этот проект до релиза и какова будет цена готового комплекта для сборки. Надо понимать, что проект родом из Европы, а там немного другой взгляд на низкие цены. Будем надеяться, что проект получится достаточно повторяемый и бюджетный.
