У меня есть соревнование, в которое люди могут войти с секретным кодом, который они обнаруживают в приложении для Android.Метод, который я выбрал, чтобы убедиться, что только люди, купившие приложение, могут участвовать в конкурсе, заключается в использовании общего секрета, закодированного (зашифрованного?) С HMAC SHA256.
Таким образом, мой секрет будет зашифрован в C вприложение для Android (используя Crypto ++, есть ли у вас какие-либо предложения по использованию библиотеки SHA? Я считаю, что Crypto ++ действительно сложно использовать).
Это всего лишь пример:
Unencrypted shared secret = "my shared secret"
Unencrypted secret code = "abcdef"
Encrypted shared secret = "dsgdfgdfgdfgfdgf"
Encrypted shared secret = "ddffgdgdf"
Итаккогда пользователь обнаруживает секретный код, он будет перенаправлен на веб-страницу (скрипт Python), а зашифрованный общий секретный ключ HMAC будет передан в качестве параметра CGI:
http://mysite/competition.py?encodedSecret=3dfdfdg343jkfjk390kl
Тогда мой питонСкрипт будет смотреть на параметр CGI и расшифровывать его, чтобы получить общий секрет (чтобы убедиться, что заявка на участие в конкурсе принадлежит пользователю, у которого есть приложение) и секретный код (чтобы узнать, выиграл ли пользователь что-либо).
Мой вопрос: Возможно ли для сценария Python (использующего модуль hashlib) расшифровать что-то, что было зашифровано в C с помощью Crypto ++?