реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Баг в AVR231:AES Bootloader, может кто знает как лечить
LexaK
сообщение Feb 1 2010, 15:56
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 118
Регистрация: 3-12-06
Из: Новороссийск
Пользователь №: 23 082



Суть его в том, что при определенных размерах файла прошивки процесс шифрования/дешифрования приводит к повреждению данных. В моем случае повреждались 14 байт начиная с адреса 0x4D00. Проявляется достаточно редко, поэтому выявить какую-либо закономерность не могу.
Кто-нибудь разобрался?
PS Видел в одном из обсуждений упоминание этого бага и упоминание темы, в которой он обсуждается, но саму тему не нашел.
Go to the top of the page
 
+Quote Post
acorn
сообщение Feb 1 2010, 18:25
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 28-11-05
Пользователь №: 11 495



Тоже наткнулся как-то на этот баг. Сходу разобраться не получилось. Решил не тратить времени и перешел на DES из соседней аппноты. С ним проблем не возникало.
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Feb 2 2010, 08:30
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(LexaK @ Feb 1 2010, 19:56) *
Суть его в том, что при определенных размерах файла прошивки процесс шифрования/дешифрования приводит к повреждению данных. В моем случае повреждались 14 байт начиная с адреса 0x4D00. Проявляется достаточно редко, поэтому выявить какую-либо закономерность не могу.
Кто-нибудь разобрался?
PS Видел в одном из обсуждений упоминание этого бага и упоминание темы, в которой он обсуждается, но саму тему не нашел.

А разобрались хоть. Проблема при кодировании или при декодировании.
У меня тоже что-то подобное возникает. Причину не установил. Хоть где рыть.

Похоже придётся писать Coder-decoder и проверять на PC.
Go to the top of the page
 
+Quote Post
V_N
сообщение Feb 2 2010, 08:49
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 162
Регистрация: 12-01-09
Из: Харьков
Пользователь №: 43 270



Посмотрите здесь http://www.imagecraft.com/pub/code_samples/AVR/AVR231.zip там этот проект портирован для ICCAVR V6 может подрихтовали
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Feb 2 2010, 09:41
Сообщение #5


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Я сейчас данную тему на МСП перекладываю, так что поиграюсь.
Цитата
Суть его в том, что при определенных размерах файла прошивки процесс шифрования/дешифрования приводит к повреждению данных. В моем случае повреждались 14 байт начиная с адреса 0x4D00. Проявляется достаточно редко, поэтому выявить какую-либо закономерность не могу.

А если отключить шифрование и оставить чисто бутлодер? (приняли пакет - прошили, без помощи aes.c)
Естественно, передавать тоже некриптованный файл.

Как-то надо локализовать, где собака порылась


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 2 2010, 10:05
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(MrYuran @ Feb 2 2010, 11:41) *
Я сейчас данную тему на МСП перекладываю, так что поиграюсь.
Оно вылезает оочень редко. Мне попадалось раз или два с 2007г, а прошивка меняеся пару раз в неделю.
Цитата(MrYuran @ Feb 2 2010, 11:41) *
А если отключить шифрование и оставить чисто бутлодер? (приняли пакет - прошили, без помощи aes.c) Естественно, передавать тоже некриптованный файл.
В кодировании собака. И судя по всему в шифровании. Ибо искажается кусок данных в середине прошивки. А дешифрование идет блочно и зависит от истории. Если бы проблема была в расшифровке, то следующий пакет расшифровывался бы тоже неправильно и вылетали бы по ошибке несовпавшей сигнатуры. Вот не догадался сохранить ту прошивку и набор ключей для детального анализа. Фактически нужен (сбоящий + предыдущие 16 байт) кусок хекса, ключи шифрования и содержимое ChainCipherBlock перед шифровкой этих предыдущих 16 байт.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
LexaK
сообщение Feb 2 2010, 10:14
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 118
Регистрация: 3-12-06
Из: Новороссийск
Пользователь №: 23 082



Цитата
А если отключить шифрование и оставить чисто бутлодер? (приняли пакет - прошили, без помощи aes.c)
Естественно, передавать тоже некриптованный файл.

1. В атмелевском примере предусмотрена возможность отключения шифрования, но, если в cfg-файле не указываешь ключи (в аппноте написано так), софтина create.exe вываливается с сообщением об ошибке.
2. По совету acorn к своему проекту подключил DES-шифровальщик и проблема ушла. Остальные части проекта без изменений, тем более, что у меня бутлоадер работает с SD-карты, т.е. атмеловский вариант передачи файла у меня исключен.
3. Сигнатуры-то совпадают!
Цитата
Похоже придётся писать Coder-decoder и проверять на PC.

А стоит ли? использовать DES и не париться. Единственное, он гораздо медленнее.
Да, атмел в этом аппноте щедро разложил грабли smile.gif

Сообщение отредактировал LexaK - Feb 2 2010, 10:36
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Feb 2 2010, 10:27
Сообщение #8


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(Сергей Борщ @ Feb 2 2010, 13:05) *
Оно вылезает оочень редко. Мне попадалось раз или два с 2007г, а прошивка меняеся пару раз в неделю.В кодировании собака. И судя по всему в шифровании.

Спасибо, попробую присмотреться.
Хотя, если редко, то может и хрен бы с ним...
Приделать к кодеру верификатор и сигнализировать при ошибке.
Заодно и исходные данные для анализа будут.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 1st July 2025 - 09:42
Рейтинг@Mail.ru


Страница сгенерированна за 0.01441 секунд с 7
ELECTRONIX ©2004-2016