您好,登錄后才能下訂單哦!
這篇文章主要介紹如何使用openssl對(duì)文件進(jìn)行加密和解密,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
openssl是一個(gè)安全套接字層密碼庫,囊括主要的密碼算法、常用密鑰、證書封裝管理功能及實(shí)現(xiàn)ssl協(xié)議。OpenSSL整個(gè)軟件包大概可以分成三個(gè)主要的功能部分:SSL協(xié)議庫libssl、應(yīng)用程序命令工具以及密碼算法庫libcrypto。
\1. 使用 openssl 加密一個(gè)文件 (data.zip 為原始文件,back.zip 為加密之后的文件)
# openssl enc -e -aes256 -in data.zip -out back.zip
解釋: enc 表示對(duì)文件進(jìn)行對(duì)稱加密或解密, -e 表示對(duì)一個(gè)文件進(jìn)行加密操作,-aes256 表示使用 aes256 算法進(jìn)行加密,-in 表示需要被加密的文件,-out 表示加密之后生成的新文件。加密過程中會(huì)要求輸入一個(gè)加密密碼,重復(fù)輸入兩次即可完成對(duì)文件的加密
\2. 使用 openssl 解密一個(gè)文件 (back.zip 為加密的文件,data.zip 為解密之后的文件)
# openssl enc -d -aes256 -in back.zip -out data.zip
解釋: enc 表示對(duì)文件進(jìn)行對(duì)稱加密或解密, -d 表示對(duì)文件進(jìn)行解密操作,-aes256 表示使用 aes256 算法進(jìn)行解密,-in 表示需要被解密的文件,-out 表示解密之后生成的新文件,解密一個(gè)文件的時(shí)候會(huì)要求輸入加密文件時(shí)設(shè)置的密碼才能進(jìn)行解密。
**
\1. 首先需要使用 openssl 生成一個(gè) 2048 位的密鑰 rsa.key 文件 (rsa.key 密鑰文件中包含了私鑰和公鑰)
# openssl genrsa -out rsa.key 2048
\2. 然后從 rsa.key 密鑰文件中提取出公鑰 pub.key
# openssl rsa -in rsa.key -pubout -out pub.key
\3. 使用 pub.key 公鑰加密一個(gè)文件 (data.zip 為原始文件,back.zip 為加密之后的文件)
# openssl rsautl -encrypt -inkey pub.key -pubin -in data.zip -out back.zip
\4. 使用 rsa.key 私鑰解密一個(gè)文件 (back.zip 為加密的文件,data.zip 為解密之后的文件)
# openssl rsautl -decrypt -inkey rsa.key -in back.zip -out data.zip
最后我們使用 OpenSSL 工具,對(duì)所有備份的數(shù)據(jù)文件進(jìn)行加密存儲(chǔ),就能保證業(yè)務(wù)系統(tǒng)數(shù)據(jù)進(jìn)行保護(hù),防止泄漏。我們也可以使用其他的加密工具比如 GPG,VeraCrypt,trueCrypt 這些工具來對(duì)數(shù)據(jù)進(jìn)行加密,但相比而言,使用 OpenSSL 更加方便,因?yàn)閹缀趺糠N Linux 發(fā)行版都預(yù)裝了 OpenSSL 軟件包。
以上是“如何使用openssl對(duì)文件進(jìn)行加密和解密”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。