|
|
  |
Bootloader для LPC2364 |
|
|
|
Jul 14 2008, 13:31
|
Местный
  
Группа: Свой
Сообщений: 203
Регистрация: 17-07-06
Пользователь №: 18 874

|
Цитата(zltigo @ Jul 13 2008, 18:03)  В описанных условиях, естественно нет  . В подобных случаях для зашиты от ленивого производителя тспользую далласовские однопроводные датчики температуры (есть и просто с серийным номером без ничего) на основе их серийного номера генерится ключик и прописывается в конфигурацию (у меня I2C EEPROM-ки стоят) изделия. Объясните подробнее. Допустим у меня на плате есть уникальный серийник (DALLAS или что то подобное), как в этом случае защититься от тиражирования? Я заранее не знаю номера серийника, знаю только, что они не повторятся. Я не имею возможности осуществлять програмирование загрузчика, который бы раскодировал зашифрованый hex файл при загрузке. Но я могу сделать так, чтоб программа читала серийник и отдавала компьютеру (устройству производящему програмирование). Но протокол загрузки LPC открытый и если подслушать програмирование можно восстановить исходный файл.
|
|
|
|
|
Jul 14 2008, 15:24
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(navy2000 @ Jul 14 2008, 15:31)  Я заранее не знаю номера серийника... Я кажется почти все написал... Серийные номера сообщаются мне, по ним генерятся ключи, отсылаются и прошиваются в EEPROM для снятия ограничений в работе на объекте. Рассылкой ключей занимается майлробот - получает письмо с разовым ключем (256 символов) на генерацию и серийником и высылает в ответ письмо с сгенерированным ключем под присланный серийный номер. Разовый ключ вычеркивается из списка действующих, в лог файл заносится факт использования, серийный номер, сгенерированный ключ и кто запросил серийник.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 14 2008, 18:11
|
Частый гость
 
Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870

|
Цитата(zltigo @ Jul 14 2008, 11:55)  Кто Вам это сказал  ? Вот ленивые, не собирающиеся менять Flash в своих контроллерах и дают... 8K на уровне 128K это совсем не много. Теперь попробуйте вместо рассуждений просто писать программы. Узнаете про "некомпактрость"  и про потребные размеры Flash. И в этом Вы совершенно не ориентируетесь  Мало того, что сам чип стоит чуть больше 100 рублей поштучно, так и +128K Flash у следующего стоят рублей 20, примерно... А почему не *1000000000 ???? Короче, пока пустой треп. Вот и получается , господин zltigo, что Вы трепач... Не вникая в суть вопроса, Вы уже огульно обозвали меня именно этим словом. Вы ведь даже не потрудились прочитать, что мне надо. 1. 8 kB это для меня много. И это не обсуждаемо. Это условие вопроса по-умолчанию. 2. Насчет компактности кода Вы не правы. Одинаковый функционально код написанный на 51-м и на ARM имеет в ARM больший в 1,5 -- 2 раза размер. И если Вы такой крутой программер Вам это должно быть известно. 3. Это Вы совершенно не ориентируетесь в ценах. А если сказать по-русски -- Вы болтун... :-))) К тому же хам... Кто Вас пустил в модераторы этого форума мне непонятно. Жду извинений.... Я не злой.
|
|
|
|
|
Jul 14 2008, 18:28
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Step_ARM @ Jul 14 2008, 20:11)  1. 8 kB это для меня много. И это не обсуждаемо. Это условие вопроса по-умолчанию. Когда кто-то чем-то не владеет, то сразу начинает для обороны выстраивать догмы "не обсуждаемо" и точка. Цитата И если Вы такой крутой программер Вам это должно быть известно. Именно по этой причине мне и известны встречающиеся в реальной жизни соотношения размеров кода прилично написанных программ. Если Вы хотите мне доказать, что сможете написать нечто через заднепроходное отверстие на ARM, то я Вам уже верю  Цитата 3. Это Вы совершенно не ориентируетесь в ценах.  Остапа понесло.. Любуйтесь: http://mt-system.ru/index.php?store_search=lpc236&id=5Если Вы хотите доказать, что сможете постараться и купить где-то LPC2366 дороже чем LPC2364 на 200 а на 20 рублей, то я опять Вам верю  и даже отговаривать не буду. Цитата Жду извинений.... Я не злой. А я от Вас не жду - по всему видно, что безнадежно
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 15 2008, 07:51
|
Частый гость
 
Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870

|
Когда кто-то чем-то не владеет, то сразу начинает для обороны выстраивать догмы "не обсуждаемо" и точка. Вам трудно это понять, в силу отсутствия опыта написания больших приложений, с выводом на графику и кучей интерфейсов. А диоды зажигать все умеют:-))) Именно по этой причине мне и известны встречающиеся в реальной жизни соотношения размеров кода прилично написанных программ. Если Вы хотите мне доказать, что сможете написать нечто через заднепроходное отверстие на ARM, то я Вам уже верю  Просил же не хамить... :-)))  Остапа понесло.. Любуйтесь: http://mt-system.ru/index.php?store_search=lpc236&id=5Если Вы хотите доказать, что сможете постараться и купить где-то LPC2366 дороже чем LPC2364 на 200 а на 20 рублей, то я опять Вам верю  и даже отговаривать не буду. Процессоры покупаются при сборке в Китае и у них свои цены. Видимо сложности с поставкой следующих камней. И еще вы не осознаете насколько заказчик жадничает из-за каждого доллара удорожания. Удавиться просто готов. Планка себестоимости всего изделия с корпусом и накладными расходами не более 500-600 рублей. На элементы остается очень мало... А я от Вас не жду - по всему видно, что безнадежно  Ну почему же? Извините если я Вас чем-то оскорбил... Ладно... Что болтать -- работать надо. Все равно никто не ответит на мой вопрос. Зарекался же на форумы ходить...
|
|
|
|
|
Jul 15 2008, 10:11
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Step_ARM @ Jul 15 2008, 09:51)  Вам трудно это понять, в силу отсутствия опыта написания больших приложений, с выводом на графику и кучей интерфейсов. Любимые мои LPC чипы с цифирью кончающейся на 8 причем "картинок" во Flash у них нет. Посему своими "большими" приложениями можете гордится перед другими  . Цитата Просил же не хамить... :-))) Это констатация факта. Для ориентации в реалиях можете попробовать собрать чего-нибудь стандартное, например, попугаемер Dhrystone 2.1 под ARM и 51. Цитата Процессоры покупаются при сборке в Китае и у них свои цены. Видимо Вам стоит для начала сменить контрактного производителя, ибо разница в цене в разы по сравнению с его реальной, практически розничной, стоимостью ни в какие ворота не лезет. Цитата Все равно никто не ответит на мой вопрос. Уже ответил - овчинка, при сколь-нибудь нормальном комплексном подходе к делу (покупаем контоллеры по реальным ценам, аккуратно пишем программы) выделки не стоит  .
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 15 2008, 12:31
|

Частый гость
 
Группа: Участник
Сообщений: 128
Регистрация: 6-06-06
Из: Москва
Пользователь №: 17 793

|
Цитата(Step_ARM @ Jul 14 2008, 07:45)  Вы предлагаете поставить процессор побольше? А Вы знаете насколько повышается стоимость изделия? Следующий в серии камень стоит в 3 раза дороже. Удорожание составляет примерно 180-200 руб. 200 *1000шт/мес*12=2 400 000 руб в год. А если выпуск больше? Нифига себе решение, да? Мне -то вроде бы все равно, а вот заказчик на такое не пойдет. Арифметика у Вас какая-то жестокая.  Только что проверил по прайс-листу. LPC2366 дороже LPC2364 в 1.196 раза. А запись во флеш не раскрываем по двум причинам: - совместимость. - патентованный МАМ модуль. Цитата(Step_ARM @ Jul 12 2008, 11:32)  13. NXP сама не разрабатывает. Или покупает лицензию или заказывает где-то. Поэтому маловероятно, что изменится механизм программирования. Так было с 8-битными. Вернее не совсем так, но с привлечением 3-й компании. С АРМ NXP всё разрабатывает сам.
--------------------
wbw shahr
|
|
|
|
|
Jul 15 2008, 19:09
|
Частый гость
 
Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870

