Так вот, в железке, что мне принесли, контрольная сумма -- md5! Чтобы уж точно ошибку не пропустить. Либо можно настроить устройство так, чтобы проверки не было вообще. Но отключать проверку нельзя -- у нас не ядерные технологии, но всё равно будет неприятно, если в данные вкрадётся ошибка. md5 это клёво, конечно, только мы собираемся подключать эту железку к микроконтроллеру. Да, md5 гораздо надёжнее какого-нибудь CRC32, но и считается долго. Особенно на микроконтроллере. Хорошо, что скорости небольшие.
Обычно же в таких устройствах применяют CRC16 или вообще -- просто xor всех байт пакета.