stringtranslate.com

Ключ защиты программного обеспечения

Аппаратный ключ защиты программного обеспечения (обычно называемый ключом или донглом ) — это электронное устройство защиты от копирования и защиты контента. При подключении к компьютеру или другому электронному устройству они разблокируют функциональность программного обеспечения или декодируют контент . [1] Аппаратный ключ программируется с помощью ключа продукта или другого механизма криптографической защиты и функционирует через электрический разъем к внешней шине компьютера или устройства. [2]

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

Ключевой ключ HASP (Hardware Against Software Piracy) для порта LPT

Этимология

В словаре Merriam-Webster указано, что «первое известное использование слова dongle » относится к 1981 году, а его этимология, «возможно, является изменением слова dangle» [3] .

Печатная плата параллельного порта Rainbow Tech, лицевая сторона. Обратите внимание на номера, стертые с чипов, чтобы усложнить обратную разработку
Печатная плата параллельного порта Rainbow Tech, обратная сторона

Донглы быстро превратились в активные устройства, которые содержали последовательный приемопередатчик ( UART ) и даже микропроцессор для обработки транзакций с хостом. Более поздние версии приняли интерфейс USB , который стал предпочтительным выбором по сравнению с последовательным или параллельным интерфейсом. [ необходима цитата ]

В рекламе Rainbow Technologies 1992 года утверждалось, что слово dongle произошло от имени «Don Gall». Хотя это и неправда, это породило городской миф . [4]

Использование

Ключи защиты от копирования с последовательным подключением через параллельный порт.

Попытки ввести защиту от копирования с помощью ключа на рынке основного программного обеспечения встретили жесткое сопротивление пользователей. Такая защита от копирования чаще всего используется с очень дорогими пакетами и вертикальным рыночным программным обеспечением, таким как программное обеспечение CAD / CAM , программное обеспечение для прошивки сотовых телефонов/отладчика JTAG , программное обеспечение MICROS Systems для гостиничного бизнеса и специального розничного бизнеса, приложения для цифровых аудиостанций и некоторые пакеты памяти перевода .

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

USB-ключи также являются важной частью систем аудиопроизводства и редактирования Steinberg, таких как Cubase , WaveLab, Hypersonic, HALion и других. Ключ, используемый продуктами Steinberg, также известен как Steinberg Key. Steinberg Key можно приобрести отдельно от его аналоговых приложений, и обычно он поставляется в комплекте с приложением «Syncrosoft License Control Center», которое совместимо с Mac OS X и Windows.

Некоторые разработчики программного обеспечения используют традиционные USB-флеш-накопители в качестве ключей лицензий на программное обеспечение, которые содержат серийные номера оборудования в сочетании с сохраненными строками идентификаторов устройств, которые, как правило, нелегко изменить конечному пользователю. Разработчик также может использовать ключ для хранения пользовательских настроек или даже полной «переносимой» версии приложения. Не все флэш-накопители подходят для этого использования, поскольку не все производители устанавливают уникальные серийные номера на свои устройства.

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

Проблемы

Существуют потенциальные слабости в реализации протокола между ключом и программным обеспечением, контролируемым копированием. Например, простая реализация может определить функцию для проверки наличия ключа, возвращая «истина» или «ложь» соответственно, но требование ключа можно легко обойти, изменив программное обеспечение так, чтобы оно всегда отвечало «истина».

Современные ключи включают встроенное стойкое шифрование и используют методы изготовления, разработанные для предотвращения обратного проектирования . Типичные ключи теперь также содержат энергонезависимую память — существенные части программного обеспечения могут фактически храниться и выполняться на ключе. Таким образом, ключи стали безопасными криптопроцессорами , которые выполняют программные инструкции, которые могут быть введены в криптопроцессор только в зашифрованном виде. Первоначальный безопасный криптопроцессор был разработан для защиты от копирования программного обеспечения персональных компьютеров (см. патент США 4,168,396, 18 сентября 1979 г.) [5] , чтобы обеспечить большую безопасность, чем ключи могли тогда обеспечить. См. также шифрование шины .

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

Более инновационный современный ключ разработан с процессом портирования кода, который переносит зашифрованные части программного кода поставщика программного обеспечения или лицензионного обеспечения в защищенную аппаратную среду (например, в ОС смарт-карты, упомянутую выше). ISV может портировать тысячи строк важного программного кода компьютера в ключ. [ необходима цитата ]

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

Игровые консоли

Некоторые нелицензионные игры для игровых консолей (например, Super 3D Noah's Ark или Little Red Hood ) использовали ключи для подключения к официально лицензированным картриджам ROM , чтобы обойти чип аутентификации, встроенный в консоль. [ необходима цитата ]

Некоторые устройства для чит-кодов , такие как GameShark и Action Replay , используют ключ. Обычно он подключается к слоту карты памяти системы, а программное обеспечение на основе диска отказывается работать, если ключ не обнаружен. Ключ также используется для хранения настроек и новых кодов, добавленных пользователем или через официальные обновления, поскольку диск, будучи только для чтения, не может их хранить. Некоторые ключи также будут дублировать обычные карты памяти. [ необходима цитата ]

Смотрите также

Ссылки

  1. ^ Амос, SW; Амос, Роджер С. (2002). Newnes Dictionary of Electronics (4-е изд.). Newnes Press . стр. 152. ISBN 0750643315. OCLC  144646016 . Получено 4 июля 2013 г. .
  2. ^ Стоббс, Грегори А. (2012). Патенты на программное обеспечение (третье изд.). Wolters Kluwer . стр. 2–90. ISBN 9781454811978. OCLC  802867781 . Получено 4 июля 2013 г. .
  3. ^ "Dongle". Merriam-Webster . Получено 11 июня 2019 г.
  4. Реклама Sentinel, Byte Magazine, стр. 148.
  5. ^ Патент США 4,168,396

Внешние ссылки