En iOS, ¿cuál es la ventaja de OpenSSL sobre el uso de CFStream, CFNetwork, etc. para sockets seguros?

4

Ya pregunté esto en Stack Overflow, here . Me dijeron que podría encontrar respuestas aquí.

    
pregunta Plumenator 14.12.2010 - 06:39
fuente

2 respuestas

3

Dos cosas:

  • obtienes más control sobre las opciones de cifrado. Si necesita controlar o inspeccionar el intercambio de certificados de maneras no permitidas por CFNetwork, debe pasar a OpenSSL.
  • OpenSSL es multiplataforma, por lo que es posible que ya tenga un código que funcione con él.
respondido por el user185 14.12.2010 - 09:48
fuente
2

(Quizás un poco fuera de tema). No estoy seguro de iOS, pero en OSX, CFStream, CFNetwork, etc., permiten que la aplicación utilice una clave privada en el KeyChain sin tener acceso a su contenido. Por ejemplo, si tiene que autenticarse en un sitio con un certificado de cliente, es la capa del sistema operativo / llavero que tratará con la firma usando la clave privada y luego pasa el "identificador" de TLS a la aplicación.

En cierto sentido, hace que las claves sean más seguras, ya que los usuarios no necesitan confiar tanto en la aplicación: incluso si usa su clave privada cuando se lo permite, nunca podrá hacer una copia. de ella (y tal vez enviarlo a un sitio deshonesto). (Tenga en cuenta que esto depende de varias opciones de configuración, por supuesto, ya que también puede proporcionar el contenido de la clave privada a la aplicación si es necesario y el usuario lo permite).

Por lo que sé, OpenSSL no está integrado con el sistema operativo de esta manera (por lo que el proceso de la aplicación debe poder hacerse con la clave privada si quiere usarla).

    
respondido por el Bruno 13.05.2011 - 22:04
fuente

Lea otras preguntas en las etiquetas