На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
    > подскажите безопасное решение для защиты проги в Атмелине , делаем железку для защиты своего софта
      разрабатываем свою железку. нечто вроде HASP для защиты софта.
      железка в себе для усиления защиты несет важную алгоритмическую часть - которой нету в исполняемой программе.
      т.е часть функционала вынесена из ехе в железку.

      к сожалению хардварщик раньше работал только на МО и защитой не озадачивался :fool: . В итоге получилось что чип не защищен ничем. снять бит защиты стоит сейчас порядка 400usd (((
      со снятым битом защиты слить прошивку и раздербанить ее не проблема. после чего устройство клонируется.

      сейчас остро стоит вопрос с наименьшими затратами сил и средств усилить защиту железки от клонирования и реверса.

      нужно какое то решение. я с чисто софтварной точки зрения вижу это так: чип, способный выполнять запрограммированные действия, снять с него прошивку невозможно.
      в идеале он должен на аппаратном уровне поддерживать RSA шифрование или иное несимметричное шифрование. В него передается зашифрованный блок данных из "главного" процесора, он его внутри себя декодирует ( public key допустим уже прошит внутри ) и выполняет мат. операции с данными после чего возвращает результат.

      принципиально чтобы вытащить public key было невозожно с него или очень и очень дорого.

      что можете посоветовать?
      ну и главное чтобы цена решения была не дороже 50usd - сейчас сeбестоимость железки на уровне 15usd
        Цитата
        сейчас сeбестоимость железки на уровне 15usd

        Пользователь может ключ "потерять" и запросить у вас новый. Всего за $15-$50. И нет смысла платить 400. :scratch:
          Цитата Prince @
          Пользователь может ключ "потерять" и запросить у вас новый. Всего за $15-$50. И нет смысла платить 400.

          не понял ремарку. дело в том что каждая железка на учете на сервере. и там еще процедура активации по ее ID

          проблема лишь в том что злые могут ее клонировать или распотрошить чтобы вытащить из нее наши алгоритмы которые мы прячем в железку
            Цитата
            дело в том что каждая железка на учете на сервере. и там еще процедура активации по ее ID

            Т.е., ключ подходит к любой копии программы? Почему не привязать к конфигурации железа(или, нельзя ли привязать его к конфигурации железа)?

            Добавлено
            Цитата
            железка в себе для усиления защиты несет важную алгоритмическую часть - которой нету в исполняемой программе.

            Цитата
            чтобы вытащить из нее наши алгоритмы которые мы прячем в железку

            А-а, виноват, я сразу не вник в идею. :scratch:
            Железяка - защита от реверса важной части софта, и опасно не столько клонирование, сколько возможность изучения ваших алгоритмов?
            Сообщение отредактировано: Prince -
              Цитата progman @
              что можете посоветовать?
              ну и главное чтобы цена решения была не дороже 50usd - сейчас сeбестоимость железки на уровне 15usd
              юзать java card :whistle:
              при массовости, должно стать не очень дорого. Плюсы - практически 100% надёжность, простота, универсальность и ненужность 'железячника', минусы - дороже конечно и возможно помедленнее.

              Если чё, пиши :)
                Цитата Prince @
                Железяка - защита от реверса важной части софта, и опасно не столько клонирование, сколько возможность изучения ваших алгоритмов?

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

                Добавлено
                Цитата SVK @
                минусы - дороже конечно и возможно помедленнее.

                цена имеет значниею потокло 50usd за устройство.
                причем оно должно втыкаться в USB компа и эмулировать COM порт - тоесть определяться виндой автоматически как вирт компорт
                софт шлет запросы в железку через COM порт этот.

                алг которые надо прятать не сложные - просто обработка константных массивов. массивы по 2 килобайта ( блажайший пример - таблица разовых ключей ) фактически можно сказать что железка выдает из зашифрованной таблицы 13 случайных значений.
                софт их должен получить и по своемому интерпретировать )


                как тут без железячника обойтись хз.


                я тут надумал вариант - поставить батарейку на плату и RSA ключ которым дешифровать данные разместить а ОЗУ контроллера. Но напрягает одноразовость такого устройства - при любом сбое девайсина не восстанавливается.
                  Цитата progman @
                  снять бит защиты стоит сейчас порядка 400usd
                  Это реальная информация про используемый микроконтроллер или просто слухи из интернета?
                    Цитата trainer @
                    Это реальная информация про используемый микроконтроллер или просто слухи из интернета?

                    это реальная инфорация от ребят которые занимаются сабжем.
                    бит защиты в зависимости от чипа стирают или УФ лазером или под мощной УФ лампой.

                    топология большинства чипов хорошо задокументирована и вся инва есть.
                    я сам был в шоке когда начал общаться. не знал что это уже настолько просто всё :-(
                    Сообщение отредактировано: progman -
                      Цитата progman @
                      для усиления защиты несет важную алгоритмическую часть - которой нету в исполняемой программе.т.е часть функционала вынесена из ехе

                      Цитата progman @
                      дело в том что каждая железка на учете на сервере. и там еще процедура активации по ее ID

                      Так на сервере и выполняйте эту важную алгоритмическую часть, а пятнадцать баксов за активацию можете мне высылать :)
                        Цитата progman @
                        бит защиты в зависимости от чипа стирают или УФ лазером или под мощной УФ лампой.
                        Это про какой микроконтроллер? PIC16C84 ?
                          Цитата trainer @
                          Это про какой микроконтроллер? PIC16C84 ?

                          Я не изучал у них вопрос досконально. :-?

                          Просто в ходе беседы выяснил что у ребят на украине своя фирма. что занимаются снятием прошивок с чипов и их дизассемблированием.
                          Что снять бит защиты с большинства Атмелей это 400 баксов.
                          Что есть секьюрные чипы цена на которые от 80К евро и без гарантии.
                          например упомянули Атмель АТ98 ее хак стоит от 100 тысяч евро - потому что она одноразовая. К перепрошивке не предназначенная.
                          Но по словам моего разраба она снята с производства и ее хрен достанешь. Так что обломс.

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

                          Люди серьезные и в балабольстве ранее замечены не были. Я их знаю с 2005го года на ниве хака софта. Уже 3 года как сменили профиль - говорят в хаке железа денег больше.

                          Добавлено
                          Цитата MeG @
                          Так на сервере и выполняйте эту важную алгоритмическую часть, а пятнадцать баксов за активацию можете мне высылать

                          думаешь самый умный ;-)

                          задача стоит чтобы через сервер только активацию произвести а работа шла в оффлайне.
                            Цитата progman @
                            Цитата (trainer @ Вчера, 14:49)
                            Это реальная информация про используемый микроконтроллер или просто слухи из интернета?

                            это реальная инфорация от ребят которые занимаются сабжем.
                            бит защиты в зависимости от чипа стирают или УФ лазером или под мощной УФ лампой.

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

                            А вот не верю!!!
                            Не верю в то, что те пластиковые корпуса микросхем настолько прозрачны для ультрафиолета.
                              А то вроде для тех, кто этим занимается, есть проблема растворить пластик над кристаллом...
                              О визуальной нетронутости в таких случаях не сильно думают.
                                Цитата northener @
                                А вот не верю!!!
                                Не верю в то, что те пластиковые корпуса микросхем настолько прозрачны для ультрафиолета.

                                "азотом" расстворяют - наверное имелась ввиду азотная кислота. хз.
                                Просто у нас была мысль эпоксидкой все залить. Все обходится. на каждую смолу есть свой расстворитель :-?

                                Добавлено
                                Цитата avreal @
                                А то вроде для тех, кто этим занимается, есть проблема растворить пластик над кристаллом...О визуальной нетронутости в таких случаях не сильно думают.

                                угу
                                  Цитата progman @
                                  азотная кислота. хз.

                                  И она тоже
                                    Вот, кстати, хорошая демонстрация процесса (раздевания кристалла). Вместе с поучительной историей о левых кристаллах.
                                      по сабжу: сошлись пока на том что ставим батарейку на плату и в ОЗУ чипа держим RSA ключ которым дешифруем часть кода перед его выполнением.
                                      ОЗУ снимать с чипа пока не научились.

                                      жаль что решение чисто одноразовое - любой сбой и память сбрасывается. :blink:
                                        Цитата progman @
                                        жаль что решение чисто одноразовое - любой сбой и память сбрасывается. :blink:

                                        Любая попытка заменить израсходованную батарейку приведёт к ... :blink:
                                        Впрочем, вроде бы существовали жуки памяти со встроенной литиевой батарейкой
                                        на 10 лет эксплуатации.
                                        Сообщение отредактировано: ЫукпШ -
                                          Цитата ЫукпШ @
                                          Любая попытка заменить израсходованную батарейку приведёт к ... :blink:
                                          можно разместить второй параллельный отсек :jokingly:
                                            Цитата
                                            любой сбой и память сбрасывается

                                            Память сбрасывается только при отключении питания, нет? :scratch:
                                              Цитата SVK @
                                              Цитата ЫукпШ @
                                              Любая попытка заменить израсходованную батарейку приведёт к ... :blink:
                                              можно разместить второй параллельный отсек :jokingly:

                                              Существует ещё и такой фокус - питаем жук памяти через диод.
                                              После диода для памяти(хорошей) ставим хорошую емкостину микрофарад на 100.
                                              Этого может хватить даже на сутки.
                                              На время быстрой замены батарейки этого хватит обязательно.
                                                Цитата ЫукпШ @
                                                Любая попытка заменить израсходованную батарейку приведёт к ...

                                                epicfail

                                                при цене девайса в 25-30 долларов он будет тупа одноразовый на год-полтора работы.
                                                клиентов это более чем устроит. париться с заменой батарейки никто не будет.

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

                                                так что решение имхо вполне работоспособное.
                                                  Цитата progman @
                                                  по сабжу: сошлись пока на том что ставим батарейку на плату и в ОЗУ чипа держим RSA ключ которым дешифруем часть кода перед его выполнением.
                                                  ОЗУ снимать с чипа пока не научились.

                                                  жаль что решение чисто одноразовое - любой сбой и память сбрасывается. :blink:

                                                  Ну, да. Более тупого решения не придумать - если злоумышленники смогут прочесть прошивку, то они её и смогут её модифицировать, чтобы перехватить ключ во время его получения.
                                                    Видимо имеется в виду, что при изготовлении устройства после вставки батарейки передается код, который записывается во встроенное ОЗУ микроконтроллера, выдача его обратно наружу не предусмотрена.
                                                    Правда неясно, как это всё будет себя вести при наличии помех в цепи питания.
                                                    Если не завязано на ОЗУ - то всё просто - при зависании контроллера встроенный или внешний watchdog его сбрасывает и происходит переинициализация.
                                                    Сообщение отредактировано: trainer -
                                                      Цитата R11 @
                                                      если злоумышленники смогут прочесть прошивку

                                                      А внимательно прочитать? :huh:
                                                      Цитата progman @
                                                      и в ОЗУ чипа держим RSA ключ которым дешифруем часть кода
                                                      что тебе даст чтение прошивки? :D
                                                        Цитата medved_68 @
                                                        что тебе даст чтение прошивки?

                                                        Чтение и модификация прошивки позволит вычитать этот ключ из памяти и расшифровать оставшуюся часть.
                                                        Сообщение отредактировано: HardRock -
                                                        1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                                        0 пользователей:


                                                        Рейтинг@Mail.ru
                                                        [ Script execution time: 0,0536 ]   [ 14 queries used ]   [ Generated: 14.05.24, 08:03 GMT ]