|
Цитата(shahr @ Jul 15 2008, 16:31)  Арифметика у Вас какая-то жестокая.  Только что проверил по прайс-листу. LPC2366 дороже LPC2364 в 1.196 раза. А запись во флеш не раскрываем по двум причинам: - совместимость. - патентованный МАМ модуль. Так было с 8-битными. Вернее не совсем так, но с привлечением 3-й компании. С АРМ NXP всё разрабатывает сам. Спасибо, за наиболее полный ответ. А насчет цен ошибочка вышла -- при производстве в Китае 2366 стоит около 160 руб. Я так понял Вы имеете какое-то отношение к NXP. ("не раскрываем"). Всвязи с этим вопрос. По даташиту в LPC boot располагается в верхних адресах флэш. От одного человека слышал, что на последних сериях камней boot находится совсем в другом месте(???) и не занимает флэш пользователя. То есть , например, в 2364 практически все 128 кБ свободны для программ пользователя. Верно ли это? --- zltigo, обрати внимание на человека умеющего общаться без хамства и гипертрофированного самомнения...
|
|
|
|
|
Jul 15 2008, 20:19
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Step_ARM @ Jul 15 2008, 21:09)  А насчет цен ошибочка вышла... Угу.. Только просьба перечитать свои посты и дать оценку апломбу с которым Вы пытались рассказывать о ценах. Да и обовсем остальном  тоже... Цитата От одного человека слышал, что на последних сериях камней boot находится совсем в другом месте(???) и не занимает флэш пользователя... Для этого не надо слушать "человеков", нужно просто читать документацию - у всех, кроме 512K моделей вся Flash доступна пользователю. Только у 512K от 8 до 12K занимает загрузчик.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 16 2008, 02:43
|
Местный
  
Группа: Свой
Сообщений: 203
Регистрация: 17-07-06
Пользователь №: 18 874

|
Цитата(zltigo @ Jul 14 2008, 22:24)  Я кажется почти все написал... Серийные номера сообщаются мне, по ним генерятся ключи, отсылаются и прошиваются в EEPROM для снятия ограничений в работе на объекте. Рассылкой ключей занимается майлробот - получает письмо с разовым ключем (256 символов) на генерацию и серийником и высылает в ответ письмо с сгенерированным ключем под присланный серийный номер. Разовый ключ вычеркивается из списка действующих, в лог файл заносится факт использования, серийный номер, сгенерированный ключ и кто запросил серийник. Вот тут и начинаются мелкие нюансы. Чтоб пересылать мне номера ключей, у производителя должна быть прошивка, которая могла бы их читать. А еще лучше, могла бы выполнять ограниченый набор функций (для проверки работоспособности изделия перед продажей). Если ограничения в работе на объекте зависят от выданых ключей, значит у производителя есть вся прошивка (без ключей работающая в ограниченном режиме и не шифрованная), которую он волен запустить в дизасемблере под отладчиком, обнаружить затычку (или несколько) и заблокировать ее (в простейшем случае заменой условного перехода на безусловный). Все будет зависеть от квалификации ломателя. Поэтому, выдавать нешифрованную прошивку смысла нет. Но чтоб можно было пользоваться шифрованной прошивкой в проц нужно загрузить бутлоадер с дешифрователем. А как это сделать? Снова речь идет о выдаче открытого hex-а с алгоритмом дешифровки (пусть даже он привязан к серийнику). А это просто еще одна ступенька в лестнице к взлому, не более того. Не хотелось бы орентироваться на защиту через незнание, все тайное когдато станет явным (вспомните MIFARE), а хотелось бы придумать такой алгоритм, где суть алгоритма известна, но все же вскрыть его сложно.
|
|
|
|
|
Jul 16 2008, 06:40
|
Частый гость
 
Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870

|
Цитата(zltigo @ Jul 16 2008, 00:19)  Угу.. Только просьба перечитать свои посты и дать оценку апломбу с которым Вы пытались рассказывать о ценах. Да и обовсем остальном  тоже... Для этого не надо слушать "человеков", нужно просто читать документацию - у всех, кроме 512K моделей вся Flash доступна пользователю. Только у 512K от 8 до 12K занимает загрузчик. Я тебе не очень верю,а в документации я не нашел. Возможно я что-то пропустил? Может быть приведешь название документа и номер страницы? Ты меня уж совсем загрыз... Тебе это зачем надо? Чтобы почувствовать себя что-то из себя представляющим разработчиком? А треп насчет камней с восьмерками в конце -- возможно просто треп. Назови свое изделие которое выпускается партией более 500 шт. в месяц. Хотелось бы глянуть.
|
|
|
|
|
Jul 16 2008, 07:12
|

Местный
  
Группа: Участник
Сообщений: 219
Регистрация: 20-11-07
Пользователь №: 32 484

|
Цитата(Step_ARM @ Jul 16 2008, 10:40)  в документации я не нашел. Возможно я что-то пропустил? UM10211 (user.manual.lpc23xx.pdf) Chapter 29: LPC2300 Flash memory страница 591 of 600 Because of the boot block, the amount of flash available for user code and data is 504 K bytes in "512K" devices.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|