Usando ECC como RSA, para Encriptar / Descifrar

1

¿Hay alguna forma de implementar el cifrado / descifrado utilizando ECC, como lo hace RSA? Por ejemplo, digamos que algún usuario desea enviar un mensaje que contenga una clave simétrica al usuario X . Luego, en RSA, podría simplemente cifrar la clave simétrica usando la clave pública de X , y solo X puede descifrar usando su clave privada. En mi aplicación particular, es importante que el receptor no conozca la clave pública del remitente.

Sin embargo, en ECC (al menos usando OpenSSL), solo he visto soporte para firmar y DH.

He investigado un poco sobre el cifrado de ElGamal, pero creo que leí que el mensaje cifrado tiene un tamaño doble. Me gustaría usar ECC de 256 bits para cifrar un texto plano de 256 bits a un texto cifrado de 256 bits.

Gracias de antemano a cualquiera que pueda ayudar.

    
pregunta tomKPZ 19.07.2014 - 22:13
fuente

1 respuesta

4

ECDH es suficiente: una vez que haya realizado el intercambio de claves, puede utilizar la clave resultante con un algoritmo de cifrado simétrico. Esto se denomina cifrado híbrido y es deseable de todos modos, incluso con RSA, ya que permite evitar la limitación de tamaño del cifrado RSA (RSA-2048 no puede cifrar más de 245 bytes) y permite la protección de integridad adicional contra atacantes activos (si el mecanismo de cifrado simétrico incluye un MAC, à la GCM ).

Tal construcción incluso se ha estandarizado bajo el nombre ECIES (para "Esquema de cifrado integrado de curva elíptica").

Dado que el cifrado asimétrico utiliza solo la clave pública y, por lo tanto, cualquiera puede hacerlo, no debe ser determinista; de lo contrario, permite a los atacantes hacer una búsqueda exhaustiva en el texto plano. Por lo tanto, un aumento de tamaño es bastante inevitable. También necesita un aumento de tamaño para la protección de integridad contra los atacantes activos. Por lo tanto, cifrar un texto plano de 256 bits como un texto cifrado de 256 bits parece ser un objetivo difícil de alcanzar.

    
respondido por el Tom Leek 20.07.2014 - 01:21
fuente

Lea otras preguntas en las etiquetas