NCache proporciona un amplio conjunto de algoritmos de cifrado estándar de la industria que son casi imposibles de descifrar. Esto garantiza que sus datos confidenciales estén bien protegidos, además de viajar por la red en forma cifrada. NCache proporciona los siguientes algoritmos de cifrado entre los que puede elegir:
Cifrado estándar de cifrado avanzado (AES)
NCache proporciona compatibilidad con el algoritmo de cifrado AES, que es una parte oficial del Estándar federal de procesamiento de información (FIPS). El algoritmo AES procesa fragmentos de datos de 128 bits, utilizando claves de cifrado de longitudes de 128, 192 y 256 bits. Los tipos admitidos de AES se enumeran a continuación.
Puede leer el documento de especificación RFC para AES y AES-FIPS en la Grupo de trabajo de ingeniería de Internet (IETF) sitio web.
- AES-128
- AES-192
- AES-256
- AES-FIPS 128
- AES-FIPS 192
- AES-FIPS 256
Cifrado Triple-DES (3DES)
NCache también brinda soporte para el protocolo de cifrado 3DES, que procesa longitudes de clave de datos de 128 y 192 bits. Puede leer el documento de especificación RFC para 3DES en el Grupo de trabajo de ingeniería de Internet (IETF) sitio web. Los siguientes algoritmos son compatibles con NCache cifrado:
- 3DES-128
- 3DES-192
¿Dónde ocurre el cifrado?
NCache el cifrado y descifrado de datos se produce dentro del NCache proceso de solicitud del cliente. Esto significa que todos los datos que viajan por la red entre su aplicación y el clúster de caché ya están encriptados. Del mismo modo, solo los datos cifrados se almacenan en el almacén de caché.
Conexión Cliente-Servidor
Cuando habilita el cifrado en un clúster de caché, proporciona una clave de cifrado junto con el proveedor del algoritmo de cifrado. Esta clave se guarda en cada servidor de caché de forma encriptada. Cuando un cliente se conecta con éxito a la memoria caché habilitada para el cifrado por primera vez, la clave de cifrado y el algoritmo de cifrado seleccionado se envían automáticamente al cliente de manera segura para que se utilicen en la memoria para cifrar/descifrar futuras solicitudes.
Una vez que se realizan las solicitudes al caché, NCache El cliente comienza a cifrar automáticamente sus objetos antes de enviarlos al caché. Del mismo modo, descifra automáticamente los objetos extraídos de la memoria caché antes de enviarlos a su aplicación.
La Figura 1 muestra este comportamiento en 2 simples pasos:
NCache Detalles NCache Documentos de cifrado NCache Seguridad
Datos cifrados en tránsito y en reposo
Si está manejando datos confidenciales en NCache, puede estar seguro de que los datos están encriptados y protegidos contra accesos no deseados en todas las etapas de la vida de los datos.
Datos del cliente al servidor
Una vez que la clave cifrada reside en el extremo del cliente en la memoria, todos los datos que deben enviarse a la memoria caché se cifran con la clave. Por lo general, los datos primero se serializan, cifran y comprimen (si la compresión está habilitada). El cifrado de datos en el extremo del cliente antes de transmitirse significa que los datos se cifran en tránsito. Esto garantiza que cualquier persona que escuche a escondidas esta conexión no podrá obtener ningún dato confidencial.
Los datos en reposo
Una vez que los datos se agregan al caché, los datos se almacenan en su forma encriptada para que estén seguros incluso al final del caché.
Datos dentro de los nodos del clúster
Dentro del clúster de caché, los datos se cifran durante la replicación o la transferencia de estado de servidor a servidor. Por lo tanto, todavía está encriptado en tránsito.
La figura 2 muestra cómo se cifran los datos del cliente al servidor:
Caché de cliente
A caché del cliente es un caché local que reside en el mismo cuadro donde se ejecuta la aplicación. Esta memoria caché del cliente se sincroniza con la memoria caché en clúster remota para mejorar el rendimiento de las operaciones de lectura. En el caso de la memoria caché del cliente, el cifrado no se configura explícitamente en la memoria caché del cliente. Si la caché agrupada (caché de nivel L2) ha habilitado el cifrado, la caché del cliente también está cifrada. Si no hay cifrado habilitado en L2, los datos se agregarán a la memoria caché del cliente sin cifrado.
API de cliente
El comportamiento de cifrado/descifrado de NCache API de cliente se maneja automáticamente al tiempo que garantiza que todos los datos en tránsito se cifren y solo se descifran cuando es necesario procesarlos.
- Conexión del cliente: Cuando el cliente se conecta por primera vez, obtiene la clave de cifrado y el algoritmo especificado de forma cifrada. Esto se utiliza para cifrar/descifrar datos cuando sea necesario.
- Adición de datos a la caché: Para las API que agregan datos al caché como Añada/recuadro etc., los datos se cifran en el extremo del cliente antes de viajar por la red. Al final del caché, los datos se almacenan en forma encriptada.
- Obtención de datos de la memoria caché: Para las API que obtienen datos del caché como Recibe/Obtener a granel/Cargador/Consultas etc., los datos están en el caché en forma cifrada, viajan al cliente en forma cifrada y los datos se descifran en el extremo del cliente.
- Eventos: Para los eventos que requieren el envío de datos/metadatos al cliente donde los datos del servidor están cifrados, los datos se cifran en tránsito y se descifran en el extremo del cliente.
Metadatos de elementos de caché
Los elementos de caché se agregan con metadatos como Grupos, etiquetas, y Etiquetas con nombre. Estos incluyen información adicional para el elemento de caché que define cómo se indexan los datos.
Al agregar los elementos de la memoria caché a la memoria caché, los datos junto con los metadatos se cifran en el extremo del cliente. Los datos y metadatos viajan por la red de forma encriptada. Sin embargo, en el extremo del servidor, los datos se almacenan en forma cifrada, pero los metadatos deben descifrarse porque están indexados en los nodos del servidor.
NCache Detalles NCache Documentos de la API del cliente NCache Seguridad
Estructuras de datos en caché
NCache proporciona apoyo para estructuras de datos. A medida que se agregan datos a la memoria caché, se cifran antes de agregarse a la estructura de datos. De manera similar, cuando la estructura de datos se recupera del caché, los datos se descifran en el extremo del cliente y se pueden usar según sea necesario.
Características del lado del servidor
Al igual que con las funciones del lado del cliente, el mecanismo de cifrado/descifrado para NCache características del lado del servidor se maneja automáticamente según la naturaleza de la función:
- Lectura completa: Independientemente de cómo y desde dónde se carguen los datos, si el cifrado está habilitado en la memoria caché, los datos se agregarán a la memoria caché después de cifrarse, serializarse y comprimirse (si la compresión está habilitada).
- Escritura directa: Los datos en la memoria caché están encriptados, pero para que los datos de envío se conserven en la fuente de escritura directa, deben descifrarse para que se almacenen tal como están.
- Cargador de caché: dado que Loader usa la API pública, si el cifrado está habilitado en la memoria caché, los datos que se cargan se almacenarán automáticamente en forma cifrada en la memoria caché.
- Procesador de entrada: Si se invoca el procesador de entrada para procesar un objeto, el objeto se descifra en el servidor ya que todo el procesamiento tiene lugar en el extremo del servidor.
Habilitar el cifrado
Puede habilitar el cifrado a través de NCache Herramientas de gestión sin ningún esfuerzo de programación por tu parte. El cifrado debe habilitarse al iniciar el caché para que todos los datos se cifren de manera homogénea. Puede obtener más información sobre esto en nuestros documentos en Configuración del cifrado.
Funciones de seguridad adicionales en NCache
Aparte del cifrado, NCache también proporciona comunicación segura a través de SSL / TLS 1.2. Además, incluso garantiza que su entorno de caché sea seguro en la API de caché y el nivel de administración de nodos al proporcionar Listas de control de acceso. Puedes leer más sobre estas características aquí:
BLOG: Configuración SSL/TLS en NCache Made Simple
BLOG: Exploración de la seguridad del entorno de caché en NCache
Conclusión
No cabe duda de que los datos son la nueva moneda y la ciberseguridad es oro. Por lo tanto, NCache reconoce la necesidad de proteger sus datos y proporciona una gama de funciones de seguridad para garantizar el cumplimiento de los algoritmos más recientes. Sin embargo, dado que el cifrado/descifrado es una tarea que requiere un uso intensivo de la CPU, debe utilizarse cuando sea necesario de forma explícita, ya que afecta al rendimiento.