Мы находимся в процессе написания собственного приложения для Windows (MFC), которое будет загружать некоторые данные в наше веб-приложение. Приложение Windows позволит пользователю войти в систему, после чего оно будет периодически загружать некоторые данные в наше веб-приложение. Загрузка будет выполняться через простой HTTP POST в наше веб-приложение. Меня беспокоит, как мы можем гарантировать, что загрузка действительно произошла из нашего приложения, а не из завитка или чего-то в этом роде. Я предполагаю, что мы смотрим здесь на какое-то шифрование с открытым/закрытым ключом. Но я не уверен, что мы можем как-то просто встроить открытый ключ в исполняемый файл нашего приложения win и покончить с этим. Или этот открытый ключ будет слишком легко извлечь и использовать вне нашего приложения?
В любом случае, мы строим обе стороны (клиент и сервер), так что возможен практически любой вариант, но он должен работать через HTTP(S). Тем не менее, мы не контролируем среду выполнения приложения win (клиент), плюс пользователь, который запускает приложение в своей системе, является единственным, кто может что-то выиграть, играя в систему.