RSA / ECB / OAEPWithSHA-256AndMGF1 de Java equivalente en Node.js

0

El descifrado de datos se ejecutará en JAVA usando el algoritmo RSA/ECB/OAEPWithSHA-256AndMGF1Padding . Así que tengo que cifrar los datos con una clave pública usando el algoritmo equivalente a RSA/ECB/OAEPWithSHA-256AndMGF1Padding en node.js .

Probé con crypto.publicEncrypt(key, buffer) que usa crypto.constants.RSA_PKCS1_OAEP_PADDING que no es similar al algoritmo anterior. Así que necesito un algoritmo equivalente a "RSA / ECB / OAEPWithSHA-256AndMGF1Padding" o cómo lograr el mismo en node.js

    
pregunta tim 18.12.2018 - 15:10
fuente

1 respuesta

-1

En primer lugar, no debe utilizar el cifrado en modo "ECB", porque:

  1. ECB es un modo de cifrado de bloque, RSA no es un algoritmo basado en ese modo de operación.
  2. Si usa un algoritmo basado en ese modo de operación (por ejemplo, AES), no debe usar ECB, ya que no tiene IV (Vector de inicialización), por lo que es inseguro y un analizador de cifrado podría romper el cifrado. . Podría usar CBC, tiene IV o GCM, si desea compartir información confidencial a sistemas externos y evitar el relleno de Oracle. Te recomiendo visitar el siguiente enlace:

MSC61- J. No utilice algoritmos criptográficos débiles o débiles

Entonces, en este caso, solo necesita usar OAEP para el cifrado RSA, porque es un esquema de relleno y ayuda a prevenir el Relleno de Oracle para algoritmos asimétricos, luego cambie su código para: RSA/None/OAEPWithSHA-256AndMGF1Padding . Tal vez, podría obtener compatibilidad con Node.js. Además, te recomiendo visitar el sitio web oficial:

Guía de referencia JCA

Espero que esta información te ayude.

Buena suerte.

    
respondido por el hmrojas.p 18.12.2018 - 17:39
fuente

Lea otras preguntas en las etiquetas