Цитата(zltigo @ Jul 18 2008, 17:53)

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

Возможно ты и прав, zltigo... Но ведь подобные алгоритмы занимают довольно много flash и медленновато работают на контроллерах(в нашем случае, вроде, некритично). Ты говоришь, что XOR со сдвигом быстро ломается? Разговоры , типа "ломается на 1-2-3"--лишь разговоры.
Может попробуешь?
Вариант 1
Исходные 4 байта 61A0DE88
Конечные 4 байта C0302FD8
Вариант 2
Исходные 4 байта FF5BA8C6
Конечные 4 байта 1AE5DE55
Если еще надо спроси...
Даже если тебе дать алгоритм, то на вычисление маски и смещения уйдет уйма времени.
Если использовать кодирование по 8 байт еще дольше провозишься.
Если конечно ты не везунчик и при первом же случайном выборе не попадешь в точку:-)))
Цитата(Сергей Борщ @ Jul 18 2008, 16:28)

Ломается элементарно. Поверхностное описание методики взлома было, кажется, у Скляра в "Цифровой связи".
Все ломается. Только сколько времени и сил уйдет? См. ниже.
Цитата(navy2000 @ Jul 18 2008, 14:30)

DES или AES в AVR реализовать ваще не проблема, так уже делали.
Здесь проблема в том, что загрузчик тоже шьет заказчик. Читайте весь топик.
Sorry... Это получается типа картриджа для сотовых телефонов?
Цитата(zltigo @ Jul 16 2008, 12:02)

Сложность программ как-то коррелирует с серийностью их выпуска?
Смотря какой коэффициент корреляции... Но ведь я пока не вижу ссылку ни на, хотя бы , одно?
Цитата(navy2000 @ Jul 17 2008, 17:08)

Еще одна идея.
Исходим из того, что серийники в целевых платах менять не могут.
Програмируется устройство аппаратной железякой. Железяка кроме интерфейса с програмируемым процом имеет еще и свой интерфейс с серийником.
Железяка читает серийник платы. Сравнивае, не работала ли она ранее с этим серийником.
Вставляет его (или функцию от него) в нешифрованный загрузчик.
Грузит его в проц и закрывает флешь от чтения.
Загрузчик в проце запускается, читает серийник с платы и если он совпадает готова к прошивке целевой программы.
Железяка шифрует программу и загружает ее в проц. загрузчик расшифровывает ее серийником (или функцией от серийника) и прошивает его во флешь, сам стирается и закрывает флешь от чтения.
Целевая прога стартует, сравнивает серийник на плате и если он тот, то стартует.
Железяка инкрементирует счетчик.
Когда счетчик вышел, отправляйте железяку разработчикам или покупайте новую.
Понимаю, дыра есть, но покритикуйте сложность взлома.
Есть тут одна сложность. Кто держатель этой железяки? Например, это дилер по месту продажи. Так вот, дилеры, обычно, далекие от техники люди и ни за что не хотят свзываться с перешивкой изделий.
Если обнаружился глюк , не выявленный в результате испытаний изделия, то его просто отправляют назад. В случае, если загрузчик уже зашит, любой пользователь может взять кодированный файл в инете и записать.
Кстати не все фирмы закрывают свое ПО. Исходят из того, что массово повторить изделие довольно сложно.
Цитата(navy2000 @ Jul 17 2008, 17:08)

Еще одна идея.
Исходим из того, что серийники в целевых платах менять не могут.
Програмируется устройство аппаратной железякой. Железяка кроме интерфейса с програмируемым процом имеет еще и свой интерфейс с серийником.
Железяка читает серийник платы. Сравнивае, не работала ли она ранее с этим серийником.
Вставляет его (или функцию от него) в нешифрованный загрузчик.
Грузит его в проц и закрывает флешь от чтения.
Загрузчик в проце запускается, читает серийник с платы и если он совпадает готова к прошивке целевой программы.
Железяка шифрует программу и загружает ее в проц. загрузчик расшифровывает ее серийником (или функцией от серийника) и прошивает его во флешь, сам стирается и закрывает флешь от чтения.
Целевая прога стартует, сравнивает серийник на плате и если он тот, то стартует.
Железяка инкрементирует счетчик.
Когда счетчик вышел, отправляйте железяку разработчикам или покупайте новую.
Понимаю, дыра есть, но покритикуйте сложность взлома.
Есть тут одна сложность. Кто держатель этой железяки? Например, это дилер по месту продажи. Так вот, дилеры, обычно, далекие от техники люди и ни за что не хотят свзываться с перешивкой изделий.
Если обнаружился глюк , не выявленный в результате испытаний изделия, то его просто отправляют назад. В случае, если загрузчик уже зашит, любой пользователь может взять кодированный файл в инете и записать.
Кстати не все фирмы закрывают свое ПО. Исходят из того, что массово повторить изделие довольно сложно.