У меня есть ситуация, когда мне нужно приложение Windows Phone 8 для безопасного общения с моим PHP-сервером. Моя первоначальная мысль заключалась в использовании SSL, и я получил весь код на стороне сервера, работающий с самозаверяющим сертификатом, и я просто взаимодействовал с ним через мой браузер, но когда я начал кодировать приложение WP, я обнаружил, что самозаверяющие сертификаты не поддерживаются Windows Телефонное приложение SSL, и я не могу позволить себе заплатить за соответствующий сертификат для этого проекта.
План, который я придумал, заключается в использовании своего рода туннеля шифрования PHP, позволяющего интерфейсу приложения со страницами. Я имею в виду, что запрос будет « https://sub.mysite.com/mypage.php?param=value » теперь, что я делаю, у меня есть страница crypt.php, и я запрашиваю « http: // sub.mysite.com?crypt.php?request=encryptedrequest "где" encryptedrequest "равно зашифрованной версии RSA" mypage.php? param = value ". Затем страница crypt должна расшифровать запрос, запросить его локально, зашифровать результат, отозванный на другой странице, а затем отправить зашифрованный результат обратно в приложение, которое затем может его расшифровать.
Получение информации для использования RSA на PHP и C # не должно быть проблемой, и я могу упаковать приложение с открытым ключом для сервера и наоборот, так что часть не должна быть проблемой.
К сожалению, хотя я очень неопытный разработчик PHP и понятия не имею, возможно ли запросить другую страницу PHP на локальном хосте с PHP-страницы, а затем захватить эхо-результат, я также изо всех сил пытаюсь найти любую информацию об этом. Любая помощь будет принята с благодарностью.
PS. Если у вас есть информация о RSA encrytpion на C # и / или PHP, это также поможет …
EDIT: Хорошо. У меня теперь реализовано это с помощью http://phpseclib.sourceforge.net, но производительность при использовании этого вместо собственного SSL просто смехотворна, нет ли какой-либо библиотеки, которую я могу использовать для криптографии более естественным образом на моем Linux-сервере?