Пользовательские URL-адреса iPhone и шифрование - PullRequest
0 голосов
/ 27 сентября 2010

Быстрый вопрос: передаются ли пользовательские URL-адреса между приложениями в iOS?Кажется, я нигде не могу найти документацию, которая может сказать мне, да или нет.Спасибо!

Ответы [ 3 ]

1 голос
/ 28 сентября 2010

Содержимое URI, которое вы передаете между приложениями, не зашифровано. Это просто бессмысленно. Полагаю, вам не нужно, чтобы стороннее приложение регистрировало ту же схему URI и получало содержимое URI, которые вы отправляете.

Система, выполняющая шифрование, будет бесполезна, поскольку ей придется снова дешифровать URI, прежде чем он будет доставлен в другое приложение. Приложения ожидают получения URI, которые они могут использовать как есть, а не что-то в зашифрованном виде. Поэтому, если система зашифрует ее, будет безопасно, пока она находится в каком-то буфере, ожидающем доставки в конечное приложение. Но никто не будет пытаться вынюхивать его из этого буфера, так как можно легко написать приложение, которое просто получает эти URI.

И шифровать их самостоятельно тоже бессмысленно. Чтобы расшифровать их, вашему приложению необходимо вставить ключ, и ничто не мешает хакеру перевернуть ваше приложение, чтобы получить ключ. И теперь ваше шифрование оказалось бесполезным. Просто не беспокойся об этом.

И если вы транспортируете эти URI по сети, просто используйте SSL. Создание собственной криптографии вместо того, чтобы полагаться на безопасные и хорошо протестированные протоколы и реализации, никогда не будет хорошей идеей.

1 голос
/ 27 апреля 2012

На самом деле вам не нужно делать это самостоятельно.

NSURL *theURL = [[NSURL alloc] 
    initWithScheme:@"http" host:@"www.wopata.com" path:@"/do?q=foo bar"];

Вернет следующий URL: http://www.wopata.com/do?q=foo%20bar

0 голосов
/ 27 сентября 2010

Я не уверен, но нет никаких причин, почему вы не можете зашифровать URL-адрес самостоятельно. То, что отправлено в ваше приложение, не обязательно должно быть действительным URL.

например.

myappuri://myreallysecret.sub.domain.com/mysecretfile.php?secretstuff=1

так же легко может быть

myappuri://kalsjdfoi2u34lnvqpw3oih/aknasldkjfo289071234ljlinmqoiweu490802

вашему приложению все равно будет отправлена ​​вторая строка, и вы можете дешифровать ее самостоятельно.

Не уверен, что ответит на ваш вопрос, но это может быть полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...