Безопасная коммуникация между django сервером и приложением для iPhone

Aerith (Swing + OpenGL) Это довольно экспериментально все же.

9
задан Andres 13 October 2009 в 04:45
поделиться

3 ответа

Использование xml-rpc или json-rpc - всего лишь средство для инкапсуляции ваших данных в форму, которую легко транспортировать. Ваше приложение для iPhone может преобразовывать данные Objective C, используя один из этих форматов, а ваше серверное приложение Django может преобразовывать данные обратно в объекты Python.

Ни один из них не имеет ничего общего с безопасностью.

Создание соединения HTTPS (SSL) шифрует всю связь между клиентом (iPhone) и сервером (Django). Вам нужно будет получить сертификат для серверной части. Это указывает клиенту, что сервер является тем, кем он себя называет. Следующее ваше исследование на этом пути должно быть посвящено настройке lighttpd для обработки SSL-трафика. Как только lighttpd согласовывает SSL-соединение, ваше приложение Django будет работать так же, как и с незащищенным трафиком.

Это ваш лучший выбор.

Если по какой-либо причине вы не хотите использовать SSL, вы можете найти надежные библиотеки шифрования для обоих концов связи. Приложение для iPhone могло шифровать данные, отправлять их через HTTP-соединение, а приложение Django могло их расшифровать. Например, библиотека Python pycrypto реализует надежные шифры шифрования, такие как AES и Blowfish . Возможно, вам удастся найти реализацию одного из этих шифров, написанного на Objective C.

Вы заметили, что это становится все более сложным?

Используйте SSL. Так обеспечивается безопасность связи на основе HTTP.

отправьте его через HTTP-соединение, и приложение Django сможет его расшифровать. Например, библиотека Python pycrypto реализует надежные шифры шифрования, такие как AES и Blowfish . Возможно, вам удастся найти реализацию одного из этих шифров, написанного на Objective C.

Вы заметили, что это становится все более сложным?

Используйте SSL. Так обеспечивается безопасность связи на основе HTTP.

отправьте его через HTTP-соединение, и приложение Django сможет его расшифровать. Например, библиотека Python pycrypto реализует надежные шифры шифрования, такие как AES и Blowfish . Возможно, вам удастся найти реализацию одного из этих шифров, написанного на Objective C.

Вы заметили, что это становится все более сложным?

Используйте SSL. Так обеспечивается безопасность связи на основе HTTP.

4
ответ дан 4 December 2019 в 23:40
поделиться

Хм, похоже, это может быть то, что вам нужно, вы это видели?

Настройка SSL для Lighttpd / Django

Если я правильно прочитал, эта настройка позволяет ваш сервер для ответа на запросы https и http (?) Затем, если все ваше приложение не будет поддерживать https, есть это SSL Middleware , которое поможет настроить некоторые пути как ssl, а некоторые нет.

1
ответ дан 4 December 2019 в 23:40
поделиться

Если вы используете https (SSL) на стороне сервера, не имеет значения, используете ли вы XML-RPC или JSON-RPC. Все передаваемые вами данные будут зашифрованы и защищены.

Я могу говорить только из нашего приложения Rails и nginx. Я купил SSL-сертификат у GoDaddy (очень дешевый), и nginx настроен для шифрования контента (Rails сам этого не делает) на лету, когда он его отправляет. На iPhone ASIHTTPRequest будет отвечать за расшифровку данных. Все остальные уровни не должны беспокоиться о шифровании, вы можете отправлять все, что захотите.

Вы также можете использовать самозаверяющий сертификат. Мы решили использовать GoDaddy, так как мы также используем сертификат SSL для обычных браузеров, и они показывают пользователю предупреждающее сообщение, если они сталкиваются с самозаверяющим сертификатом, что, очевидно, отпугивает людей.

1
ответ дан 4 December 2019 в 23:40
поделиться
Другие вопросы по тегам:

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