¿Cómo proteger las comunicaciones entre un front-end web y el servidor web cuando / donde está comprometido el protocolo HTTPS?

3

Un país en Asia Central ha emitido una ley que obliga a todos los ISP a descifrar el tráfico de tránsito HTTPS y cifrarlo con un certificado especial emitido por el gobierno. Cada cliente debe instalar el certificado para poder acceder a los recursos HTTPS (simplemente no funcionarán sin esto). Al menos algunos otros países pueden seguir. No hace falta decir que esto significa que HTTPS ya no es una solución suficiente para garantizar la privacidad de los datos transmitidos entre los clientes y los servidores. ¿Cuáles son algunas ideas razonables / interesantes de cómo abordar este problema de manera práctica?

Sé de VPN y SSH, pero esto parece una solución bastante torpe: los gobiernos que bloquean HTTPS probablemente bloquearán todas las soluciones de encriptación de capa superior fácilmente reconocibles como SSH y VPN también. Por lo tanto, lo que en general me interesa es implementar una segunda capa de cifrado de extremo a extremo en el nivel de la aplicación.

Estoy trabajando en la idea de un organizador de información personal, una especie de aplicación web para almacenar mis datos personales (incluidos, entre otros, contraseñas, imágenes íntimas y datos como este) en mi servidor personal y acceder a ellos donde quiera que vaya . No hace falta decir que no quiero que nadie pueda interceptar los datos cuando viajo a un país en el que se ha implementado una política antipersonal.

    
pregunta Ivan 26.06.2016 - 16:41
fuente

2 respuestas

3
  

¿Cuáles son algunas ideas razonables / interesantes de cómo abordar este problema de manera práctica?

Cifrado GPG, con esteganografía para ocultar el hecho de que está utilizando el cifrado a simple vista.

La idea básica que necesita para evitar el compromiso obligatorio con el cifrado, es encontrar cualquier canal de datos que no esté bloqueado y usar un cifrado no comprometido sobre ese canal de datos.

Ese canal de datos podría ser, pero no limitado, a cualquiera de estos (ordenados aproximadamente por la forma en que son prácticos):

  • cualquier tipo de proxy, proxy web, VPN, SSH. Sobre puerto personalizado si es necesario.
  • teléfono fijo
  • módem de software a través del canal de voz de la red móvil
  • radio de onda corta / AM
  • teléfono satelital
  • red de malla Wi-Fi
  • cambio de paquetes a través de correo electrónico no deseado o pastebin
  • use o diseñe protocolos que puedan cambiar a otro protocolo en la misma conexión TCP
  • red de zapatillas
  • IPoAC
  • señal de humo

El cifrado realizado sobre esto es solo un cifrado no comprometido regular. Probablemente solo HTTPS, o tal vez GPG. Realmente no importa demasiado.

    
respondido por el Lie Ryan 26.06.2016 - 18:44
fuente
0

Puedes intentar crear un túnel SSH para hacer un túnel HTTPS a través de él. Supongo que esta publicación explica cómo realizar esto de una manera efectiva, de lo contrario puede encontrar muchas guías en la web que explican cómo crear un túnel SSH.

    
respondido por el mgul 26.06.2016 - 16:53
fuente

Lea otras preguntas en las etiquetas