4 façons de générer des clés pré-partagées fortes sous Linux
Lors du cryptage des données, une clé PSK est requise à des fins d'authentification. C'est un protocole de sécurité efficace car une personne qui ne connaît pas la clé ne pourra pas déchiffrer les données. Par conséquent, il est important de choisir une clé PSK forte si vous envisagez sérieusement de protéger vos données contre les intrus.
Mais pourquoi les clés PSK sont-elles importantes et comment générer automatiquement des clés PSK fortes et aléatoires sous Linux?
Que sont les clés PSK et pourquoi en ai-je besoin?
Une clé pré-partagée, ou simplement PSK, est une chaîne aléatoire de caractères utilisée comme mot de passe lors du cryptage et du décryptage des données. Comme son nom l'indique, les deux parties impliquées dans le processus cryptographique connaissent la clé à l'avance, car la clé est requise non seulement pendant le processus de décryptage, mais également lors du cryptage des données.
L'une des applications les plus importantes des clés PSK est la sécurité du réseau sans fil. Les réseaux Wi-Fi utilisent divers types de cryptage de données, tels que WPA-PSK et WPA2-PSK , où WPA signifie Wi-Fi Protected Access. Le mot de passe que vous entrez avant de vous connecter au Wi-Fi est également un type de PSK.
Étant donné que notre sécurité est en danger presque tout le temps, l'utilisation de clés pré-partagées pendant le transfert de données peut empêcher les pirates de renifler nos données sur un réseau. En outre, l'utilisation d'un PSK lors du partage de données garantit que les données ne sont accessibles que par la personne avec laquelle vous souhaitez partager.
Bien qu'une attaque par force brute puisse toujours s'avérer efficace contre les clés cryptographiques, le choix d'une clé forte peut réduire les risques de fissuration de la clé.
Comment générer des clés PSK fortes sous Linux
Si la clé PSK est si importante pour nous, ne devrions-nous pas tous avoir une clé PSK que nous pouvons utiliser? Oui. En fait, crypter vos données avec un mot de passe, en général, est une tâche cruciale que tout le monde devrait connaître.
Mais cela ne signifie pas que vous devrez réfléchir sérieusement et proposer une chaîne aléatoire de caractères à utiliser comme PSK. Heureusement, Linux a plusieurs commandes qui peuvent générer des clés PSK puissantes que vous pouvez utiliser.
1. Générez une clé forte à l'aide de la commande OpenSSL
OpenSSL est une commande bien connue des passionnés de sécurité réseau car elle fournit de nombreux utilitaires liés aux fonctions et clés cryptographiques. Cet outil vous permet de générer des clés PSK aléatoires de différentes tailles d'octets.
Pour générer une clé PSK de 32 octets à l'aide de la commande openssl:
openssl rand -base64 32
Production:
v59AYgTli5LFAJXsIngeQiApSj1u8QJYZvxopSV2Zt0=
De même, vous pouvez remplacer la taille d'octet par n'importe quel nombre de votre choix pour générer des clés pré-partagées de taille aléatoire sur votre système Linux.
Par exemple, exécutez la commande suivante pour générer une clé pré-partagée de 128 octets.
openssl rand -base64 128
2. Créez un PSK avec l'utilitaire GPG
GPG, acronyme de GNU Privacy Guard, est un outil renommé utilisé pour crypter et décrypter des fichiers sur un système Linux. Mais en plus de cela, vous pouvez également utiliser l'outil pour générer des clés pré-partagées puissantes.
L' appel de la méthode –gen-random de la commande gpg avec un encodage base64 vous permettra de générer une combinaison infinie de caractères que vous pouvez utiliser comme PSK.
Pour obtenir une clé pré-partagée de 32 octets à l'aide de la commande gpg :
gpg --gen-random 1 32 | base64
Production:
dYWA8xdcAUAwS/cSopFnRzYuk4zVGWSTJtq87Zg15XU=
Le 1 dans la commande susmentionnée est le niveau de qualité et 32 est le nombre d' octets que vous voulez que la clé ait.
De même, pour générer un PSK de 64 octets:
gpg --gen-random 1 64 | base64
3. Utilisation de la date et de la somme sha256 pour les PSK aléatoires
La commande date sous Linux affiche des informations relatives à la date et à l'heure du système aux utilisateurs. Tout le monde ne le sait pas, mais vous pouvez utiliser cette commande pour générer des clés fortes à des fins de sécurité.
Le pipetage de la commande date avec sha256sum et base64 produira des clés aléatoires que vous pouvez utiliser comme PSK pour le chiffrement.
date | sha256sum | base64 | head -c 32; echo
Production:
MWVkNzMwOTAzMDgxMTNkZTc3MDFjZjkz
La commande susmentionnée imprimera un PSK de 32 octets. La commande head lit et affiche les 32 premiers octets de la sortie.
Si nous supprimions head de la commande, le système affichera une chaîne de 92 octets:
date | sha256sum | base64
Production:
MTQ1OWVlOGNiODIxYmMyZTEzNGQyZjUyNzkyOTEwOWZmZWQ3MmQxZWExYzhhODM1ZDdmM2ZjZTQ5
ODM4MDI4ZiAgLQo=
Notez que vous ne pourrez pas générer une clé PSK de plus de 92 octets à l'aide de la commande date et sha256sum .
Pour générer une clé pré-partagée aléatoire de 64 octets avec la commande date et sha256sum :
date | sha256sum | base64 | head -c 64; echo
4. Utilisation de générateurs de nombres pseudo-aléatoires
Le système d'exploitation Linux dispose de divers générateurs de nombres aléatoires tels que le fichier / dev / random et / dev / urandom . Ce sont des fichiers spéciaux sous Linux qui servent de générateurs de nombres pseudo-aléatoires. Les fichiers / dev / random et / dev / urandom utilisent le pool d'entropie Linux pour générer des nombres aléatoires.
Ces nombres aléatoires, lorsqu'ils sont combinés avec la commande base64, peuvent générer des combinaisons de caractères fortes qui peuvent être utilisées comme clé pré-partagée.
Pour générer un PSK de 32 octets à l'aide du fichier / dev / random :
head -c 32 /dev/random | base64
Si vous souhaitez obtenir une clé PSK de 128 octets, exécutez la commande suivante:
head -c 128 /dev/random | base64
Vous pouvez également utiliser le fichier / dev / urandom en remplaçant / dev / random par / dev / urandom . Le fonctionnement de ces deux fichiers est assez similaire et n'altérera pas la génération PSK.
L'entropie est le bruit collecté dans l'environnement, tel que le ventilateur du processeur, les mouvements de la souris, etc. Le pool d'entropie sur un système Linux stocke le bruit, qui à son tour est utilisé par ces fichiers.
La génération de numéro du fichier / dev / random est mise en attente lorsque moins d'entropie est disponible. D'un autre côté, u dans / dev / urandom signifie illimité car la génération ne s'arrête jamais, même s'il y a moins d'entropie dans le système.
Crypter les données pour une meilleure sécurité
Les clés et les mots de passe sont importants pour protéger votre vie privée. Même pendant le cryptage, les clés pré-partagées sécurisent l'ensemble du processus de transmission des données. Générer des clés pré-partagées aléatoires est facile sous Linux car plusieurs utilitaires sont toujours disponibles à votre disposition.
Le cryptage des données est une pratique sous-estimée que tout le monde devrait suivre. En fin de compte, tout ce qui compte, ce sont les informations qui vous appartiennent ou qui vous concernent. La protection de ces données contre des tiers devrait être une priorité élevée si vous souhaitez vraiment cacher vos informations aux cybercriminels.