¿Por qué falla mi conexión openssl con el cifrado de curva elíptica ECDH-RSA-AES128-SHA?

5

Estoy usando el servidor de ejemplo openssl y el cliente con cifrado específico en ubuntu 14.10 pc. La versión de openssl es 1.0.1.

Cuando uso el cifrado RC4-SHA en ambos lados, la conexión se establece correctamente. Sin embargo, cuando uso ECDH-RSA-AES128-SHA o algún otro cifrado de curva elíptica, obtengo el siguiente error:

3074328252:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:s23_clnt.c:762:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 163 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE

¿Hay alguna razón específica por la que esto sucede?

¡Gracias!

    
pregunta Dimitra 28.11.2014 - 17:09
fuente

1 respuesta

9

Esto se debe a que intenta utilizar un conjunto de cifrado ECDH y no un conjunto de cifrado ECDHE .

  • ECDHE-RSA: el certificado del servidor contiene una clave pública RSA; el servidor genera sobre la marcha un nuevo par de claves Diffie-Hellman de curva elíptica y firma la parte pública que el servidor envía al cliente.
  • ECDH-RSA: el certificado del servidor ya contiene una clave pública Diffie-Hellman de curva elíptica; no se genera sobre la marcha; la Autoridad de Certificación que emitió (firmó) el certificado del servidor utilizó RSA.

Dado que el certificado de su servidor contiene una clave RSA, no puede usar ningún conjunto de cifrado "ECDH", solo conjuntos de cifrado "ECHDE". (¡Y eso está bien! Las suites de cifrado ECDHE en realidad brindan Secreto hacia adelante , lo cual es bueno tener, y las suites de cifrado de ECDH no No hagas eso.)

    
respondido por el Tom Leek 28.11.2014 - 17:19
fuente

Lea otras preguntas en las etiquetas