Я внедряю приложение, в котором у меня нет системы, требующей имя пользователя и пароль. Что мне нужно, так это имя и номер телефона.
Сценарий таков:
1) пользователь впервые открывает приложение
2) приложение делает запрос на мой сервер и получает уникальный UserKey
3) с этого момента один любой запрос приложения к моей REST-службе также имеет подпись. Подпись на самом деле является SHA (UserKey: данные, указанные в запросе Base64Encoded)
4) Сервер также выполняет тот же хэш для проверки подписи
Почему я не использую SSH:
- не желает платить за сертификат
- Мне не нужно отправлять конфиденциальные данные, такие как пароли, поэтому я не вижу выгоды от их использования
- Мне просто нужен простой способ вызова собственных служб WCF REST из собственного приложения
Я понимаю, что на шаге 2 возникает поток безопасности, когда UserKey вводится в виде открытого текста, но это происходит только один раз, когда приложение впервые открывается. Как вы думаете, насколько это опасно?
Что бы вы порекомендовали? Есть ли какая-нибудь библиотека .NET, которая может мне помочь?