Una clave previamente compartida (PSK, Pre-Shared Key) o también conocida como secreto compartido es una cadena de caracteres que se utiliza como clave de autenticación en procesos criptográficos. Una PSK se comparte antes de ser utilizada y es retenida por ambas partes de la comunicación para autenticarse mutuamente, generalmente antes de que se apliquen otros métodos de autenticación, como los nombres de usuario y las contraseñas.
Se utiliza comúnmente en diferentes tipos de conexiones de redes privadas virtuales (VPN), redes inalámbricas en un tipo de cifrado conocido como WPA-PSK (Wi-Fi Protected Access Pre-Shared Key) y WPA2-PSK, y también en el EAP (Extensible Authentication Protocol Pre-Shared Key), y muchos otros mecanismos de autenticación.
En este artículo, te mostraré diferentes formas de generar una fuerte clave pre-compartida en las distribuciones de Linux.
- Guía para Principiantes: Introducción a la Criptografía
- Comprender el Hashing en la Criptografía (Enfoque práctico)
- Cómo Cifrar Datos con los cmdlets de PowerShell
1. Usar el comando OpenSSL
OpenSSL es una herramienta de línea de comandos bien conocida y ampliamente utilizada para invocar las diversas funciones de criptografía de la biblioteca OpenSSL desde el shell. Para generar un PSK fuerte utiliza su subcomando rand
que genera bytes pseudo-aleatorios y lo filtra a través de codificaciones base64 como se muestra.
openssl rand -base64 32
openssl rand -base64 64

2. Usar el comando GPG
GPG es una herramienta de línea de comandos para proporcionar servicios de encriptación y firma digital utilizando el estándar OpenPGP. Puedes usar su opción --gen-random
para generar un PSK fuerte y filtrarlo a través de la codificación base64 como se muestra.
En los siguientes comandos, 1
o 2
es el nivel de calidad y 10
, 20
, 40
, y 70
son la cantidad de caracteres.
gpg --gen-random 1 10 | base64
gpg --gen-random 2 20 | base64
gpg --gen-random 1 40 | base64
gpg --gen-random 2 70 | base64

3. Usar generadores de números pseudoaleatorios
También puedes usar cualquiera de los generadores de números pseudoaleatorios en Linux como /dev/random
o /dev/urandom
, de la siguiente manera. La opción -c
del comando head
ayuda a generar el número de caracteres.
head -c 35 /dev/random | base64
head -c 60 /dev/random | base64

4. Usar comandos date y sha256sum
El comando de date
y sha256sum
puede ser combinado para crear un PSK fuerte como a continuación.
date | sha256sum | base64 | head -c 45; echo
date | sha256sum | base64 | head -c 50; echo
date | sha256sum | base64 | head -c 60; echo

Las anteriores son algunas de las muchas formas de generar una fuerte clave pre-compartida en Linux. ¿Conoces otros métodos? Si es así, compártelo a través del formulario de la sección de comentarios.
Artículos recomendados:
- Cómo generar códigos QR en Linux
- Cómo generar contraseñas aleatorias desde Terminal Linux
- Passpie: Gestor de Contraseñas desde línea de comandos
Si te gusta el contenido y deseas apoyar a la mejora del sitio web, considera hacer una contribución ¡haciendo clic aquí por favor!. ¡NO ES OBLIGATORIO, GRACIAS! :’)
¿Te ha gustado este artículo? Sigue este blog en su fanpage de Facebook, Twitter, Instagram y/o YouTube para que no te pierdas del mejor contenido informático y hacking!