Мне нужно установить двухстороннее SSL-соединение HTTPS от моего приложения iPhone к серверу клиента. Однако я не вижу никакого безопасного способа доставки сертификатов на стороне клиента в приложение (это приложение для электронного банкинга, поэтому безопасность действительно является проблемой). Из того, что я нашел до сих пор, единственный способ, которым приложение могло бы получить доступ к сертификату, — это предоставить его предварительно в комплекте с самим приложением или предоставить URL-адрес, с которого его можно было бы получить (Приложение для iPhone с клиентскими сертификатами SSL).
Дело в том, что ни один из этих двух способов не мешает какой-либо третьей стороне получить сертификат, что, если принять его как риск, устраняет необходимость в двустороннем SSL (поскольку любой может иметь клиентский сертификат).
Весь протокол безопасности должен выглядеть следующим образом:
– HTTPS с двусторонним протоколом SSL для аутентификации приложения
– Регистрация пользователя на основе OTP (токена) (на этом шаге создается пара ключей на стороне клиента)
– SOAP/WSS XML-Signature (запросы, подписанные сгенерированными ранее ключами)
Любая идея о том, как установить первый уровень безопасности (HTTPS)?