Llegamos a ustedes gracias a:



Noticias

Las propuestas del OpenJDK reforzarían la integridad y el cifrado de Java

[26/04/2023] La integridad del código y de los datos y el soporte de encriptación en Java recibirían un impulso de dos propuestas diferentes que flotan en la comunidad Java de código abierto. Una de ellas reforzaría la encapsulación de las API de Java, y la otra ofrecería una API para el mecanismo de encapsulación de claves, una técnica de cifrado que promete ofrecer protección contra las computadoras cuánticos.

Un borrador de Java Enhancement Proposal (JEP) para la integridad y la encapsulación fuerte, publicado en openjdk.org, pretende restringir las API para evitar que rompan la encapsulación fuerte, sin dejar de dar cabida a casos de uso que necesiten operar más allá de los límites de la encapsulación. La encapsulación fuerte es una de las características de la plataforma Java que garantiza por defecto la integridad del código y los datos, señala la JEP. Sin embargo, algunas API pueden eludirla, lo que provoca problemas de mantenimiento y rendimiento.

[Reciba lo último de CIO Perú suscribiéndose a nuestro newsletter semanal]

La propuesta, que se incorporaría a la edición estándar de Java, cita los siguientes objetivos:

  • Permitir a Java mantener invariantes (condiciones que siempre se mantienen) de su propio funcionamiento, así como el de las aplicaciones Java, necesarias para el mantenimiento, la seguridad y el rendimiento.
  • Aclarar las API de Java y de otros fabricantes que pueden romper la encapsulación fuerte.
  • Diferenciar los casos de uso en los que romper la encapsulación es conveniente de los casos de uso en los que desactivar la encapsulación es esencial.

El objetivo de la propuesta no es proteger contra situaciones en las que los usuarios pongan en peligro la integridad de la plataforma Java manipulando el sistema de archivos, el sistema operativo o el hardware subyacente. Para proteger la plataforma Java y las aplicaciones Java deben utilizarse siempre mecanismos de integridad adecuados en el sistema operativo.

El otro proyecto de JEP introduciría una API de mecanismo de encapsulación de claves (KEM, por sus siglas en inglés). KEM es una técnica criptográfica moderna diseñada para cifrar claves simétricas utilizando criptografía asimétrica o de clave pública. Se diferencia de la técnica más tradicional que cifra una clave simétrica generada aleatoriamente con una clave pública. Según el PEC, el mecanismo KEM es más sencillo y también resuelve varios inconvenientes del enfoque tradicional.

También pensada para Java estándar, la propuesta de API KEM pretende permitir que las aplicaciones hagan uso de KEM y algoritmos KEM como el Mecanismo de Encapsulación de Clave RSA (RSA-KEM), el Esquema de Cifrado de Integración de Curva Elíptica (ECIES) y los algoritmos KEM candidatos para el proceso de normalización de Criptografía Post-Cuántica (PQC) del Instituto Nacional de Normas y Tecnología (NIST). El plan es permitir el uso de KEM en protocolos de nivel superior, como el de seguridad de la capa de transporte (TLS). Se permitiría a los implementadores desarrollar proveedores de seguridad que apliquen algoritmos KEM desarrollados en Java o código nativo.

La versión actual de Java estándar es Java Development Kit (JDK) 20, que llegó el mes pasado. Su sucesor, JDK 21, está previsto para septiembre, y el conjunto de características se congelará el 8 de junio.

Casos de éxito

Más »