1. 前言
本文主要講解如何在linux系統(tǒng)中,使用命令行工具生成強(qiáng)度預(yù)共享密鑰(PSK)的4種方法。
預(yù)共享密鑰(PSK)或稱為共享密鑰是一串字符,在加密進(jìn)程中用作身份驗(yàn)證密鑰。PSK在使用之前是共享的,通常在應(yīng)用其他身份驗(yàn)證方法(如用戶名和密碼)之前,由通信雙方持有以進(jìn)行彼此的身份驗(yàn)證。
它通常用于不同類型的虛擬專用網(wǎng)絡(luò)(VPN)連接、無(wú)線網(wǎng)絡(luò)中稱為WPA-PSK (Wi-Fi保護(hù)訪問(wèn)預(yù)共享密鑰)和WPA2-PSK的加密類型,以及EAP(可擴(kuò)展身份驗(yàn)證協(xié)議預(yù)共享密鑰)和許多其他身份驗(yàn)證機(jī)制。
在本文中,我們將介紹在Linux發(fā)行版中生成強(qiáng)預(yù)共享密鑰的不同方法。
在Linux中生成高強(qiáng)度預(yù)共享密鑰(PSK)的4種方法
2. 使用OpenSSL命令
OpenSSL是一個(gè)著名的、廣泛使用的命令行工具,用于從shell中調(diào)用OpenSSL的crypto庫(kù)的各種加密函數(shù)。要生成一個(gè)強(qiáng)PSK,請(qǐng)使用它的rand子命令,該命令生成偽隨機(jī)字節(jié)并通過(guò)base64編碼進(jìn)行過(guò)濾,如下所示。
生成32位密鑰:
openssl rand -base64 32
生成64位密鑰:
openssl rand -base64 64
使用OpenSSL命令
3. 使用GPG命令
GPG是使用OpenPGP標(biāo)準(zhǔn)提供數(shù)字加密和簽名服務(wù)的命令行工具。您可以使用它的--gen-random選項(xiàng)來(lái)生成一個(gè)強(qiáng)PSK,并通過(guò)base64編碼對(duì)其進(jìn)行過(guò)濾,如下所示。
在以下命令中,1或2是質(zhì)量級(jí)別,10、20、40和70是字符數(shù)量。
gpg --gen-random 1 10 | base64
gpg --gen-random 2 20 | base64
gpg --gen-random 1 40 | base64
gpg --gen-random 2 70 | base64
4.使用偽隨機(jī)數(shù)生成器
您還可以使用Linux中的任意偽隨機(jī)數(shù)生成器,如/dev/random或/dev/urandom,如下所示。head命令的-c選項(xiàng)有助于生成字符數(shù)。
head -c 35 /dev/random | base64
head -c 60 /dev/random | base64
使用偽隨機(jī)數(shù)生成器
5. 使用date和sha245sum命令
可以組合date和sha256sum命令來(lái)創(chuàng)建一個(gè)強(qiáng)PSK,如下所示。
date | sha256sum | base64 | head -c 45; echo
date | sha256sum | base64 | head -c 50; echo
date | sha256sum | base64 | head -c 60; echo
使用date和sha245sum命令
6. 總結(jié)
通過(guò)本文,您應(yīng)該可以了解到如何在Linux系統(tǒng)上通過(guò)簡(jiǎn)單的命令行工具生成高強(qiáng)度的PSK密鑰了吧?以上是在Linux系統(tǒng)中生成高強(qiáng)度的預(yù)共享密鑰的一些實(shí)用例子。如果你有更好的用法,請(qǐng)留言。
本文已同步至博客站,尊重原創(chuàng),轉(zhuǎn)載時(shí)請(qǐng)?jiān)谡闹懈綆б韵骆溄樱?br />https://www.linuxrumen.com/cyml/1753.html