2022-06-16 21:07:46 索煒達(dá)電子 722
文件編號(hào):B14
文件大小:10M
猿創(chuàng)承諾:該項(xiàng)目親測(cè)正常運(yùn)行,提供部署視頻,需遠(yuǎn)程調(diào)試部署需另外收費(fèi),確保正常使用,不能正常使用全額退款。
簡(jiǎn)要概述:本項(xiàng)目是基于MATLAB實(shí)現(xiàn)的數(shù)字圖像加密解密系統(tǒng),加密算法由筆者自主設(shè)計(jì)。此加密系統(tǒng)可以百分百無(wú)損恢復(fù)到原圖,支持對(duì)單通道、三通道數(shù)字圖像圖像的加密及解密,支持對(duì)jpg、jpeg、png、tif、tiff、bmp等眾多主流圖像格式加密及解密。此外,用戶可以自己選擇加密次數(shù),加密次數(shù)越多,像素越混亂,安全系數(shù)越高。但對(duì)于接收方而言,無(wú)需知道加密次數(shù),一鍵解密圖像,方便又快捷。
圖像加密算法(附源碼)
筆者認(rèn)為,所謂加密,就是“有規(guī)律的破壞”。即要在能保證復(fù)原的前提下盡可能地去“破壞”。這個(gè)“破壞”的程度越大,與原信息相關(guān)性越低,被攻破的難度就越大,加密效果就越好。
因此,為了盡可能的“破壞”原圖像,在此加密系統(tǒng)中,加密算法先后進(jìn)行了像素?cái)?shù)值加密和像素分布加密兩部分,從兩方面先后“破壞”原圖,加密效果更好。
像素值加密
像素值加密分為兩步。
第一步,由于RBG三通道圖像以及單通道灰度圖的像素取值范圍是[0,255],所以可以先用255減去各個(gè)像素值做第一次像素值變換。
測(cè)試圖像如下所示:
經(jīng)過(guò)像素值第一步變換,結(jié)果如下:
第二步,打亂RGB三通道順序,將RGB變換為BRG。這一步只針對(duì)RGB三通道圖像,如果傳入圖像是灰度圖就只完成第一步。
在MATLAB中,傳入的三通道彩色圖像存儲(chǔ)格式是無(wú)符號(hào)整形8位(uint8)的三維矩陣。R(Red)通道的值存放在(*,*,1),G(Green)通道的值存放在(*,*,2),B(Blue)通道的值存放在(*,*,3)。經(jīng)過(guò)變換,將R(Red)通道的值存放在(*,*,2),G(Green)通道的值存放在(*,*,3),B(Blue)通道的值存放在(*,*,1)。下圖是在第一步輸出圖像的基礎(chǔ)上進(jìn)行第二步變換后的圖像,也是測(cè)試圖像完成像素值加密后的結(jié)果:
至此,像素值加密已經(jīng)完成。
按需寫作:
演示視頻:
點(diǎn)擊查看:系統(tǒng)演示視頻
運(yùn)行效果:
遠(yuǎn)程協(xié)助:
溫馨提示:索煒達(dá).猿創(chuàng)官方提供收費(fèi)遠(yuǎn)程協(xié)助,確保您項(xiàng)目運(yùn)行成功。
點(diǎn)擊查看:遠(yuǎn)程協(xié)助相關(guān)事項(xiàng)
我們提供完整項(xiàng)目文件清單如下:
文件目錄
├ 1.項(xiàng)目源碼
├ 2.運(yùn)行截圖
└ 3.演示視頻