Есть компания Volvo, у них есть своя структура файлов которые проливаются в их автомобили. Их структурный архив называется VBF (Volvo Binary Format). Загрузка происходит в машину по SBL (Second Bootloader) и CFG (Config), далее проливаются основные файлы загрузки. Начальная сборка архива подписана и она проверяется на уровне процессора, если ты что то не так заливаешь то происходит ошибка на "Check Memory".
Есть начальный Header, пример:
header { //********************************************************** //* //* Volvo Car Corporation //* //* This file is generated by VBF CONVERT ver. 5.2.0 //* //* DO NOT EDIT ! //* //**********************************************************
// Volvo software part number sw_part_number = "6608226997";
// Software Version: sw_version = "S";
// Volvo software part type: Data or Parameters sw_part_type = EXE;
// 0x00 = Uncompressed, 0x10 = Compressed, 0x80 = Delta Encoded and no compress, 0x90 = Compressed and Delta Encoded data_format_identifier = 0x00;
// ECU Address: ecu_address = 0x1201;
// Start address of the hash table verification_block_start = 0xF0000000;
// Length of the hash table verification_block_length = 0x000000CC;
// Root hash value verification_block_root_hash = 0x44971b6d56240e21a5b4f2b40235f908d1af37d6524a45e13455933b023fdb9d;
// RSA2048 signature of Root hash value for production sw_signature_dev = 0x66d1de238933b5674b3386f02565771de123c852627858bc4f3e66a10efc5df460399063e7ded4f3ccb716993ffbf820352840cd6cb2e9cc32f570249acc9b03059acff19a62edbf1c112f6a4cfc8f5416186af4e1013a9f138ad7b8b2ff433113db8d5625f2110d4b09120af226bc05f0ccb4ccd6ad0ab3d4fa1300b98e0bc81b499884a48db0c490d8c6dfb95d427c4d9e7bf334b9438bd097e250f62b184d51c841fc167b9cbfd6782a573572d1b15a65e202df5b66d8d2bf81d2ba4cf908ea059146856e965dac6a4edca8bb76bce171b6a2cc86ee41ecc483446a6c1d61b93315fff405f59a2bd9e607b88c090e35d5d3249506bd869b8cd5f711dd1641; sw_signature = 0x7718ddede4e6a8ff406ae3a80309e94166dac683e4489d623194f50d89802bd187f15f478927f731902567b854cb9cf34497e01d838fd79e074a760c73191e43eac15e7cd46df7a10ab18f3d6ece951f73b2fe052392681f422debe7a19e01980b300eec3dca25ffa51f4faf864c45a5ba0fab2ba3c4ebe64e77981365041bc2d316997f2d8861a2abe1f2fd3faa3e17b9ebb57206f7f568124ac1a27b8f1a3265d7f7140530cb2c3f2130d2227760768fcb0371c5f5f7fb273fd7f4b2cc81bcc9bef38dfea6ccd60149e5384d6e242cdefa8afe70511234dd60b38fa94d84b7c65dbc89a0789a109dc6bff4937efe39318246606f03dfe0367cbdcb427e3e63;
Мое предположение, что файлы подписываются приватным ключом, а в машине есть публичный ключ и как я думаю, что каждый блок в машине подписан своим приватным ключом.
Если нужно еще более детально, отпишите, прикрепил файл примера.