Полная версия этой страницы:
usb + avr
по существу я програмер, допрагромировался до реальной продажи софта. ну и как всегда - появилась цена, появились страхи о хацкерах : (
а тут про увлечение вспомнил - микроконтроллеры, и вот мысль:
некое устройство usb в виде мелкой флешки, внутре мелкий avr с прогой, плюю из своего софта туда цифру - что-то с ней делаю и получаю что-то в ответ.
ну хасп и т.д. - понятно, а почему бы самому не сделать? : )
RN3QLQ
Jan 17 2006, 06:26
Цитата(d71 @ Jan 17 2006, 09:11)

по существу я програмер, допрагромировался до реальной продажи софта. ну и как всегда - появилась цена, появились страхи о хацкерах : (
а тут про увлечение вспомнил - микроконтроллеры, и вот мысль:
некое устройство usb в виде мелкой флешки, внутре мелкий avr с прогой, плюю из своего софта туда цифру - что-то с ней делаю и получаю что-то в ответ.
ну хасп и т.д. - понятно, а почему бы самому не сделать? : )
Нажмите для просмотра прикрепленного файла
Георгий
Jan 17 2006, 06:35
А хацкер сядет анализатором на линию, посмотрит что куда гонишь и продублирует твою флэшку.
насчет лпт - очень большое спасибо, я подумаю очень, но трабл именно в миниатюрности

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

в моем софте куча математических формул, некоторые из них можно переложить на плечи сего устройства

хочу пример общения с авр череж усб
Георгий
Jan 17 2006, 08:53
Сама идея в целом неплоха, но придется наладить производство флэшек, если программа пойдет в серию.
unichorn
Jan 17 2006, 09:33
Народ заглянитека сюда, я недумаю что будут анализировать ваш AVR.
http://www.cracklab.ru/
MALLOY2
Jan 17 2006, 10:04
Лучший способ защитить программу от взлома - это зделать ее бесплатной

.
А если серьезно, то программа должна стоить дешевле чем ее взлом, и в итоге если она будет очень полезной и востребованной массой народа ее взломают 100%.
Ну а что по поводу защиты USB ключ это то что надо, возложить на ключ часть вычислений результаты которых будут вычеслятся в нутри ключа тоже очень удачный вариант защиты но не 100%.
Только есть всякие трудности с изготовлением, что бы он выглядел как брилок будет дороговато стоить, а если их надо зделать всего пару штук это вобще не реально.
P.S. Не бывает 100% защит. 100% защита стоит бесконечно денег.
Скажу с позиции хакера. Чтобы зае..ать себя в усмерть, имея опыт программирования микроконтроллеров, я бы положил на USB флешку всю программу, чтобы она вообще не инсталлировалась. А защиту распихал бы по хвостам секторов флешки ( тех, которые для коррекции ошибок используються). Когда обьем кода для анализа превысит несколько мегабайт, а автоматизировать операцию анализа будет трудно, хакер обламаеться. Или, если все-таки удасться нормально запустить масс-сторадж на АРМах с USB, сделал бы свою приблуду по мотивам флешдрайва, где часть кода исполнял бы АРМ. 512К кода и частоты ядра в 40 Мгц должно на многое хватить. Тогда обычному хакеру понадобиться еще ембеддер с осциллографом, что значительно усложняет взлом.
DeXteR
Jan 17 2006, 11:31
Цитата(YAM @ Jan 17 2006, 12:02)

Тоже защищаю софт таким образом
Несколько переделаная программа под АВР + чувак драйвер и прогу написал
Ключи собираю наколенях. Продаем прогу мало пока.
Но возникла проблемма - эта штука нехочет определаться на новых компах.
Конкретно - Стоит пень 3 - 800 Все пашет
Стоит Пень 4 с асусовской матерью (П4П***) - Девайс неопределяеца =(
Вот теперь думаем что делать
vesago
Jan 17 2006, 13:34
У меня на работе тоже хотели сначала самопал делать. Я даже опытный образец склепал - вешался на лпт. Программа периодически слала случайное число, ключ вычислял хэш и слал назад. Программа сравнивала с собственным результатом. Так вот такие издели ломаются в два счета с помощью софтайса и иды. Надо, чтоб программа часть кода хранила в ключе или еще что изощреннее. Короче мы покупаем алладиновские хаспы.
defunct
Jan 17 2006, 16:23
2 d71, такое уже есть, называется Guardant Stealth, сделан кажется на 2313 стоит ~10-20$, практически не ломается если грамотно испольновать. Почитайте www.guardant.ru. Особенность ключа состоит в том, что пользователь задает несколько произвольных алгоритм шифрования, которые лочатся в EEPROM'е 2313, а позднее в программе пользователь обращается к ключу и вызывает заранее подготовленный алгоритм шифрования. Взлом тем сложнее чем больше алгоритмов добавит в ключ и будет использовать пользователь.
значит я выбрал правильный путь : )
цена на мою прогу очень не большая с точки зрения бизнеса который она автоматизует,
Но ключик попробую сварганить.
сами ключи делать не сложно - плата маленькая получается, размер платы такой же как и сам "папа" усб.
это значит можно после отработки просто взять эпоксидку, квадратную форму и тупо заливать изделие.
у меня на весь комплекс не каждому рабочему месту ключ нужен,
в среднем 2-3
-----
короче обсасываю тему, пока народ вокруг интересуется,
за ссылки ОГРОМНОЕ спасибо
-----
тема усб еще важна потому что разрабатываю устройства которые сбрасывают\принимают настройки\данные с компов, а у людей в ноутах ком-портов-то уже и нету почти.
eXeC001er
Jan 18 2006, 19:57
а как же токены?! почему бы их не юзать?!
MALLOY2
Jan 19 2006, 09:49
Цитата(khach @ Jan 17 2006, 14:33)

Скажу с позиции хакера. Чтобы зае..ать себя в усмерть, имея опыт программирования микроконтроллеров, я бы положил на USB флешку всю программу, чтобы она вообще не инсталлировалась. А защиту распихал бы по хвостам секторов флешки ( тех, которые для коррекции ошибок используються). Когда обьем кода для анализа превысит несколько мегабайт, а автоматизировать операцию анализа будет трудно, хакер обламаеться. Или, если все-таки удасться нормально запустить масс-сторадж на АРМах с USB, сделал бы свою приблуду по мотивам флешдрайва, где часть кода исполнял бы АРМ. 512К кода и частоты ядра в 40 Мгц должно на многое хватить. Тогда обычному хакеру понадобиться еще ембеддер с осциллографом, что значительно усложняет взлом.
С позиции хакера, это зделай так что бы я потом не мучелся

. Зделать клон флешки это пустяковое дело !
Цитата
С позиции хакера, это зделай так что бы я потом не мучелся . Зделать клон флешки это пустяковое дело !
И какими средствами мы будем снифить длинное чтение? Если оно идет от двух конкурирующих таймеров? И в программе штук 15 сегментов. В каждом три куска запакованные различными ключами, и сегменты все время перерасшифровываються, так что полный расшифрованный дамп не существует никогда. Клон флешки можно сделать, если найти точно- такой флешдрайв, проверок на валидность железа тоже напихано. Совсем параноидальный вариант включает в себя шифровку флеша ( масс- сторадж контроллер расшифровывает на-лету, и со стороны компа устройство видиться как комбо - кроме масс-сторадж есть еще нечто, что выполняет роль ключа. В нем еще и реал-тайм батарея- если хакер тормознул исполнение процесса- все, прощай синхронизация ключа.
AndyBig
Jan 19 2006, 12:26
Уже в такие дебри залезли

А что, программа будет достаточно стоящей, что бы на ее взлом можно было потратить пару-тройку килобаксов? Или даже пару-тройку сотен баксов?
Если нет - нет и смысла так серьезно ее защищать, имхо.
Ну незнаю за килобаксы, но рассчет простой - прога стоит 300 баксов. Ее покупают. Одну копию. Потом эта копия ломаеться и размножаеться в купившей конторе в колтчестве N штук. Соответственно этих N штук никто некупит- финансовые потери на лице. Теперь, пусть аппараная защита стоит 100 баксов. Продаем за теже 300. Пусть ломают (отсюда параноидальность). Зато может в конце-концов купят эти N штук.
AndyBig
Jan 19 2006, 14:30
С этого и нужно начинать - посчитать предполагаемый убыток от воровства программы и сравнить их с затратами на защиту. Исходя из результата и выбирать защиту.
Если, например, программа узкоспециализированная (ну, скажем, для автомастерских), то врядли какая-то автомастерская вместо того, что бы купить эту программу за 200 баксов, заплатит кому-то за взлом 400 баксов. Взламывать просто так эту программу тоже врядли кто из крякеров захочет.
а почему б не обратить взор на c8051F32x, USB-2.0, 16 кБ Флеша с возможностью самопрограммирования, можно и кусок проги из нег грузить :-)
SasaVitebsk
Jan 20 2006, 23:55
Не хочу Вас расстраивать. Я не хакер, но работаю в сфере интерфейсов. К сожелению часто описания нет, либо оно не полное, либо фирма внесла изменение, которое и мешает работать твоему устройству с их интерфейсом. Часто, - слабо сказано. Всегда. И вот тогда я беру готовые уже примочки и сливаю весь протокол обмена рабочих аппаратов в файл. И с помощью спец программ, которые сам же написал восстанавливаю картину. Потом исправляю ошибки и по второму кругу. И т.д.
Я это всё к чему. Что бы Вы не делали во внешнем устройстве, его всегда возможно сэмулировать. Обычно это делается даже без внешнего устройства. Просто пишется прога которая эмулирует работу Вашего ключа. А различные внешние устройства защиты только ухудшают Вашу программу. Т.к.
1) Усложняют её.
2) Возникают дополнительные вопросы по совместимости.
3) Возникают вопросы по надёжности и ремонту.
4) Возникают вопросы по развитию Ваших прог и совместимости с Вашими же ключами более ранних версий.
Короче вся эта шляпа ухудшает для клиентов потребительские свойства Вашей программы.
И выхода из этого нет. Необходимо, что бы хотябы часть потребителей научилась платить за чужой труд! Без всяких там защит! Сами! Чтобы искали комубы заплатить.
Пока об этом приходится только мечтать.
С уважением.
понимаю и разделяю, но ничего поделать не могу. мне надо защищаться, так как совесть непозволяет срециально вводить в программу ошибки, что бы покупали из за поддержки.
мой софт честно работает у людей и моего вмешательства не требует.
--+--
софт специфичен, но уже узнаю от людей о вопросах со стороны типа "дайте скопировать, жалко что ли...", а я писал не один месяц...
горькая правда, но аппаратный ключ буду делать, потому как когда люди из других регионов покупают - я не могу руками ставить привязку к железу, как это выглядит сейчас. будет проще продавать компакт-диск и пару ключей к нему.
ой больная тема, сплю и вижу кашмары как мою теперешнюю защиту вскрыли и в инет выложили
Kovrov
Jan 22 2006, 10:59
Цитата(d71 @ Jan 17 2006, 09:11)

