Контрольная сумма пзу что это
Eprom. Подсчёт контрольной суммы
Наша строка 27 01 d8 7f 12 a1 c9 8f 75 75
Последние два байта это контрольная сумма. И при смене значений её нужно пересчитывать.
В расчет берется всё от 27 … до 8F.
Немного изменим запись чтоб было нагляднее понятно.
27 01 d8 7f 12 a1 89 8f B5 35
B5 — Первая контрольная сумма.
35 — Вторая контрольная сумма.
И так начнём.
Подсчёт первой КС по пунктам
1. Переводим каждое значение из 16-ой системы в 10-ую.
Пример: 27 01 d8 7f 12 a1 89 8f — 39 1 216 127 18 161 137 143
2. Нужно сложить все 8 байт в десятиричной системе.
Пример: 39+1+216+127+18+161+137+143=842
3. Переводим в 16 систему.
Пример: 842-034a
4. От результата нужно оставить только два правых символа
Пример: 034a — 4A
5. Далее переводим в 10-ую систему.
Пример: 4A = 74
6. От 255 нужно отнять результат пункта 5.
Пример: 255-74=181.
7. Переводим обратно в 16-ую систему. Это и будет КС 1
Пример: 181 в шестнадцатиричной системе будет b5
Итог: 1 Контрольная сумма B5.
Подсчёт 2 Контрольной суммы:
1. Берём опять эту строку 27 01 d8 7f 12 a1 89 8f.
2. Переводим каждый байт в двоичную систему.
Пример: 27 01 d8 7f 12 a1 89 8f — 00100111 00000001 11011000 01111111 00010010 10100001 10001001
10001111
3. Будем считать биты с лево на право для упрощения понимания.
Нужно сложить все первые биты каждого байта. Потом все вторые, потом третьи и так все 8.
Пример:0+0+1+0+0+1+1+1=4, вторые биты- 0+0+1+1+0+0+0+0=2 и т.д. с каждым битом.
Получим такое — 4,2,3,3,4,3,4,6.
4. Переписываем эту строчку в таком формате. Если число четное то=0, нечетное=1 и получаем байт в двоичной системе.
Пример:4,2,3,3,4,3,4,6.= 00110100
5. Переводим итог пункта 4 в Десятичную систему.
Пример: 00110100 = 52 (в десятичной).
6. Нужно прибавить единицу к результату пункта 5.
Пример: 52+1=53.
7. Переводим в Шестнадцатиричную систему. И получаем КС 2.
Пример: 53 = 35.
Вот и получилась вторая контрольная сумма. 35.
Делитесь своими наработками и давайте делиться уже со всеми бесплатно.
Спасибо God1983 и его другу за неоценимую помощь. Всем Добра!
Контрольная сумма: что это и почему это важно
Рассказываем на примере покупок в магазине.
Сегодня в вашем лексиконе появится важная новая фраза: контрольная сумма. Это инструмент опытных разработчиков, админов и хакеров, и сегодня он станет вашим.
Представьте ситуацию: вы приходите в магазин за наушниками. Находите нужные на витрине, пробуете их, вам всё нравится. Вы просите продавца принести такие же со склада, в упаковке.
Продавец приносит коробку, и вы понимаете, что вас хотят обмануть. Упаковку явно до этого вскрывали, в комплекте не все провода и накладки, плёночки сняты. Этими наушниками явно пользовались до вас.
Сотрудник говорит, что это ошибка в списке комплектности, а товар на самом деле новый, просто такой пришёл с завода. Вы ему не верите, отказываетесь от покупки и идёте в другой магазин. Там вы находите такие же наушники, проверяете и радуетесь, что купили нужную вещь.
В мире информации происходит почти то же самое: товар на складе — это какие-то данные, а список комплектности товара — это контрольная сумма, которая показывает, изменялись эти данные или нет. Если понимать, что это такое и как этим пользоваться, можно проверить подлинность файла и обезопасить себя от подделок, вирусов и шпионов.
Как это работает
На самом деле именно контрольной суммы уже нет — это название нам досталось с тех времён, когда для проверки точности передачи данных использовали 7 бит вместо 8. Восьмой бит был контрольным, и в нём находилась сумма первых семи бит без учёта старших разрядов. Когда получателю приходила очередная порция данных, он складывал 7 бит и сравнивал сумму с восьмым. Если они совпадали, значит, данные, скорее всего, передались верно. Тогда линии связи были не такими надёжными, как сейчас, и если что-то передавалось неправильно, такие данные нужно было отправить заново. С тех пор и пошло понятие контрольной суммы.
Сейчас сумму уже никто не использует, а вместо этого работают специальные программы:
Смысл технологии в том, что для любого файла и алгоритма есть только одна контрольная сумма. Если в файле изменить предложение, слово или несколько символов, контрольная сумма будет уже другой. Это как цифровой отпечаток пальца, только для данных.
Самый простой вариант организовать контрольную сумму — использовать хеши, например, MD5. Мы уже говорили про хеши в статье про Фейсбук и утерянные пароли, но MD5 — многогранная вещь, и в своё время его все использовали для создания контрольных сумм.
Но примерно с 2006 года все стали переходить на другие алгоритмы (CRC32, SHA-1, SHA-2 или MD5crypt). Дело в том, что уже есть методы, которые за приемлемое время могут взломать MD5-хеш и сделать другой файл с тем же размером и почти таким же содержимым, что и ваш. Это значит, что злоумышленник может подделать данные таким образом, что проверка контрольной суммы пройдёт успешно и вы будете думать, что всё в порядке.
Почему это важно
Если вы знаете контрольную сумму и алгоритм её нахождения, вы всегда можете проверить файл на целостность — скачался ли файл целиком и вообще тот ли это файл, что нужно.
Например, вы качаете новую прошивку на свой телефон. Если файл скачается неправильно, не до конца или с ошибками, во время перепрошивки телефон может сломаться, и восстановить его будет уже нельзя. Чтобы такого не было, производители прошивок прикладывают к файлам контрольную сумму, чтобы каждый мог проверить перед перепрошивкой, в порядке ли сам файл.
Чаще всего контрольную сумму используют разработчики ПО, которые выкладывают на своих страницах официальный софт и драйвера. Они говорят: ребята, вот файл, а вот его контрольная сумма. Если качаете у нас — проверьте, без ошибок ли вы скачали. А если качаете не у нас — сравните их контрольную сумму с нашей, вдруг они вам под видом драйвера хотят подсунуть какой-то вирус.
Посчитать контрольную сумму прошивки
Есть прошивка для контроллера, в прошивке в 4-х последних байтах должна быть записана контрольная сумма этой прошивки. (Пример прошивки с правильной КС) Подскажите, если это не сложно, алгоритм как она расчитывается.
P.S. Это прошивка для ЭБУ автомобильного двигателя, при инициализации контроллер загружает прошивку из EEPROM и сверяет расчитанную КС с записанной, если они не совпадают, то загорается лампочка «Check Engine» двигатель не заводится.
в прошивке в 4-х последних байтах должна быть записана контрольная сумма этой прошивки
Это точная информация? Откуда она?
Смотря, какой алгоритм КС. Блочный или побитовый? Просто вычисляет чётность или что-то посложнее?
Должна быть точной, в описании к файлу прошивки было написано: «контрольная сумма 0048»
Как раз прошу совет как вычислить алгоритм по готовому примеру.
> Как раз прошу совет как вычислить алгоритм по готовому примеру.
а чем это таким занимаетесь? какие сайты подскажете по чтению с разъёма ОДБ, может ещё по каким игрушкам? хотя больше бортовые компьютеры интересуют
Посмотрел ваш профиль, никаких контактов. Дайте свой jid, у меня тоже есть к вам вопрос по поводу ISO 9141-2.
только я особо ничего и не знаю, быть честным
Контрольная сумма пзу что это
Вылезает такая ошибка при перепрошивке блоков М73 и заметил не важно передний привод или классика, ошибка вылезает не сразу, а через какое то время.
Шью через бут, прогу пользую Опен 3.10, прошивки Паулюса.
ЕЕПРОМ чистил, не помогает, всегда помогала повторная перепрошивка блока, но вот попалась машинка, уже третий раз перешиваю, все равно вылезает эта зараза через какое то время.
Может кто нибудь что посоветует. Замучался уже блоки разбирать по 2-3 раза.
Вылезает такая ошибка при перепрошивке блоков М73 и заметил не важно передний привод или классика, ошибка вылезает не сразу, а через какое то время.
Шью через бут, прогу пользую Опен 3.10, прошивки Паулюса.
ЕЕПРОМ чистил, не помогает, всегда помогала повторная перепрошивка блока, но вот попалась машинка, уже третий раз перешиваю, все равно вылезает эта зараза через какое то время.
Может кто нибудь что посоветует. Замучался уже блоки разбирать по 2-3 раза.
Если после записи в ЭБУ прошивки, бутлоадер которой отличается от исходной, появляется «Ошибка ПЗУ», рекомендуется считать из ЭБУ прошивку (уже с исходным бутлоадером), открыть ее в редакторе калибровок CTPro, сохранить (будет пересчитана контрольная сумма) и снова записать в ЭБУ.
Если после записи в ЭБУ прошивки, бутлоадер которой отличается от исходной, появляется «Ошибка ПЗУ», рекомендуется считать из ЭБУ прошивку (уже с исходным бутлоадером), открыть ее в редакторе калибровок CTPro, сохранить (будет пересчитана контрольная сумма) и снова записать в ЭБУ.
И как с этим можно справится без CTPro?, у меня нет CTPro который поддерживает М73.
кидай в личку, пересохраню
Да боюсь не смогу записать прошивку если она в формате СМС сохранена будет, криптована же будет.
Слышал прога Дика пересчитывает КС и самозагружайку тут же сделает!
Что такое контрольная сумма файла
К онтрольная сумма — это последовательность цифр и букв, используемая для проверки данных на наличие ошибок. Если Вам известна контрольная сумма исходного файла, Вы можете использовать специальную утилиту чтобы убедиться, что Ваша копия идентична.
Объяснение контрольных сумм
Чтобы получить контрольную сумму, Вы запускаете программу, которая обрабатывает этот файл алгоритмом. Типичные алгоритмы, используемые для этого, включают MD5, SHA-1, SHA-256 и SHA-512.
Алгоритм использует криптографическую хеш-функцию, которая принимает входные данные и создает строку (последовательность цифр и букв) фиксированной длины. Входным файлом может быть небольшой файл размером 1 МБ или большой файл размером 4 ГБ, но в любом случае Вы получите контрольную сумму такой же длины. Контрольные суммы также могут называться «хешами».
Небольшие изменения в файле приводят к иному виду контрольных сумм. Например, два разных текстовых файла, которые почти одинаковы, но у одного есть восклицательный знак, а у другого — точка будут иметь разные контрольные суммы. Разница в один символ в файле дает другую контрольную сумму.
Когда контрольные суммы полезны
Вы можете использовать контрольные суммы для проверки файлов и других данных на наличие ошибок, возникающих во время передачи или хранения. Например, файл мог быть неправильно загружен из-за проблем с сетью или проблемы с жестким диском могли вызвать повреждение файла на диске.
Если Вы знаете контрольную сумму исходного файла, Вы можете запустить для нее утилиту хеширования. Если полученная контрольная сумма совпадает, Вы знаете, что файл у Вас идентичен.
Компьютеры используют методы контрольной суммы для проверки данных на наличие проблем в фоновом режиме, но Вы также можете сделать это самостоятельно. Например, дистрибутивы Linux часто предоставляют контрольные суммы, чтобы Вы могли проверить правильно загруженный ISO-образ Linux, прежде чем записывать его на диск или помещать на USB-накопитель. Вы также можете использовать контрольные суммы для проверки целостности любого другого типа файла, от приложений до документов и носителей. Вам просто нужно знать контрольную сумму исходного файла.
В чем разница между хешами MD5, SHA-1 и SHA-256
Контрольные суммы — это полезный способ убедиться, что в файле нет ошибок. Если ошибка возникает из-за проблем с загрузкой или проблем с жестким диском, результирующая контрольная сумма будет другой, даже если это небольшая ошибка.
Однако эти криптографические хеш-функции несовершенны. Исследователи безопасности обнаружили «коллизии» с функциями MD5 и SHA-1. Другими словами, они обнаружили два разных файла, которые производят один и тот же хэш MD5 или SHA-1.
Это вряд ли произойдет случайно, но злоумышленник может использовать эту технику, чтобы замаскировать вредоносный файл. Вот почему не следует полагаться на суммы MD5 или SHA-1 для проверки подлинности файла — только для проверки на наличие повреждений.
Сообщений о конфликте SHA-256 пока не поступало, поэтому приложения теперь создают суммы SHA-256 вместо сумм MD5 и SHA-1. SHA-256 — более сильный и безопасный алгоритм.
Различные алгоритмы контрольной суммы дают разные результаты. Файл будет иметь разные контрольные суммы MD5, SHA-1 и SHA–256. Если Вам известна только сумма MD5 исходного файла, Вы должны вычислить сумму MD5 своей копии, чтобы проверить, совпадает ли она.
Как рассчитать контрольную сумму
Если Вы знаете контрольную сумму исходного файла и хотите проверить ее на своем компьютере, Вы можете легко это сделать. Windows, macOS и Linux имеют встроенные утилиты для генерации контрольных сумм. Вам не нужны сторонние утилиты.
В Windows команда PowerShell Get-FileHash вычисляет контрольную сумму файла. Чтобы использовать ее, сначала откройте PowerShell. В Windows 10 щелкните правой кнопкой мыши кнопку «Пуск» и выберите «Windows PowerShell». Вы также можете запустить его, выполнив поиск в меню «Пуск» по запросу «PowerShell» и щелкнув ярлык «Windows PowerShell».
Get-FileHash входит в состав Windows 10. Но в Windows 7 Вам необходимо установить обновление PowerShell 4.0.
В командной строке введите Get-FileHash и нажмите клавишу пробела.
Введите путь к файлу, для которого Вы хотите вычислить контрольную сумму. Или, чтобы упростить задачу, перетащите файл из окна проводника в окно PowerShell, чтобы автоматически указать путь к нему.
Нажмите Enter, чтобы запустить команду, и Вы увидите хэш SHA-256 для файла. В зависимости от размера файла и скорости памяти Вашего компьютера процесс может занять несколько секунд.
Если Вам нужен другой тип контрольной суммы, добавьте соответствующую опцию -Algorithm в конец команды, например:
Сравните рассчитанную контрольную сумму с исходной. Не нужно смотреть слишком внимательно, так как будет большая разница в контрольной сумме, даже если в базовом файле будет только крошечная разница.
Если контрольная сумма совпадает, файлы идентичны. Если нет, значит проблема — возможно, файл поврежден или Вы просто сравниваете два разных файла. Если Вы скачали копию файла и ее контрольная сумма не соответствует ожидаемой, попробуйте загрузить файл еще раз.