4 formas de generar claves sólidas precompartidas en Linux
Durante el cifrado de datos, se requiere una clave PSK para fines de autenticación. Es un protocolo de seguridad eficaz, ya que alguien que no conozca la clave no podrá descifrar los datos. Por lo tanto, elegir una clave PSK segura es importante si se toma en serio la protección de sus datos de intrusos.
Pero, ¿por qué son importantes las claves PSK y cómo se pueden generar claves PSK seguras y aleatorias automáticamente en Linux?
¿Qué son las claves PSK y por qué necesito una?
Una clave precompartida, o simplemente PSK, es una cadena aleatoria de caracteres que se utiliza como contraseña al cifrar y descifrar datos. Como sugiere el nombre, ambas partes involucradas en el proceso criptográfico conocen la clave de antemano, ya que la clave es necesaria no solo durante el proceso de descifrado sino también durante el cifrado de los datos.
Una de las aplicaciones más importantes de las claves PSK es la seguridad de la red inalámbrica. Las redes Wi-Fi utilizan varios tipos de cifrado de datos, como WPA-PSK y WPA2-PSK , donde WPA significa acceso protegido a Wi-Fi. La contraseña que ingresa antes de conectarse a Wi-Fi también es un tipo de PSK.
Dado que nuestra seguridad está en riesgo casi todo el tiempo, el uso de claves previamente compartidas durante la transferencia de datos puede evitar que los piratas informáticos rastreen nuestros datos en una red. Además, el uso de un PSK al compartir datos garantiza que solo acceda a los datos la persona con la que desea compartirlos.
Aunque un ataque de fuerza bruta puede resultar eficaz contra las claves criptográficas, elegir una clave segura puede reducir las posibilidades de que se descifre la clave.
Cómo generar claves PSK seguras en Linux
Si la clave PSK es tan importante para nosotros, ¿no deberíamos todos tener una clave PSK que podamos usar? Si. De hecho, cifrar sus datos con una contraseña, en general, es una tarea crucial que todos deberían conocer.
Pero, no significa que tendrá que pensar mucho y crear una cadena aleatoria de caracteres para usar como PSK. Afortunadamente, Linux tiene varios comandos que pueden generar fuertes claves PSK para su uso.
1. Genere una clave segura con el comando OpenSSL
OpenSSL es un comando bien conocido entre los entusiastas de la seguridad de redes, ya que proporciona numerosas utilidades relacionadas con funciones y claves criptográficas. Esta herramienta le permite generar claves PSK aleatorias de diferentes tamaños de bytes.
Para generar una clave PSK de 32 bytes de longitud mediante el comando openssl:
openssl rand -base64 32
Producción:
v59AYgTli5LFAJXsIngeQiApSj1u8QJYZvxopSV2Zt0=
Del mismo modo, puede reemplazar el tamaño del byte con cualquier número que desee para generar claves precompartidas de tamaño aleatorio en su sistema Linux.
Por ejemplo, ejecute el siguiente comando para generar una clave precompartida de 128 bytes de longitud.
openssl rand -base64 128
2. Cree una PSK con la utilidad GPG
GPG, un acrónimo de GNU Privacy Guard es una reconocida herramienta que se utiliza para cifrar y descifrar archivos en un sistema Linux. Pero además de eso, también puede usar la herramienta para generar claves fuertes previamente compartidas.
Invocar el método –gen-random del comando gpg con codificación base64 te permitirá generar una combinación infinita de caracteres que puedes usar como PSK.
Para obtener una clave precompartida de 32 bytes mediante el comando gpg :
gpg --gen-random 1 32 | base64
Producción:
dYWA8xdcAUAwS/cSopFnRzYuk4zVGWSTJtq87Zg15XU=
El 1 en el comando mencionado anteriormente es el nivel de calidad y 32 es el número de bytes que desea que tenga la clave.
De manera similar, para generar un PSK de 64 bytes:
gpg --gen-random 1 64 | base64
3. Uso de date y sha256sum para PSK aleatorios
El comando date en Linux muestra información relacionada con la fecha y hora del sistema a los usuarios. No todo el mundo lo sabe, pero puede utilizar este comando para generar claves seguras con fines de seguridad.
La canalización del comando date con sha256sum y base64 generará claves aleatorias que puede usar como PSK para el cifrado.
date | sha256sum | base64 | head -c 32; echo
Producción:
MWVkNzMwOTAzMDgxMTNkZTc3MDFjZjkz
El comando antes mencionado imprimirá un PSK de 32 bytes. El comando head lee y muestra los primeros 32 bytes de la salida.
Si elimináramos el encabezado del comando, el sistema mostrará una cadena de 92 bytes de longitud:
date | sha256sum | base64
Producción:
MTQ1OWVlOGNiODIxYmMyZTEzNGQyZjUyNzkyOTEwOWZmZWQ3MmQxZWExYzhhODM1ZDdmM2ZjZTQ5
ODM4MDI4ZiAgLQo=
Tenga en cuenta que no podrá generar una clave PSK de más de 92 bytes con el comando date y sha256sum .
Para generar una clave precompartida aleatoria de 64 bytes con el comando date y sha256sum :
date | sha256sum | base64 | head -c 64; echo
4. Uso de generadores de números pseudoaleatorios
El sistema operativo Linux tiene varios generadores de números aleatorios, como el archivo / dev / random y / dev / urandom . Estos son archivos especiales en Linux que sirven como generadores de números pseudoaleatorios. Ambos archivos, / dev / random y / dev / urandom usan el grupo de entropía de Linux para generar números aleatorios.
Estos números aleatorios cuando se combinan con el comando base64 pueden generar combinaciones de caracteres fuertes que son adecuadas para usar como una clave previamente compartida.
Para generar un PSK de 32 bytes usando el archivo / dev / random :
head -c 32 /dev/random | base64
Si desea obtener una clave PSK de 128 bytes de longitud, ejecute el siguiente comando:
head -c 128 /dev/random | base64
Alternativamente, también puede usar el archivo / dev / urandom reemplazando / dev / random con / dev / urandom . El funcionamiento de estos dos archivos es bastante similar y no alterará la generación PSK.
La entropía es el ruido recopilado del entorno, como el ventilador de la CPU, los movimientos del mouse y más. El grupo de entropía en un sistema Linux almacena el ruido, que a su vez es utilizado por estos archivos.
La generación de números del archivo / dev / random se pone en espera cuando hay menos entropía disponible. Por otro lado, u en / dev / urandom significa ilimitado ya que la generación nunca se detiene, incluso cuando hay menos entropía en el sistema.
Cifrar datos para una mejor seguridad
Las claves y contraseñas son importantes cuando se trata de proteger su privacidad. Incluso durante el cifrado, las claves previamente compartidas aseguran todo el proceso de transmisión de datos. Generar claves precompartidas aleatorias es fácil en Linux ya que siempre hay varias utilidades disponibles a su disposición.
El cifrado de datos es una práctica subestimada que todo el mundo debería seguir. Al final, todo lo que importa es la información que le pertenece o que está relacionada con usted. La protección de estos datos de personas externas debe ser de alta prioridad si realmente quiere ocultar su información a los ciberdelincuentes.