Autenticación y seguridad del cliente

0

Al trabajar en un software de intranet, necesitaba implementar la seguridad entre el cliente y el servidor. Me gustaría saber si esta es una forma segura de hacerlo o si hay agujeros significativos.

El cliente y el servidor crean un secreto compartido mediante el intercambio de claves ECDH (secp521r1). Se negocia un nuevo secreto compartido para cada solicitud.

La clave de cifrado se genera mediante Función de derivación de clave basada en contraseña 2 (PBKDF2). Uso el secreto compartido como la contraseña, una clave previamente compartida como el salt (para permitir que solo los clientes autorizados se conecten), 100,000 iteraciones, y la función hash es SHA512.

Después de eso, los datos de solicitud se cifran con aes-128-gcm, utilizando la clave de cifrado y un IV de 12 ceros. La respuesta se encripta utilizando la misma clave. El servidor luego descarta la clave para que no pueda usarse dos veces.

¿Es esta una buena implementación? ¿Hay otras formas mejores de hacer esto? ¿Hay algo que este olvidando?

    
pregunta Arlen Beiler 03.08.2017 - 23:33
fuente

2 respuestas

1

No enrolle su propia criptografía

Ha habido múltiples ataques a SSL / TLS que han sido desarrollados por la industria en general y han sido sometidos a escrutinio y pruebas. No construyas el tuyo, detente sobre los hombros de gigantes.

Si se trata de una verificación de proyecto de intranet para ver si tiene una CA interna y obtener un certificado emitido de esto. No utilice certificados autofirmados, sino también su debilitamiento de su propia seguridad al hacerlo. Cualquiera puede emitirlos y luego administrar su tráfico de manera intermedia.

También ¿por qué no se modifica la IV? Una IV debe regenerarse cada vez que se usa.

    
respondido por el McMatty 31.01.2018 - 09:38
fuente
0

De tu pregunta parece que ya estás haciendo autenticación mutua. esa es una forma segura de establecer una confianza mutua entre un cliente y el servidor. tenga en cuenta que esto es solo una conexión de confianza, aún necesita hacer autenticación de la aplicación, reglas de firewall, RBAC (control de acceso de base de roles) e IDM (administración de identidad) además de su autenticación mutua.     

respondido por el Hugo R 04.08.2017 - 04:42
fuente

Lea otras preguntas en las etiquetas