Безопасная подпись DSA

Может кто-нибудь успокоит меня и посмотрит, проверит ли эта установка, что файл пришел от меня. Идея того, насколько это безопасно, была бы отличной, и любые потенциальные векторы атаки.

  1. Создайте открытый и закрытый ключи с помощью DSACryptoServiceProvider.
  2. Добавить открытый ключ в качестве ресурса приложения
  3. Создать обновление
  4. Получить dsa-хэш обновления с помощью закрытого ключа
  5. Отправить хэш и обновление в приложение (предполагается, что они могут быть перехвачены/изменены)
  6. Проверить хэш исправить с помощью открытого ключа.
  7. Если проверено, примените обновление

Обновление представляет собой исполняемый файл и будет выполнено, поэтому я хочу убедиться, что оно не будет выполнено, если кто-то заменит его или подделает его.

РЕДАКТИРОВАТЬ: Обновлен пункт 6, так как открытый ключ на самом деле не генерирует хэш, а только проверяет его. Я думаю, что именно в этой части я борюсь с безопасностью.

9
задан Oli 15 May 2012 в 03:04
поделиться