fk0, легенда (11.05.2019 17:19, просмотров: 306) ответил бомж на Ну так этот CodeMeter и является таким защищённом чипом (криптографическим микропроцессором)
Он не должен быть криптопроцессором, это ничему не поможет (сам же и расшифрует, что он защищает...) Он должен выполнять часть алгоритма программы. В этом суть. Если защищаемая программа сама по себе предназначена для шифрования, PGP например, то https://ru.wikipedia.org/wiki/%D0%91%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_%D1%87%D0%B5%D1%80%D0%B5%D0%B7_%D0%BD%D0%B5%D1%8F%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C
он должен не ключи хранить (см. ниже), не расшифровывать в нужный момент ключи и сам код программы (как по факту оно работает), а интегрировать ключи и алгоритм В СВОЙ ПРОЦЕССОР. Чего нет. Твоя же цитата:
Private: Protected area; it requires a password for reading and writing data
Hidden: Secret area, accessible only via API and password
Раз речь зашла о паролях, неужели уже непонятно, что оно принципиально мало чем отличается от карточки mifare защищённой паролем или, чтоб уж совсем наглядно, zip-файла с паролем. Т.е. программа даёт пароль и вытаскивает из архива нужный кусочек самой себя, потом исполняет. Вот и вся суть. На деле конечно сложней, но принцип именно этот. Что отличается от варианта, когда программа вызывает функцию исполняемую в самом донгле. Или, если про криптографию, когда смарт-карта не ключ выдаёт по паролю, а сама реализует криптографический алгоритм. Да я понимаю, что на деле немного сложней и некопируемость лицензий там обеспечивается криптографическими методами, но код программы всё равно же просто "достаётся из архива". И может быть записан и воспроизведён, дизассемблирован и отучен от проверки лицензии... Да, лицензию украсть донгл может не позволить, но и код программы не абсолютно защищает. Кроме того шаринг донгла через интернет отдельная история.
Впрочем google://wibu codemeter emulator наталкивает на мысли, что всё даже проще.
По хорошему достаточно было бы найти любой программируемый USB-донгл с защищённым процессором. Ардуину какую-нибудь (на арме, ясное дело). Которую будут производить следующие 10 лет. И весь управлющий и вычислительный, кроме GUI, алгоритм основной программы вынести туда. Кроме, возможно, некоторых функций которые можно было бы вызывать на ПК с донгла. Т.е. какой-то простенький RPC (remote-procedures-call) который позволит донглу вызвать функции на ПК (GUI, чтение-запись файлов, тяжелые вычисления). А на ПК "тупой" клиент, который обслуживает запросы донгла и сам по себе ничего не стоит. Вот это было бы стоящим решением. Но таких нет, потому, что оно сложней для потребителя (требуется разработка ПО изначально под ARM и ПК отдельно, а не спагетти-код где всё замешано, а потом сбоку прикрутили лицензии).
[ZX]