|
КАН моталка. Принцип работы., Как обмануть CAN. |
|
|
|
Nov 11 2009, 12:21
|
Знающий
   
Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640

|
Путешествуя по автомобильным сайтам, я был очень удивлён. Оказывается бывают такие девайсы, и их у нас продают, которые позволяют изменять информацию читаемую с автомобильной CAN шины. Чаще всего, как я понял, они используются водителями для "коррекции" пробега, чтобы списать побольше топлива. Но наверное можно и перед продажей установить, чтобы скрутить пробег. Ну и для того, чтобы информацию о машине изменить, тоже использовать можно.
Я предполагаю, что дело происходит примерно так: 1. В CAN сеть подключается специальный девайс. 2. Этот девайс портит посылки, содержащие информацию о пробеге. Но нужно перед этим прочесть имеющуюся посылку, чтобы из неё вынуть данные о реальном пробеге. 3. Этот девайс выдаёт в сеть свою посылку, содержащую скорректированную информацию.
Испортить посылку по п.2, на мой взгляд, лучше всего установив доминанту во время передачи CRC. Тогда и реальный пробег можно прочесть (мы ведь знаем, что ошибка CRC - это наших рук дело). Понятно, что для этого придётся влезть в CAN протокол програмно, т.к. CAN контроллеры на такое не рассчитаны. Но проблем там быть не должно, т.к. скорость 250 или 500 кбод. ATmega48 вполне справится. При тактовой 16 мГц будет 64 или 32 такта на бит. Вполне достаточно чтобы CRC на лету подсчитать. Лучше всего вход захвата таймера для приёма данных использовать.
Ну и противодействовать этому легко. Просто смотреть испорченные посылки.
Хотя м.б. я не прав, а там ребята просто знают команду для изменения пробега...
А сейчас подумал, что м.б. ребята так не заморачиваются. Просто забивают всю шину своими левыми сообщениями. А когда происходит реальная передача, то у неё ID такой же. Арбитража из-за этого нет. Появляется ошибка в данных и CRC. А счётчик ошибок у ребят постоянно сбрасывается. А у настоящего - Bus Off.
|
|
|
|
|
 |
Ответов
|
Nov 12 2009, 12:17
|
Знающий
   
Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640

|
Цитата(syoma @ Nov 12 2009, 12:22)  ... Синхронность сдесь не нужна, но 2 CAN-контроллера желательно. Так в том и идея, чтобы ATmega48 за $0.5 с софтовым CAN-ом использовать. Все другие варианты (в т.ч. MCP2515) значительно дороже. А к MCP2515 всё равно процессор нужен. А LPC с двумя CAN-ами вроде от $7 начинаются... Ну и по размерам/потреблению мега тоже вне конкуренции. Можно и 2 ATmega48 поставить, в случае не синхронного повторителя, но тогда связь между ними проблемой будет. Да и вообще, зачем не синхронно делать, если можно (и проще) синхронно? Я посмотрел, ATmega48 до 20 мГц работает. Т.е. при 500 кбод 40 тактов на бит у неё будет. Вроде должна успевать и CRC и битстаффинг на лету считать. Хотя простейшую логику таки придётся добавить. Но можно, наверное, и диодами/резисторами обойтись...
|
|
|
|
Сообщений в этой теме
galjoen КАН моталка. Принцип работы. Nov 11 2009, 12:21 syoma Вы будете удивлены, может быть, но есть еще и таки... Nov 11 2009, 15:03 galjoen Цитата(syoma @ Nov 11 2009, 18:03) 1. Ина... Nov 11 2009, 18:06 Doka galjoen
да.. вот мне тоже думается это реализуетс... Nov 11 2009, 18:47 galjoen Цитата(Doka @ Nov 11 2009, 21:47) 1. её м... Nov 11 2009, 20:02 Doka думаю в разных авто - по-разному.
у меня кореянка ... Nov 12 2009, 06:45 galjoen По последним, не проверенным, сведениям КАН моталк... Nov 12 2009, 08:58 Punk Ну Вы мужики и намудрили=) Делать софтверный кан д... Nov 22 2009, 19:03 Doka Цитата(Punk @ Nov 22 2009, 22:03) Ну Вы м... Nov 22 2009, 19:15  Punk Цитата(Doka @ Nov 22 2009, 22:15) а по су... Nov 23 2009, 05:22   galjoen Punk Насчёт пробега на щитке понятно. А если запро... Nov 23 2009, 11:29    Punk Цитата(galjoen @ Nov 23 2009, 14:29) Punk... Nov 23 2009, 17:46     galjoen Цитата(Punk @ Nov 23 2009, 20:46) Реальны... Nov 24 2009, 17:33 Punk В АБС пробега не храниться. У АБС и так забот хва... Nov 24 2009, 18:16 galjoen Цитата(Punk @ Nov 24 2009, 21:16) А Вы гд... Nov 24 2009, 18:46 Doka Цитата(Punk @ Nov 24 2009, 21:16) В АБС п... Nov 24 2009, 19:57  Punk Цитата(Doka @ Nov 24 2009, 22:57) нет... ... Nov 25 2009, 06:51   mich.bil B каждом пакетике от АБС приходит, грубо говоря, к... Jan 25 2010, 19:09  Juray Цитата(Doka @ Nov 24 2009, 22:57) ECU - в... Jan 26 2010, 09:34   galjoen Цитата(Juray @ Jan 26 2010, 12:34) Могу р... Feb 3 2010, 12:58 Juray Насчет расшифровки "ECU":
http://en.wiki... Feb 2 2010, 13:25
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|