如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

這篇文章主要為大家分析了如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì)易懂,操作細(xì)節(jié)合理,具有一定參考價(jià)值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學(xué)習(xí)“如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密”的知識(shí)吧。

創(chuàng)新互聯(lián)是一家專業(yè)提供博州企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站建設(shè)、做網(wǎng)站、成都h5網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為博州眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。

    說到OpenSSL,首先要提的是SSL。我們?cè)谌粘I暇W(wǎng)的時(shí)候,恐怕沒有人愿意被網(wǎng)絡(luò)上的其他人監(jiān)聽到我們的上網(wǎng)行為。因此就需要一種協(xié)議為我們的網(wǎng)絡(luò)通信保駕護(hù)航。SSL協(xié)議就是基于這樣的工作背景開發(fā)的,它能使用戶跟服務(wù)器應(yīng)用之間的通信不被攻擊者竊聽,并且始終對(duì)服務(wù)器進(jìn)行認(rèn)證,可選擇的對(duì)用戶進(jìn)行認(rèn)證。

    SSL協(xié)議通常建立在可靠的傳輸層協(xié)議(TCP)之上。SSL協(xié)議的優(yōu)勢(shì)在于它是與應(yīng)用層協(xié)議獨(dú)立無關(guān)的,高層的應(yīng)用層協(xié)議(例如:HTTP,F(xiàn)TP,TELNET等)能透明地建立于SSL協(xié)議之上。SSL協(xié)議在應(yīng)用層協(xié)議通信之前就已經(jīng)完成加密算法、通信密鑰的協(xié)商及服務(wù)器認(rèn)證工作。在此之后應(yīng)用層協(xié)議所傳送的數(shù)據(jù)都會(huì)被加密,從而保證通信的保密性。 

   s所謂加密,只不過是將明文通過某種機(jī)制轉(zhuǎn)換成密文,網(wǎng)絡(luò)通信時(shí),使用的加密安全機(jī)制有:對(duì)稱加密,公鑰加密,單向加密。    

  對(duì)稱加密的特性與缺陷:加密解密使用同一個(gè)密鑰,將明文分割成固定大小的塊,逐個(gè)進(jìn)行加密。其缺陷在于通信雙方要管理的密鑰過多,而且密鑰分發(fā)困難。其加密算法有:DES、3DES、AES。

  公鑰加密的特性:密鑰成對(duì)出現(xiàn),其加密算法有:RSA、DSA。其用途有:一是用于身份認(rèn)證:發(fā)送方使用自己的私鑰加密數(shù)據(jù),接收方使用與之公鑰解密;二是用于密鑰交換:發(fā)送方使用接收方的公鑰加密數(shù)據(jù),接收方使用自己的私鑰解密。公鑰在私鑰中提取出來

  單向加密的特性:定向輸出,有雪崩效應(yīng)。其加密算法有:MD5、SHA1、SHA256、SHA384、SHA512。常用于提取數(shù)據(jù)的特征碼。

   今年4月10號(hào)安全協(xié)議OpenSSL爆出本年度最嚴(yán)重的安全漏洞“心臟出血”。使人們開始重視這個(gè)開源協(xié)議。那么OpenSSL到底是什么呢?其實(shí)OpenSSL可以看作是SSL的庫,由openssl多用途的命令行工具、公共加密庫libcrypto、以及ssl協(xié)議庫libssl三大組件組成。

    openssl多用途的命令行工具可用于實(shí)現(xiàn)對(duì)稱加密

                        openssl enc -e -對(duì)稱加密算法 -a -salt -in 需要加密的文件 -out 加密后的文件輸出路徑

例如,對(duì)/etc/fstab這個(gè)文件使用DES3算法加密: openssl enc -e -des3 -a -salt -in /etc/fstab -out /tmp/fstab 

如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

加密結(jié)果:

如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

   解密:openssl enc -d -對(duì)稱加密算法 -a -salt -in 需要解密的文件 -out 解密后的文件輸出路徑

例如,將上面加密的文件解密: openssl enc -d -des3 -a -salt -in /tmp/fstab -out /tmp/Fstab

如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

解密結(jié)果:

如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

    還可以用于公鑰加密中的密鑰交換:(umask 077;openssl genrsa -out 輸出私鑰文件路徑)

              從私鑰中提取公鑰: openssl rsa -in 私鑰文件路徑 -pubout

注:()表示命令在子shell中執(zhí)行,umask 077 保證了私鑰文件的訪問權(quán)限

如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

    還可用于單向加密:openssl dgst -md5|-sha1 -out 文件輸出路徑 要加密的文件

例如,將/etc/passwd使用md5加密:openssl dgst -md5  -out /tmp/md5passwd /etc/passwd

如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

    還可以用于生成用戶密碼: openssl passwd -1 -salt SALT_STRING 用戶密碼

如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

    還可以用于生成隨機(jī)數(shù):openssl rand -hex 字節(jié)數(shù)

如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密

這篇文章主要為大家分析了如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì)易懂,操作細(xì)節(jié)合理,具有一定參考價(jià)值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學(xué)習(xí)“如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密”的知識(shí)吧。

標(biāo)題名稱:如何進(jìn)行OpenSSL基礎(chǔ)中的加密及解密
URL標(biāo)題:http://muchs.cn/article2/phdeic.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站、關(guān)鍵詞優(yōu)化App開發(fā)、用戶體驗(yàn)企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名