Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 15.07.2018, 18:07
firewex firewex вне форума
Прохожий
 
Регистрация: 13.02.2018
Сообщения: 8
Версия Delphi: Delphi XE7
Репутация: 10
Вопрос Определить алгоритм контрольной суммы

Всем привет! Есть определенное устройство которое пересылает данные по сети, я перехватил данные пересылаемые между программой и устройством и нашел где хранится нужная мне информация. только вот чтобы устройство реагировало на команды изменения параметров устройства, нужно посчитать контрольную сумму, которая находится в последних двух байтах посылаемой команды. Проблема в том что устройство старое и документации и исходников программы управления не найти, можно ли как то определить как считается контрольная сумма исходя из перехваченных данных?
Вот одна и та же команда с изменением одного параметра:
Код:
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $6F, $42, $3F, $0A, $03, $00, $10, $00, $00, $02, $16, $7F 
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $50, $2B, $67, $0A, $03, $00, $10, $00, $00, $02, $75, $9C 
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $50, $30, $39, $0A, $03, $00, $10, $00, $00, $02, $A8, $C4 
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $60, $00, $00, $0A, $03, $00, $10, $00, $00, $02, $69, $F3
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $60, $00, $01, $0A, $03, $00, $10, $00, $00, $02, $D6, $72
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $60, $00, $02, $0A, $03, $00, $10, $00, $00, $02, $06, $F8
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $60, $00, $09, $0A, $03, $00, $10, $00, $00, $02, $6A, $5F 
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $60, $00, $0F, $0A, $03, $00, $10, $00, $00, $02, $DB, $42
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $60, $00, $FF, $0A, $03, $00, $10, $00, $00, $02, $40, $01
$A5, $00, $00, $00, $2D, $B0, $00, $00, $12, $30, $32, $2E, $30, $34, $2E, $37, $35, $60, $3B, $97, $0A, $03, $00, $10, $00, $00, $02, $9D, $5E

// $00 - байты которые менял командой
// $00 - контрольная сумма (нужно понять какой алгоритм ее считает) 
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 01:45.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter