Comunicación segura entre el servidor y el cliente [duplicado]

-1

Estoy escribiendo un software de seguridad y no quiero que nadie pueda para interceptar los datos a medida que se pasan del cliente- > server, y server- > client.

La mejor manera de hacerlo es a través de HTTPS a través de SSL. Sin embargo, he leído que no puede confiar en HTTPS, ya que las Autoridades de Certificación pueden ser pirateadas o tomadas por los gobiernos.

También he leído que casi siempre es una mala idea, y contraproducente para hacer algún tipo de criptografía Javascript en los datos antes de enviarlos.

Entonces, ¿cómo paso de forma segura los datos entre el servidor y el cliente?

    
pregunta Nathan 05.02.2014 - 15:16
fuente

4 respuestas

1

A menos que no tenga un límite de protocolo (como http para la navegación web o similar).

Le sugeriré que use las bibliotecas ZeroMQ para utilizar la comunicación de socket con el cifrado habilitado. No solo asegurará su transferencia, sino que también aumentará la velocidad utilizando su patrón de comunicación de forma inteligente para sus requisitos.

Hay un artículo de Pieter (creador de ZeroMQ) sobre el uso de CurveCP , una criptografía de curva elíptica de alta velocidad de alta seguridad para proteger la comunicación a través de la transacción de socket ZeroMQ.

    
respondido por el AbhishekKr 05.02.2014 - 02:33
fuente
1

Puede superar mucho de eso si tiene una aplicación del lado del cliente real e inspeccionar el certificado utilizado por el servidor para asegurarse de que coincida con un certificado bueno conocido. Puede crear su propio certificado raíz, usarlo para autofirmar su certificado y luego validar que usted es el CA en su cliente. De esta manera, solo usted es responsable de mantener segura su clave privada.

    
respondido por el AJ Henderson 05.02.2014 - 15:30
fuente
1

Debe hacer una distinción entre SSL / TLS y la infraestructura de la autoridad de certificación basada en x509 utilizada en combinación con SSL / TLS en Internet.

Si bien las agencias gubernamentales que comprometen a las autoridades de certificación son definitivamente un riesgo plausible, esto de ninguna manera implica que SSL / TLS esté dañado. Si controla tanto el cliente como el servidor, es muy fácil configurar su propia autoridad de certificación, generar y firmar certificados usted mismo. Asegúrate de usar una suite de cifrado que permita secreto hacia adelante perfecto .

    
respondido por el Ayrx 05.02.2014 - 15:38
fuente
0

Terry tiene razón. TLS es (IMHO) la tecnología más efectiva que existe para asegurar las comunicaciones a través de Internet. No requiere el uso del marco de confianza existente. Incluso si solo está considerando el marco de confianza como el problema que necesita abordar aquí y está feliz de quedarse con TLS, no tenemos suficiente información acerca de cómo funciona su aplicación, cómo se distribuye, configura, instala, mantiene y usa. para hacer cualquier recomendación sobre cómo debe resolver sus problemas.

    
respondido por el symcbean 06.02.2014 - 15:16
fuente

Lea otras preguntas en las etiquetas