jov
@jov

Идентификация программы-клиента

Доброго времени суток. Сейчас проектирую клиент-серверное приложение по сбору данных с клиентских машин. Клиент написан на си, open source, закачка бинарной сборки возможна из личного кабинета на сайте. Для идентификации программы-клиента планируется использовать некий токен — рандомное число, порядка 10 байт, которое внедряется в код программы непосредственно перед заливкой на сайт. То-есть факт закачки данного экземпляра привязывает токен к аккаунту клиента. Сама по себе клиентская часть бесполезна, но зато при этой схеме идентификации есть возможность осуществления банального саботажа — путём запуска экземпляра программы, с подобранным token'ом, на хосте не имеющего отношения к заказчику, при этом она будет слать свою информацию, в итоге на сервере вместо полезной статистики получится информационный мусор. Как вариант, защиту можно усилить вторым токеном передаваемом на этапе инсталяции клиентской части, например mac-адресом. Но что-то мне в этой схеме не нравится, что-то на интуитивном уровне — просто ещё не осознал какие грабли из этого могут получится. Пожалуйста, раскритикуйте данную схему идентификации.
  • Вопрос задан
  • 2847 просмотров
Пригласить эксперта
Ответы на вопрос 3
Wott
@Wott
навскидку: я бы новый токен при первой сессии привязывал к ip адресу, а несовпадение пары токен-ip отфильтровывал и как-то с этим разбирался
Ответ написан
foxmuldercp
@foxmuldercp
Системный администратор, программист, фотограф
mac адрес — плохая идея. скорее уже ID материнской платы + какой-нить хеш от данных биоса/ серийный номер процессора…
Ответ написан
@ChemAli
А пользователи заинтересованы в саботаже?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы