Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Проверка хэша в исполняемом файле. / 14 сообщений из 14, страница 1 из 1
11.08.2017, 08:01
    #39503791
leguo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Добрый день.

Мне нужно MD5-хэш записать в исполняемый файл.
Затем сама программа должна рассчитывать свой хэш и
сверять с эталонным. На форуме полно тем со
сверкой контрольных сумм, но пока полной ясности,
как это сделать у меня нет.
Буду благодарен любой помощи.
...
Рейтинг: 0 / 0
11.08.2017, 08:08
    #39503793
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Допиши в конец EXE, а при старте считай без этой приписки и сравнивай с ней.
...
Рейтинг: 0 / 0
11.08.2017, 13:50
    #39504066
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
не проще использовать электронно-цифровую подпись? подписываем файл, в программе проверяем подпись, если файл изменить, подпись анулируется.
+ подпись дает массу других плюсов
...
Рейтинг: 0 / 0
11.08.2017, 13:53
    #39504073
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
...
Рейтинг: 0 / 0
11.08.2017, 18:30
    #39504246
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Dimitry Sibiryakov,

так себе пример, в реальном бою не очень применим.
а на деле, если нужно внутренняя проверка, то лучше в Build Events через signtool.exe подписывать файл при каждой сборке и будет счастье
...
Рейтинг: 0 / 0
12.08.2017, 09:54
    #39504335
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Roman Mejtesне проще использовать электронно-цифровую подпись? подписываем файл, в программе проверяем подпись, если файл изменить, подпись анулируется.
+ подпись дает массу других плюсов
ЭЦП делать не проще т.к. усложняется протокол. Требуется генерация сертификатов и введение
в обязательство их куда-то передавать и обновлять.

Автор в настоящий момент делает хеш MD5. Это простейшая проверка целостности.
...
Рейтинг: 0 / 0
13.08.2017, 00:56
    #39504501
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
maytonRoman Mejtesне проще использовать электронно-цифровую подпись? подписываем файл, в программе проверяем подпись, если файл изменить, подпись анулируется.
+ подпись дает массу других плюсов
ЭЦП делать не проще т.к. усложняется протокол. Требуется генерация сертификатов и введение
в обязательство их куда-то передавать и обновлять.

Автор в настоящий момент делает хеш MD5. Это простейшая проверка целостности.
шта? куда и что передавать? вам надо проверять целостность exe файла программы, которые вы делайте или я не правильно понял? если да, то куда и зачем, и что вы передаете?
у вас будет на компе открытый и закрытый ключ. когда подписывайте файл, открытая подпись будет уже в файле и при копировании\передаче или что угодно, передаваться вместе с файлом, как в любом другом подписанном исполняемом файле.
...
Рейтинг: 0 / 0
13.08.2017, 01:28
    #39504505
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Автор пишет

Мне нужно MD5-хэш записать в исполняемый файл.
Затем сама программа должна рассчитывать свой хэш и
сверять с эталонным.
Это все что у нас есть. Вы предлагаете другую постановку.
Я изначально не имею ничего против ЭЦП но предупреждаю
о ненужном безосновательном (пока) усложнении изначально
простой постановки.
...
Рейтинг: 0 / 0
13.08.2017, 13:40
    #39504563
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Вообще-то в исполняемом файле и без того есть crc, но глупая винда его не проверяет.
...
Рейтинг: 0 / 0
14.08.2017, 10:14
    #39504801
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Dimitry SibiryakovВообще-то в исполняемом файле и без того есть crc, но глупая винда его не проверяет.
Смысл его виндовсом проверять? CRC и так постоянно проверяется: при чтении сектора с HDD, при передаче по сети и т.д.

Эта лишняя проверка ничего не изменит с точки зрения отловить изменение файла в результате какого-то технического сбоя.

Если использовать как примитивную защиту от изменения, то виндовс тут тоже не помощник, т.к. если бы он проверял, то все бы об этом знали и после изменения просто пересчитали бы CRC.
...
Рейтинг: 0 / 0
14.08.2017, 12:06
    #39504879
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Dima T,

лол :) при передачи СRC используется для валидации переданного "сегмента" данных.
Что принимающая сторона могла убедиться, что полученные данные передались без ошибок.
Какое это имеет отношение к контрольной сумме файла?
Вообще все эти конрольные суммы полнейшае ерунда, а не защита. Защита от дурака, не более того.
...
Рейтинг: 0 / 0
14.08.2017, 12:19
    #39504892
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Roman MejtesDima T,

лол :) при передачи СRC используется для валидации переданного "сегмента" данных.
Что принимающая сторона могла убедиться, что полученные данные передались без ошибок.
Какое это имеет отношение к контрольной сумме файла?
Если все сегменты файла переданы с проверкой валидности, то каким образом файл может невалидным оказаться на принимающей стороне?
...
Рейтинг: 0 / 0
14.08.2017, 16:14
    #39505070
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Dima T,

Проверка в TCP\IP стеке осуществляется толко для TCP протокол, а для UDP ни каких проверок нет. По этому при передачи по сети, всё зависит от транспортного протокола.
и как показывает практика, может, дерьмо случается :) TCP протокол, это только 1 из уровней ОСИ.
данные могут быть повреждены при сохранении или в буфере или где угодно еще
...
Рейтинг: 0 / 0
14.08.2017, 16:22
    #39505077
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка хэша в исполняемом файле.
Roman MejtesПроверка в TCP\IP стеке осуществляется толко для TCP протокол, а для UDP ни каких проверок нетНет гарантий доставки пакета, но есть сборка фрагментов и проверка контрольной суммы доставленного пакета. Хотя, можно установить поле контрольной суммы в специальное значение (ноль), означающее "не вычислялась".
Но есть UDP-Lite , который позволяет принять фрагменты "битого" пакета.
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Проверка хэша в исполняемом файле. / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]