Обновить

Комментарии 41

Приложение выпущенное в 2000 году тоже обязано иметь актуальный сертификат или как эта магия в макоси работает?

Если разработчик уже не занимается приложением, то что происходит?

Есть мнение, что у вас тупо не получится запустить приложение из 2000 - по причинам, описанным Джоэлом в статье про Майкрософт в 2004, где внезапно упоминается культура Apple - How microsoft lost the api war:

A lot of developers and engineers don’t agree with this way of working. If the application did something bad, or relied on some undocumented behavior, they think, it should just break when the OS gets upgraded. The developers of the Macintosh OS at Apple have always been in this camp. It’s why so few applications from the early days of the Macintosh still work. For example, a lot of developers used to try to make their Macintosh applications run faster by copying pointers out of the jump table and calling them directly instead of using the interrupt feature of the processor like they were supposed to. Even though somewhere in Inside Macintosh, Apple’s official Bible of Macintosh programming, there was a tech note saying “you can’t do this,” they did it, and it worked, and their programs ran faster… until the next version of the OS came out and they didn’t run at all. If the company that made the application went out of business (and most of them did), well, tough luck, bubby.

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

НЛО прилетело и опубликовало эту надпись здесь

Не обязательно такого древнего. Судя по картинке у Логитеч сертификат был всего на 5 лет. ПО из 2020 вполне еще бодрое

У меня спокойно запускается очень старая x84-64 версия одного приложения от 2019 года на M4. Я не думаю, что разраб этого приложения тайно заходил на мой комп и переподписывал его =) Плюс еще есть homebrew, из которого тоже все работает вообще без всего этого.

Ну т.е. звучит как ситуация, в которой сами логитеч завязались на необязательное что-то, а потом пострадали?

Маком пользовался буквально пару часов в сумме, поэтому спрашиваю =)

Причём дважды. Сначала когда решили делать нестандартный драйвер мыши, а потом когда его сделали криво.

Я под макось не девелопил и таких тонкостей не знаю, но судя по всему это действительно не обязательная штука (вероятно нужно только чтобы через app store софт выкладывать).

Лови плюсик в карму за замечательное решение - скрывать рекламу телеграм канала под спойлер!

Поймал, спасибо!

</irony>

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

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

Просто должна быть возможность принудительно запустить приложение, преодолев (страшные!) предупреждения системы. Для неподписанного софта это в macOS есть. Тут не знаю.

Утечки приватного ключа сертификата вы хотели сказать. Но были придуманы CRL - так что если нужно это отзывается. Хоть через 10 лет, хоть завтра.

Чтобы проверить по CRL, нужно этот CRL получить. Для этого нужен интернет и чтобы CRL всё ещё существовал. Если компания закрылась, то скорее всего это не получится сделась.

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

Файл без временной метки не считается доверенным, как и подписанный после того, как об утечке сертификата стало известно (на основании временной метки, чтобы старые файлы не сломались из-за отзыва сертификата).

обычно нормальные люди (microsoft например) запрещают подписывать эскпайренным ключем, а не запускать. пусть хоть 10 раз утечет после экспирации. о, @ValdikSS уже более детально расписал, спасибо.

Так он может утечь ДО экспирации

Какие-то конелюди в кучу смешались. Приложение не работает, из-за истекшего сертификата РАЗРАБОТЧИКА? Тогда почему маоксь не показывает об этом ошибку, а "подвешивает приложение и жрёт процессор"? Понятно, что Logitech пропарили сеотификат, но то, что оно так криво не работает – это косяк Apple тогда.

Далее, если дело в сертификате разработчика – то, опять же, какие претензии к Logitech, если это механизм безопасности ОС, и всё работает как должно работать? (за вычетом сообщения об ошибке, см. выше) Приложения без сертификата не должны работать, в этом же и смысл весь.

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

Насчёт обязательности приложения тоже так себе абзац. Во-первых, ну да, кастомные функции нужно как-то настраивать. Во-вторых, мышь без них-таки работает. А в-третьих, сторонние приложения для настройки-то есть, кто мешает пользоваться? Как минимум, часть кастомных функций настроить можно. Мышь предоставляет стандартные Mouse Button 1,2,3,4,5.

Причём тут постоянное подключение к интернету? Проверка сертификатов может оффлайн работать.

В общем, "у людей на полдня пропала возможность кастомизировать кнопки мыши, ПОДНИМЕМ ВОССТАНИЕ!".

Зачем?

Есть валидные вопросы, благодарю.

Приложение не работает из-за истекшего сертификата РАЗРАБОТЧИКА?

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

приложения без сертификатов без проблем можно запустить, никаких танцев с бубном не надо.

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

Во-вторых, мышь без них-таки работает.

Ну да, курсор-то двигается, даблклик даблкликается! Чё вы разорались, буржуи.

Проверка сертификатов может оффлайн работать.

Да, оно походу и не связано с интернетом, это я перегнул под влиянием жалоб на enshittification. Спасибо.

Да, есть неподписанные приложения

Неподписанных, вроде как, и нет уже. Можно add-hoc подпись сделать локально и распространять (я так свой бесплатный Touch-Tab распространяю). Пользователю придется чуть помучаться с запуском - это да.

миллионы мышек на Mac превратились в кирпичи

мышь или клавиатура за 100+ долларов теряют половину функциональности (кастомные кнопки, жесты, настройки скорости скролла)

Так они превратились в кирпичи или в обычные мышки? Пользуюсь мышью Logitech, не пользуюсь этим spyware под названием Options+, и меня всё устраивает. Хорошая мышка, и не за 100+ долларов

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

Я вот более-менее понимаю, за что страдаю, когда у меня к Маку подключён через SAS ленточный накопитель. Но ради мыши это как-то дико.

Вопрос удобства для каждого отдельно взятого человека. У меня Logitech G502X использую и для работы и для игр. Кроме кнопок вперед / назад, на боковой стороне мышки есть кнопка которую я настроил на mission control (на клавиатуре ctrl + ↑ ) лично мне удобно. Если я лишусь этой функции - для меня это не будет чем то критичным, но если она есть, то мне удобно ее использовать.

Не знаю как там для Options+, но в G Hub есть опция, где все настройки будут хранится в самой мышке, правда в таком случае не получиться динамически менять профили под разные приложения.

Стандартная Apple Magic Mouse поддерживает множество разных жестов, и наверняка можно было бы по тому же API подключить дополнительные кнопки Logitech, ничего не инсталлируя в систему, а просто немножко подумав.

На самом деле тут основной замысел Logitech наверняка был в том, чтобы просто отметиться на экране своим логотипом, как и у многих других мусорных приложений, идущих в комплекте с железом (в особенности эта беда проявляется в Windows).

Основной замысел Logitech в другом и он отлично ложится на мои потребности.
У меня mac os как основной рабочий компьютер, рядом стоит обычный компьютер с dual boot windows для тяжелых игр и linux для различных экспериментов по работе (не все влезает по ресурсам в докер на макоси). Все это подключено к монитору с kvm что избавляет меня от необходимости переподключать перефирию при переключении с одного устройства на другое. Так вот, в Logitech G Hub есть возможность настройки кастомных профилей и между этими профилями можно переключаться либо вручную кнопками на мышке, либо назначив автовключение профиля в зависимости от того, что у вас сейчас запущено. Для mac os у меня на боковой кнопке mission control для windows и linux управление виртуальными рабочими столами, для игр (есть возможность сопоставить профиль с определенным бинарником который запускается) другой хоткей.

Мог ли я сам все это реализовать "немного подумав"? Наверное мог бы, но у меня другие увлечения и убивать кучу времени на то, что уже сделали до меня не вижу смысла.

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

Не удивлен. Этот монстр Options использую только для того чтобы переназначить F1-F12 на клавиатуре. Насколько хорошее железо у Логитек, настолько дурные программисты.

Гляньте Karabiner Elements

да я под виндой. Причем на Линукс кто-то написал аналог, а под виндой я не нашёл.

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

ПК-бояре сейчас напишут: «Не знаю, у меня всё работает»

Не напишут. Потому что G-Hub может внезапно перестать распознавать мышь/клаву/гарнитуру/геймпад. И всё, с этого момента поможет только перестановка винды, или установка G-Hub версии 2023.1. Простое удаление БД G-Hub последней версии не помогает. На Реддите есть несколько постов про это, некоторым уже 2 года. Т.е. проблема есть давно, но Logitech ничем не может помочь. Да и не хочет.

В почту пришло письмо о том, что уже хотфикснули )

Но как верно сказали, в кирпичи ничего не превращалось — все эти MX Master вполне себе работают и без Options+.

Сейчас Options+ — это медиакомбайн с какими-то «кнопками действий», «магическими макросами», интеграцией с ChatGPT и плагинами из маркетплейса.

И самое стрёмное: приложение обязательное. Без него дорогая мышь или клавиатура за 100+ долларов теряют половину функциональности

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

Я под линухом всё всегда настраивал в Solaar и даже не знал, что мне нужно фирменное приложение ))

В свое время выбирал куда переехать с WIN7.Выбрал Mint.Очередное подтверждение правильности выбора.

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

«некоторые макбуки при этом перегревались из-за зависшего процесса Options+, жравшего батарею в фоне».

Я разработчик ПО под macOS. Окончание 5 летнего срока codesign сертификата для подписей кода приложения НЕ приводит к ошибке с его запуском - старое подписанное приложение продолжит корректно работать. Нельзя только подписывать НОВЫЙ код истекшим сертификатом. У меня есть старая версия моего продукта, которая сейчас успешно запускается, а сертификат истек еще в мае 2025 г. Получил новый сертифкат и им подписываю новые версии продукта. Старую версию не трогаю - она работает.
Под Windows общая схема такая же.
В истории с Logitech не совсем понятно, что именно произошло. Может теоретически истек какой-то корневой сертификат, который использовался в цепочке создания codesign подписи. Когда я обновлял 5 летний сертификат, то кроме своего сертификата еще скачивал с сайта Apple корневые сертификаты длительностью до 2035 года. Как-то они используются видимо в цепочке подписей.

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

как можно ЗАБЫТЬ продлить сертификат для такого массового продукта?

В эпоху тотальной безответственности — легко. И не только для массового продукта. Регулярно натыкаюсь на просроченные домены и сертификаты сайтов различных компаний, от мала до велика. А ведь всего-то надо было потратить минуту на создание в условной Jira задачу "Продлить сертификат". Но нет, людям наплевать на себе подобных, если это не сулит им выгоды здесь и сейчас. Поэтому и работают они по принципу «После меня хоть потоп», полагая что 5 лет на одном месте всё равно не останутся. Вот мы и получаем мир, который находится в состоянии вечного MVP.

Options+ — учебный пример enshittification всего вокруг нас. Когда-то настройки мыши были простым системным приложением: ткнул в кнопку, выбрал действие, закрыл. Сейчас Options+ — это медиакомбайн с какими-то «кнопками действий», «магическими макросами», интеграцией с ChatGPT и плагинами из маркетплейса.

Жутко это бесило. Но, спасибо косяку с сертификатом, благодаря ему узнал о замечательном Better Mouse, даже батарею дольше держать мой старичек стал

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации