新聞中心
簡(jiǎn)介:

創(chuàng)新互聯(lián)主要從事成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)全州,10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):028-86922220
在信息安全領(lǐng)域中,數(shù)據(jù)加密技術(shù)一直是研究的重點(diǎn)。MD5加密技術(shù)是一種廣泛應(yīng)用的加密方式。在Linux系統(tǒng)中,實(shí)現(xiàn)MD5加密字符串可以使用md5sum命令或者openssl庫(kù)函數(shù)實(shí)現(xiàn)。
一、使用md5sum命令實(shí)現(xiàn)MD5加密
md5sum命令是一個(gè)非常常用的Linux命令,用于計(jì)算文件的MD5校驗(yàn)和。使用md5sum命令實(shí)現(xiàn)MD5加密字符串也很簡(jiǎn)單。
具體步驟如下:
1、打開(kāi)終端,輸入下面命令:
md5sum -s 需要加密的字符串
其中,-s選項(xiàng)表示計(jì)算輸入字符串的MD5值。需要加密的字符串可以是任意長(zhǎng)度的字符串。
2、執(zhí)行上述命令后,系統(tǒng)會(huì)返回計(jì)算出的MD5值。例如:
32d10c7b8cf96570ca04ce37f2a19d84240d3a89
這就是輸入字符串的MD5值。
需要注意的是,md5sum命令只能計(jì)算ASCII碼,因此如果需要計(jì)算非ASCII碼,則需要使用其他的MD5計(jì)算工具。
二、使用openssl庫(kù)函數(shù)實(shí)現(xiàn)MD5加密
除了使用md5sum命令之外,Linux系統(tǒng)中還提供了專門(mén)的openssl庫(kù)函數(shù)用于計(jì)算MD5值。這些庫(kù)函數(shù)提供了更豐富的MD5計(jì)算功能。
具體步驟如下:
1、在代碼文件頭文件中引入openssl頭文件:
#include
2、定義一個(gè)字符數(shù)組和MD5_CTX類型變量:
unsigned char digest[MD5_DIGEST_LENGTH];
MD5_CTX ctx;
其中,digest數(shù)組用于存放MD5值,MD5_CTX類型變量用于存放MD5計(jì)算上下文。
3、使用MD5_Init函數(shù)對(duì)MD5計(jì)算上下文進(jìn)行初始化:
MD5_Init(&ctx);
4、使用MD5_Update函數(shù)將需要加密的字符串添加到MD5計(jì)算上下文中:
MD5_Update(&ctx, input_string, strlen(input_string));
其中,input_string參數(shù)表示需要加密的字符串,strlen(input_string)表示字符串長(zhǎng)度。
5、使用MD5_Final函數(shù)將MD5計(jì)算上下文中的值輸出到digest數(shù)組中:
MD5_Final(digest, &ctx);
執(zhí)行上述步驟之后,digest數(shù)組中存放的就是輸入字符串的MD5值。
這種方法的優(yōu)點(diǎn)在于它不僅可以計(jì)算ASCII碼,還可以計(jì)算任何類型的數(shù)據(jù)并輸出MD5值,因此它更加靈活和通用。
三、
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù)!
怎么樣把linux安裝的ISO文件自帶的MD5碼改動(dòng)?
首先你要了解md5是什么東西, md5散列是以對(duì)目標(biāo)進(jìn)行簽名驗(yàn)證的一種產(chǎn)物,他通過(guò)一定的算法,將目標(biāo)(可以是文件 可以是字符串)量化為一個(gè)16位長(zhǎng)度的16進(jìn)制字串 ,所以如果你想更改iso文件的md5值 ,只需要更改源文件或者源字符串即可 ,對(duì)于iso ,用編輯工具往里面添加一個(gè)文件或者刪除一個(gè)文件 即可造成md5值的變化
文件本身并不保存md5碼,一般都是用另外一個(gè)文本文件來(lái)保存.
要改動(dòng)文件的md5信息很簡(jiǎn)單,你把文件改動(dòng)一下就改變了
隨便改動(dòng)一下里面的文件,自然就變了
用虛擬盤(pán)來(lái)改
linux有什么命令可以提取指定的字符串
1. 例子
提取字符串以下字符串 error: 與 : 之間的子字符串。并消除空格。
“src/network/misc/nv_net_udp.c:17: fatal error: nv_net_tools.h: No such file or directory”1
2. 命令
echo “src/network/misc/nv_net_udp.c:17: fatal error: nv_net_tools.h: No such file or directory” | sed -r ‘s/.*error\:(.*)\:.*/\1/’ | sed s/>//g1
該命令涉及 sed 命令的’反向引用’章節(jié), \1 代表 (.*)
3. 結(jié)果
nv_net_tools.h1
4. 拓展 : 解決編譯錯(cuò)誤
leon$ make clean && make all arm-hisiv100nptl-linux-gcc -c -fPIC -Wall -g -ggdb -O0 -DHI3518_CHIP -DLINUX -I./src/include -I./src/include/common -I./src/include/camera -I./src/include/conf -I./src/include/log -I./src/include/network -I./src/include/upnp -I/home/leon/nvc/arm-hisiv100nptl-linux/include src/common/nv_conf.c -o build/objs/hi3518/src/common/nv_conf.o/*省略中間部分*/arm-hisiv100nptl-linux-gcc -c -fPIC -Wall -g -ggdb -O0 -DHI3518_CHIP -DLINUX -I./src/include -I./src/include/common -I./src/include/camera -I./src/include/conf -I./src/include/log -I./src/include/network -I./src/include/upnp -I/home/leon/nvc/arm-hisiv100nptl-linux/include src/network/misc/nv_net_udp.c -o 笑搏中build/objs/hi3518/src/network/misc/nv_net_udp.o
src/network/misc/nv_net_udp.c:17: fatal error: nv_net_tools.h: No such file or directory
compilation terminated.make: *** Error
note: 在以上編譯過(guò)程中我們發(fā)現(xiàn),編譯器提示說(shuō)找不到nv_net_tools.h文件,而現(xiàn)實(shí)中我們也不需要這個(gè)文件的包含了,需要?jiǎng)h除包含nv_net_tools.h 文件中的該行代碼。
5.字符串提取 (命令行)
目標(biāo)字符串
“from”:””,”to”:””,”url”:” 12
需要提取 from , to, url , md5, level 等5個(gè)關(guān)鍵字后面的內(nèi)容。
//提取 from 內(nèi)容echo
“from”:””,”to”:””,”url”:” | sed “s/.*from:\(.*\)/\1/” | cut -d ‘碰山,’ -f1
//提取 to 內(nèi)容echo
“from”:””,”to”:”銀源”,”url”:” | sed “s/.*to:\(.*\)/\1/” | cut -d ‘,’ -f1
//提取 url 內(nèi)容echo
“from”:””,”to”:””,”url”:” | sed “s/.*url:\(.*\)/\1/” | cut -d ‘,’ -f1
//提取 md5 內(nèi)容echo
“from”:””,”to”:””,”url”:” | sed “s/.*md5:\(.*\)/\1/” | cut -d ‘,’ -f1
//提取 level 內(nèi)容echo
“from”:””,”to”:””,”url”:” | sed “s/.*level:\(.*\)/\1/” | cut -d ‘,’ -f
6.字符串提取 (腳本文件)
ret_val=”\”from\”:\”\”,\”to\”:\”\”,\”url\”:\”
echo ret_val is : from=”$(echo $ret_val | sed ‘s/.*from\”\:\(.*\)/\1/’ | cut -d ‘,’ -f1 | sed ‘s/”//g’)”
echo from: $from
to=”$(echo $ret_val | sed ‘s/.*to\”\:\(.*\)/\1/’ | cut -d ‘,’ -f1 | sed ‘s/”//g’)”
echo to: $to
url=”$(echo $ret_val | sed ‘s/.*url\”\:\(.*\)/\1/’ | cut -d ‘,’ -f1 | sed ‘s/”//g’)”
echo url: $url
md5=”$(echo $ret_val | sed ‘s/.*md5\”\:\(.*\)/\1/’ | cut -d ‘,’ -f1 | sed ‘s/”//g’)”
echo md5: $md5
level=”$(echo $ret_val | sed ‘s/.*level\”\:\(.*\)/\1/’ | cut -d ‘,’ -f1 | sed ‘s/”//g’)”
echo level: $level9
執(zhí)行結(jié)果:
ret_val is :
from:
to:
url: 408d261924e6c271200fdf14d3a230cc
level: 0
I.總結(jié)
linux對(duì)字符串進(jìn)行md5的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于linux對(duì)字符串進(jìn)行md5,Linux MD5加密字符串實(shí)現(xiàn),怎么樣把linux安裝的ISO文件自帶的MD5碼改動(dòng)?,linux有什么命令可以提取指定的字符串的信息別忘了在本站進(jìn)行查找喔。
創(chuàng)新互聯(lián)(cdcxhl.com)提供穩(wěn)定的云服務(wù)器,香港云服務(wù)器,BGP云服務(wù)器,雙線云服務(wù)器,高防云服務(wù)器,成都云服務(wù)器,服務(wù)器托管。精選鉅惠,歡迎咨詢:028-86922220。
分享文章:LinuxMD5加密字符串實(shí)現(xiàn)(linux對(duì)字符串進(jìn)行md5)
分享地址:http://fisionsoft.com.cn/article/dpjsope.html


咨詢
建站咨詢
