中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux下如何使用md5加密字符串和文件

發布時間:2022-01-26 11:14:51 來源:億速云 閱讀:735 作者:小新 欄目:開發技術

小編給大家分享一下Linux下如何使用md5加密字符串和文件,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

MD5是message-digest algorithm 5(信息-摘要算法)的縮寫,被廣泛用于加密和解密技術上,它可以說是文件的“數字指紋”。

Linux下如何使用md5加密字符串和文件

  1. linux下生成字符串密文的命令、軟件及使用方法如下

    這里以字符串123456為例子,它的md5密文值為:e10adc3949ba59abbe56e057f20f883e

    這里以1.txt為需要被加密的文件。

    一、   用oppnssl md5 加密字符串和文件的方法。

    \1. oppnssl md5 加密字符串的方法

    a.手動輸入命令及過程如下:

    #openssl     //在終端中輸入openssl后回車。

    OpenSSL> md5    //輸入md5后回車

    123456   //接著輸入123456,不要輸入回車。然后按3次ctrl+d。

    123456e10adc3949ba59abbe56e057f20f883e  //123456后面的就是密文了

    解釋:為何在輸入123456后不回車呢?

    是因為openssl默認會把回車符當做要加密的字符串中的一個字符,所以得到的結果不同。如果你輸入123456后回車,在按2次ctrl+d。得到的結果是:

    OpenSSL> md5

    123456

    f447b20a7fcbf53a5d5be013ea0b15af  //因為openssl不忽略回車符導致的

    b.或者直接用管道命令

    # echo -n 123456 | openssl md5  //必須要有-n參數,否則就不是這個結果了。

    e10adc3949ba59abbe56e057f20f883e

    解釋:為何要加-n這個參數?

    -n就表示不輸入回車符,這樣才能得到正確的結果。如果你不加-n,那么結果和前面說的一樣為:

    f447b20a7fcbf53a5d5be013ea0b15af  //因為openssl不忽略回車符導致的

    2.用openssl加密文件。

    #openssl  md 5  -in  1.txt

    ##################################################3

    Openssl其他相關加密的命令參數:引自:實用命令:利用openssl進行BASE64編碼解碼、md5/sha1摘要、AES/DES3加密解密 收藏

    一. 利用openssl命令進行BASE64編碼解碼(base64 encode/decode)\1. BASE64編碼命令對字符串‘abc’進行base64編碼:# echo abc | openssl base64YWJjCg== (編碼結果)

    如果對一個文件進行base64編碼(文件名t.txt):# openssl base64 -in t.txt

    \2. BASE64解碼命令求base64后的字符串‘YWJjCg==’的原文:# echo YWJjCg== | openssl base64 -dabc  (解碼結果)

    如果對一個文件進行base64解碼(文件名t.base64):# openssl base64 -d -in t.base64

    二. 利用openssl命令進行md5/sha1摘要(digest)\1. 對字符串‘abc’進行md5摘要計算:echo abc | openssl md5若對某文件進行md5摘要計算:openssl md5 -in t.txt

    \2. 對字符串‘abc’進行sha1摘要計算:echo abc | openssl sha1若對某文件進行sha1摘要計算:openssl sha1 -in t.txt

    三. 利用openssl命令進行AES/DES3加密解密(AES/DES3 encrypt/decrypt)

    對字符串‘abc’進行aes加密,使用密鑰123,輸出結果以base64編碼格式給出:# echo abc | openssl aes-128-cbc -k 123 -base64U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g=  (結果)

    對以上結果進行解密處理:# echo U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= | openssl aes-128-cbc -d -k 123 -base64abc (結果)

    若要從文件里取原文(密文)進行加密(解密),只要指定 -in 參數指向文件名就可以了。

    進行des3加解密,只要把命令中的aes-128-cbc換成des3就可以了。

    注:只要利用openssl help就可以看到更多的安全算法了。

    ###############################################

    二、   利用md5sum命令

    A.在linux或Unix上,md5sum是用來計算和校驗文件報文摘要的工具程序。一般來說,安裝了Linux后,就會有md5sum這個工具,直接在命令行終端直接運行。可以用下面的命令來獲取md5sum命令幫助 man md5sum

    #md5sum –help

    有個提示:“With no FILE, or when FILE is -, read standard input.”翻譯過來就是“如果沒有輸入文件選項或者文件選項為 –  ,則從標磚讀取輸入內容”,即可以直接從鍵盤讀取字符串來加密。

    利用md5sum加密字符串的方法

    # md5sum     //然后回車

    123456      //輸入123456.然后按兩次ctrl+d.

    顯示:

    123456e10adc3949ba59abbe56e057f20f883e   紅色代表加密后的值

    還可以用管道命令:

    #echo  -n ‘123123’ | md5sum

    或者寫成md5加密腳本,名字叫md5.sh,

    將以下內容復制進腳本里:

    #!/bin/bash

    echo  -n  $1 | md5sum | awk ‘{print $1}’

    保存后,給腳本執行權限。

    #sh md5.sh  123456

    顯示:e10adc3949ba59abbe56e057f20f883e

    B.其實也可以將文本放入文本文件,然后用md5sum 加密改文本,也可以得到字符串加密的值。過程如下:

    #touch a.txt

    #echo  -n  123456 > a.txt   //將123456寫進文本文件,不能丟了 –n參數,避免回車符干擾

    #md5sum  a.txt

    顯示:e10adc3949ba59abbe56e057f20f883e   a.txt

    ctrl+d有兩個含義:

    一是向程序發送文件輸入結束符EOF。

    二是向程序發送exit退出指令。程序收到信號后具體動作是結束輸入、然后等待,還是直接退出,那就要看該程序捕獲信號后是如何操作的了。md5sum屬于第一個含義。兩次strl+d了,第一次讀取EOF指令,再次捕獲就會當成exit指令。而shell一類的程序,會直接把ctrl+d解析為退出指令。

    三、獲取字符串的MD5值:

    字符串“hello”的MD5:

    得到的MD5值:

    命令解釋:

    md5sum: 顯示或檢查 MD5(128-bit) 校驗和,若沒有文件選項,或者文件處為”-“,則從標準輸入讀取。

    echo -n : 不打印換行符。

    cut: cut用來從標準輸入或文本文件中剪切列或域。剪切文本可以將之粘貼到一個文本文件。

       -d 指定與空格和tab鍵不同的域分隔符。-f1 表示第一個域。參考這里。

    獲取文件的MD5值:

    得到的MD5值:

    ee3d6e2ca498bc7685b7f17cdb5f2eea

    使用MD5校驗iso文件:

    注意linuxmint-12-gnome-dvd-32bit.md5的內容是:

    把linuxmint-12-gnome-dvd-32bit和其驗證文件  linuxmint-12-gnome-dvd-32bit.md5放到同一目錄下用下面的命令:

    如果校驗正確則輸出:

    如果校驗錯誤則輸出:

    命令解釋:md5 -c: 從文件中讀取MD5 的校驗值并予以檢查

    1. linuxmint-12-gnome-dvd-32bit.iso: 失敗

    2. md5sum: 警告:1/1 生成的校驗和不匹配

    3. linuxmint-12-gnome-dvd-32bit.iso: 確定

    4. $ md5sum -c linuxmint-12-gnome-dvd-32bit.md5

    5. ef3d6e2ca498bc7685b7f17cdb5f2eea linuxmint-12-gnome-dvd-32bit.iso

    6. $ md5sum linuxmint-12-gnome-dvd-32bit.iso >linuxmint-12-gnome-dvd-32bit.md5

    7. $ md5sum linuxmint-12-gnome-dvd-32bit.iso|cut -d ‘ ‘ -f1

    8. 5d41402abc4b2a76b9719d911017c59

    9. $ echo -n ‘hello’|md5sum|cut -d ‘ ‘ -f1

看完了這篇文章,相信你對“Linux下如何使用md5加密字符串和文件”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

高台县| 施秉县| 临颍县| 沈丘县| 方正县| 永平县| 昌图县| 江口县| 呼伦贝尔市| 大丰市| 西宁市| 丰县| 遂川县| 那曲县| 同仁县| 东光县| 霍邱县| 丰城市| 莒南县| 桐乡市| 临泉县| 漠河县| 南和县| 顺平县| 佛冈县| 安远县| 迁西县| 康定县| 上蔡县| 成安县| 化州市| 常州市| 广东省| 岳普湖县| 察雅县| 报价| 东台市| 仪陇县| 观塘区| 虹口区| 江山市|