
En la computación en la nube, los algoritmos de encriptación juegan un papel esencial para brindar una comunicación segura a través de recursos conectados y distribuidos. Principalmente convierten los datos en un tipo codificado para proteger mediante el uso de «la clave», y los usuarios del transmisor solo tienen la clave para descifrar los datos.
Existen principalmente dos tipos de técnicas de cifrado de claves utilizadas en los algoritmos de seguridad actuales: cifrado de claves simétricas y cifrado de claves asimétricas. El cifrado de clave simétrica utiliza una única clave para cifrar y descifrar los datos. Por el contrario, el cifrado de clave asimétrica utiliza dos claves: una clave pública para el cifrado y una clave privada para el descifrado.
Se utilizan varias técnicas para crear una mejor seguridad de los datos en el almacenamiento en la nube y garantizar una comunicación segura. Las técnicas de cifrado convierten el mensaje o el texto sin formato en texto cifrado, y las técnicas de descifrado extraen el mensaje original o el texto sin formato en el mismo texto cifrado. En esta publicación, veremos los 10 mejores algoritmos de seguridad en la nube diseñados para proporcionar una seguridad de datos mejor y más segura en la nube.
1. Algoritmo RSA
RSA es un algoritmo de clave pública que brinda seguridad al cifrar y descifrar los datos para que solo los usuarios autorizados puedan acceder a ellos. RSA significa Ron Rivest, Adi Shamir y Len Adleman, quienes lo describieron por primera vez en 1977. Los datos se cifran y el texto cifrado se almacena en la nube. Cuando un usuario necesita los datos, el usuario realiza una solicitud al proveedor de la nube, luego autoriza al usuario y le proporciona los datos.
Los terceros pueden detectar el mal comportamiento del proveedor de servicios en la nube con cierta probabilidad solicitando pruebas para un número constante de bloques, independientemente del número total de bloques de archivos. [4]. Cada bloque de mensajes se asigna a un valor entero. El algoritmo RSA consta de clave pública y clave privada. Todos los usuarios de la nube conocen la clave pública, mientras que la clave privada solo la conoce el usuario que inicialmente posee los datos. El proveedor de servicios de la nube realiza el cifrado y el usuario de la nube/cliente de la nube realiza el descifrado. Una vez que los datos se cifran con la clave pública, se pueden descifrar con la clave privada correspondiente.
2. Algoritmo de pez globo
Uno de los algoritmos públicos más comunes proporcionados por Bruce Schneier, el algoritmo Blowfish, es un algoritmo de clave simétrica, que funciona casi como el algoritmo DES, en el que la clave es pequeña y se puede descifrar fácilmente. Sin embargo, en el algoritmo Blowfish, el tamaño de la clave es enorme y puede variar de 32 a 448 bits. Blowfish también consta de 16 rondas y puede cifrar datos que tienen varios tamaños de ocho, y si el tamaño del mensaje no es múltiplo de ocho, los bits están protegidos.
En el algoritmo Blowfish también, 64 bits de texto sin formato se separan en dos partes del mensaje con un tamaño de 32 bits de longitud. Una parte adquiere como parte izquierda del mensaje, y otra parte es la parte derecha del mensaje. La parte izquierda del mensaje es XOR con los elementos de la matriz P que crea algún valor, después de que ese valor se transmita a través de la función de transformación F. El valor iniciado desde la función de transformación se procesa nuevamente XOR con la otra mitad del mensaje, es decir , con los bits correctos, después de eso F| se llama a la función que reemplaza la mitad izquierda del mensaje y P| reemplazar el lado derecho del mensaje.
3. Intercambio de claves Diffie Hellman (DH)
Whitfield Diffie y Martin Hellman descubrieron el sustituto del algoritmo clave de Diffie Hellman. Es una técnica para intercambiar de forma segura mediante el uso de claves criptográficas en una red pública y fue la principal muestra específica de criptografía de clave pública. Permite que solo dos usuarios intercambien una clave secreta a través de una red que no es de confianza. Estos dos usuarios no necesitan ningún conocimiento previo sobre los secretos que comparten información entre ellos. Se basa en la complejidad de calcular logaritmos discretos de números primos masivos. Necesita dos números grandes, uno primo (P) y otro es (G), raíz primitiva de P.
4. Algoritmo de criptografía de curva elíptica
El algoritmo criptográfico de curva elíptica fue descubierto por Neil Koblitz (Universidad de Washington) y Victor Miller (IBM) en 1985. Es una técnica de cifrado de clave pública que depende de algoritmos discretos, que se utiliza para crear claves criptográficas eficientes, más rápidas y más pequeñas. La criptografía de clave pública (ECC) de curva elíptica es un enfoque innovador basado en la estructura algebraica de curvas elípticas sobre campos finitos con tamaño de clave bajo. El ECC trata con dos puntos (x, y), que satisface la ecuación y2 =x3 +ax+b con alguna condición (4a3 +27b2 =0) al compartir la clave secreta. Los puntos que se encuentran en la curva funcionan como una clave pública y los números aleatorios se utilizan como cifrado de clave privada. ECC se utiliza en algunos algoritmos de factorización de enteros que tienen aplicaciones en criptografía.
5. Algoritmo del estándar de cifrado de datos (DES)
El estándar de criptografía de datos (DES) es un cifrado de bloque de clave simétrica descubierto como FIPS46 en el Registro Federal en enero de 1977 por el Instituto Nacional de Estándares y Tecnología (NIST). En el sitio de encriptación, DES toma un texto sin formato de 64 bits y crea un texto sin formato de 64 bits, luego el sitio de descifrado toma un texto sin formato de 64 bits y crea un texto sin formato de 64 bits. Cada técnica de cifrado y descifrado se utiliza para la misma clave de cifrado de 56 bits. El proceso de cifrado consta de dos permutaciones (P-boxes), que solemos llamar permutación inicial y final, y dieciséis rondas de Feistel [17]. Cada ronda transmite una clave de ronda diferente de 48 bits generada a partir del cifrado de la clave de cifrado.
6. Cifrado El Gamal
El sistema de cifrado El Gamal es un algoritmo de cifrado de clave asimétrica para realizar criptografía de clave pública, que se basa en el proceso de intercambio de claves Diffie-Hellman mediante el uso de criptografía. Taher Elgamal lo ilustró en 1984. El cifrado de ElGamal está protegido en el software gratuito GNU Privacy Guard, las últimas versiones de PGP y otros criptosistemas. Se detalla el Algoritmo de Firma Digital sobre una variante del esquema de firma de ElGamal, que no debe confundirse con el cifrado de ElGamal. El cifrado de ElGamal se puede describir sobre cualquier grupo cíclico G. Su seguridad se basa en la dificultad de cierto problema en G relacionado con el cálculo de logaritmos discretos.
7. Estándar de cifrado avanzado (AES)
Advanced Encryption Standard es el nuevo cifrado sugerido por NIST para reemplazar DES. AES comprende tres bloques de cifrado: AES-128, AES-192 y AES-256. AES-128 usa una longitud de clave de 128 bits para cifrar y descifrar un bloque de mensajes, mientras que AES-192 usa una longitud de clave de 192 bits y AES-256 una longitud de clave de 256 bits para cifrar y descifrar mensajes. Cada cifrado cifra y descifra datos en bloques de 128 bits, utilizando claves criptográficas de 128, 192 y 256 bits.
Los cifrados simétricos, también conocidos como clave secreta, usan la misma clave para cifrar y descifrar, por lo que tanto el remitente como el receptor deben conocer la misma clave secreta y usarla. La información ultrasecreta requiere longitudes de clave de 192 o 256 bits. Hay diez rondas disponibles para claves de 128 bits, 12 rondas para claves de 192 bits y 14 rondas para una clave de 256 bits. Una ronda consta de varios pasos de procesamiento que implican la sustitución, la transposición y la mezcla de la entrada de texto sin formato para transformarla en la salida de texto cifrado final.
8. Algoritmo de firma digital (DSA)
El algoritmo de firma digital (DSA) se refiere a un estándar de firma digital. El Instituto Nacional de Estándares y Tecnología (NIST) lo introdujo en 1991 como un mejor método para crear firmas digitales. Junto con RSA, DSA se considera uno de los algoritmos preferidos en la actualidad para firmas digitales. DSA no cifra los resúmenes de mensajes con una clave privada ni descifra los resúmenes de mensajes con la clave pública. Más bien, utiliza funciones matemáticas únicas para crear una firma digital que consta de dos números de 160 bits que se originan a partir de resúmenes del mensaje y la clave privada. Los DSA usan la clave pública para autenticar la firma, pero en comparación con RSA, el proceso de autenticación es más complicado.
9. Estándar de triple cifrado de datos (3DES)
3DES se basa en el algoritmo DES. Haciendo uso de Triple-DES es muy fácil modificar el software existente. También tiene la ventaja de una confiabilidad comprobada y una longitud de clave más larga que elimina muchos de los ataques que se pueden usar para reducir el tiempo que lleva romper DES. Se necesitan tres claves de 64 bits, para una longitud total de clave de 192 bits. En Stealth, ingresa la clave completa de 192 bits (24 caracteres) en lugar de ingresar cada una de las tres claves individualmente. La DLL Triple-DES luego divide la clave proporcionada por el usuario en tres subclaves, rellenando las claves si es necesario, para que cada una tenga 64 bits de longitud. El procedimiento de cifrado es el mismo que el DES normal, pero se repite tres veces, de ahí el nombre Triple DES.
10. MD5 (algoritmo de resumen de mensaje 5)
Message-Digest Algorithm 5 (MD5) es un algoritmo hash criptográfico que se puede utilizar a partir de una cadena de longitud arbitraria para crear un valor de cadena de 128 bits. Aunque se han identificado inseguridades con MD5, todavía se usa ampliamente. MD5 se usa más comúnmente para verificar la integridad de los archivos. Sin embargo, también se usa en otros protocolos de seguridad y aplicaciones como SSH, SSL e IPSec. Algunas aplicaciones refuerzan el algoritmo MD5 agregando un valor de sal al texto sin formato o aplicando múltiples funciones hash.