ну хасп и т.д. - понятно, а почему бы самому не сделать? : )
моё мнение если тема касается компового софта
тут хоть защищай - не защищай - правило одно
чел сделал - чел сломал
ну или расчитывать на совсем уж начинающих людей
если в мсу ещё как то можно подергаться в смысле недоступности кода
то софт это все как на ладоне - и неважно есть внеш шифрование или нет
(люди вон "DES" 100 лет назад ломали без проблем)
тут брать клиента только так ... 100% бесплатная поддержка продукта и мин цена за продукт
другово мне на ум не ничего не приходит
skyeron_N
Jan 31 2006, 11:30
Полностью согласен с выводами SasaVitebsk !!! Взломать можно любую программу - всё только дело времени, и ни какие внешние устройства тут не спасут. Всё дизассемблируется - всякие там обращения к внешним устройствам вырезаются, замещаются, перепрыгиваются, обходятся... Если в программе применена многоуровневая защита, т.е. защита защиты, и потом защита защиты защиты и т.д., то и это
тоже не является чем-то непреодолимым. Дайте время и заинтересованность - всё будет поломано...
А расчитывать, что мол хакер не знаком с AVR-контроллерами и для него будет трудностью найти осциллограф... Это не серьёзно! Настоящие хакеры идут в первых рядах IT-прогресса, не за просто так конечно. А выход мне кажется в быстром развитии программы. Свежая версия должна выходить быстрее, чем будет сломана предыдущая. И конечно каждый раз с новыми методами и алгоритмами защиты.
Дмитрий Александрович
Oct 31 2007, 01:36
Я может и не ветеран компьютерных и контроллерных технологий, но уверен, что можно защитить свое детище.
Кто сказал, что защита будет представлятьиз себя ключ, шифр, и прочие всем известные методы?
Вот смотрите, программа, это некий софт, который представляет собой некий механизм, какой то работающий продукт, распространяется по средствам привычных носителей компьютерной инфомации. А если переложить какую то часть программы на тот самый аппаратный ключ? Не какую то там формулу или процесс шифрования-дешифрования, а непосредственно часть алгоритма, взможно обработка и хранение не только переменных но и массивов данных, которые динамически изменяются и обрабатываются силами ключа. Надеюсь моя идея понятна, взять и кусок программы переложить в ключь...
Я не отрицаю, что человек создал, он же и взломал)))
но тут взлом будет напоминать дописывание чужой программы, или вовсе написание своей с нуля

А ведь я по собственному опыту знаю как это не просто, не один раз доделывал на работе чужие проекты!
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.