一種基於圖像傳輸的加密解密方法及系統的製作方法
2023-05-10 18:50:06 1
專利名稱:一種基於圖像傳輸的加密解密方法及系統的製作方法
技術領域:
本發明涉及數字家庭技術領域,尤其涉及一種基於圖像傳輸的加密解密方法及系統。
背景技術:
隨著網絡和計算機技術的飛速發展,遠距離信息傳輸變得越來越簡單,從而促使社會各個領域的工作方式呈現多樣性。比如在醫學領域,遠程的專家會診是近幾年發展起來的一項特殊業務。該業務既提高了一些中小城市醫療技術水平更節省了專家會診的時間成本和交通成本。專家在遠程診斷時,病人的病理圖片(比如X光片等)對診斷結果起到至關重要的作用,所以對病理圖片的要求就非常高,往往需要圖片非常精細,同時又必須保證圖像在傳輸過程中的完整性,不能出現哪怕一個像素的差錯或者被惡意篡改。另外病理圖片涉及到很多的隱私,所以必須對圖片進行一定的安全加密。在現有的基於算法的加密圖像方案中,比較安全的要屬基於hash函數的MD5加密算法,密碼學Hash函數能夠用於數據完整性和消息認證,其基本想是把Hash函數值看成輸入的消息摘要,當輸入中的任何一個二進位位發生變化時都將引起Hash函數值的變化。 Hash函數能夠接受任意長的消息為輸入,並產生固定長的輸出,產生的Hash值可以看成是文件、消息和其他數據塊的「指紋」,它滿足用於消息認證的密碼學性質。它具有單向性、抗弱碰撞以及抗強碰撞等特性。因此Hash函數可以用於消息或文件的完整性檢驗。MD5的全稱是Message2 DigestAlgorithm 5 (信息-摘要算法),在90年代初由M ITLaborat ory for Computer Sci2ence 和 RS A Data Security I nc 的 Ronald L. Rivest 開發出來,經MD2、MD3和MD4發展而來。它的作用是讓大容量信息在用數字籤名軟體籤署私人密匙前被"壓縮"成一種保密的格式(就是把一個任意長度的字節串變換成一定長的大整數)。它可以利用一個隨機的消息輸入(比如一幅數字圖像)產生一個128位的信息摘要。不同的文件,則會得到不同的128位信息摘要輸出。因此MD5的典型應用是對一段信息產生信息摘要,以防止被篡改,其傳輸流程圖如圖I所示。傳統的加密算法不能針對圖像位圖本身進行有效地加密,只是對圖像文件本身進行的加密,如果某幾個像素出現差錯則將無法查出。傳統加密算法,已公布算法破解的可行性,已不再安全或者安全性很低。
發明內容
基於現有技術存在的問題,本發明實施例提供了一種基於圖像傳輸的加密解密方法及系統,它解決了圖像傳輸過程中的惡意篡改和傳輸差錯問題,同時利用圖像位加密技術,將圖像本身的MD5值作為加密的周期序列,採用獨特的加密方法對圖像進行合理有序的加密,從而達到圖像安全傳輸的目的。此算法易實現、運算量小、應用多樣、效果好,在實現驗證圖像完整性功能的同時,解決了圖像安全性問題。基於上述問題,本發明實施例提供了一種基於圖像傳輸的加密方法,包括
根據消息摘要算法第五版MD5算法計算得到待加密圖片中數字圖像的MD5值;解析所述數字圖像的像素矩陣;根據像素的分塊順序,以 16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成加密圖片; 將所述加密圖片傳輸到解密端。所述方法還包括檢測加密圖片的加密效果,如果加密效果達不到預先設置的門限值,則基於D5算法對加密圖片再次加密,直到所述加密效果達到預先設置的門限值。具體包括在加密過程中採取行像素矩陣從左到右,列像素從上到下的順序,先行後列與MD5 至進行異或運算;和/或在加密過程中採取行像素矩陣從右到左,列像素從上到下的順序,先行後列與MD5 值進行異或運算;和/或在加密過程中採取行像素從左到右,列像素從下到上,先行後列與MD5至進行異或運算;和/或在加密的過程中採取行像素從右到左,列像素從下到上,先行後列與MD5至進行異或運算。相應的,本發明實施例還提供了一種基於圖像傳輸的解密方法,包括接收加密端發送的加密圖片;解析加密圖片中的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成解密圖片。所述方法之後還包括計算所述解密圖像MD5值判斷所述加密圖像是否經過篡改,如果經過篡改,則終止操作,如果沒經過篡改,則根據已知的加密次數對解密圖片進行相應的解密操作。相應的,本發明實施例還提供了一種基於圖像傳輸的加密解密系統,所述系統包括加密端和解密端,其中加密端用於根據消息摘要算法第五版MD5算法計算得到待加密圖片中數字圖像的MD5值;解析所述數字圖像的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成加密圖片;將所述加密圖片傳輸到解密端;解密端用於接收加密端發送的加密圖片;解析加密圖片中的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成解密圖片。所述加密端還用於檢測加密圖片的加密效果,如果加密效果達不到預先設置的門限值,則給予D5算法對加密圖片再次加密,直到所述加密效果達到預先設置的門限值。在多次加密情況下,所述解密端還用於計算所述解密圖像MD5值判斷所述加密圖像是否經過篡改,如果經過篡改,則終止操作;如果沒經過篡改,則根據已知的加密次數對解密圖像進行相應的解密操作。所述加密端加密的方式包括在加密過程中採取行像素矩陣從左到右,列像素從上到下的順序,先行後列與MD5至進行異或運算;和/或在加密過程中採取行像素矩陣從右到左,列像素從上到下的順序,先行後列與MD5 值進行異或運算;和/或在加密過程中採取 行像素從左到右,列像素從下到上,先行後列與MD5至進行異或運算;和/或在加密的過程中採取行像素從右到左,列像素從下到上,先行後列與MD5至進行異或運算。所述加密端在多次加密過程中,採用同一種加密方式加密或者四種加密方式相互間的組合。綜上,通過實施本發明實施例,該算法充分利用了 MD5算法的優勢,並增添了位加密技術,使之更適合與圖像加密應用,增加了破譯的難度,在安全性和分發效率方面比傳統的算法都有明顯的性能提高。本發明利用圖像位加密技術,將圖像本身的MD5值作為加密的周期序列,採用獨特的加密方法對圖像進行合理有序的加密,從而達到圖像安全傳輸的目的。此算法易實現、運算量小、應用多樣、效果好,在實現驗證圖像完整性功能的同時,保證了圖像安全性傳輸。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其它的附圖。圖I是現有技術中的基於MD5算法加密的方法流程圖;圖2是本發明實施例中的基於圖像傳輸的加密方法流程圖;圖3是本發明實施例中的加密方法中的像素矩陣加密方式示意圖;圖4是本發明實施例中的基於圖像傳輸的解密方法流程圖;圖5是本發明實施例中的基於圖像傳輸的加密解密系統結構圖。
具體實施例方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。本發明實施例主要是基於位加密技術在圖像加密中的應用圖像加密就是對圖像進行某種變換,使得變換後的圖像與原始圖像存在顏色、亮度或輪廓等定性或定量的視覺差異。位運算加密圖像的思想就是利用某種方法得到一系列的隨機或偽隨機的以字節為單位的數據,然後把他們和一幅圖像的數據逐字節進行特定的位運算,以改變原有圖像的數據信息。因為加密之後的圖像必須能在接收端被正確地解密,因此,這種位運算必須具有可逆性。本文所採用的位運算是異或運算。位運算加密方法主要有兩種,,一種是採用流密碼加密,另外一種是採用分組密碼加密。本文採用的是分組加密方法,該方法利用圖像本身得到的128位信息摘要,將明文分成長度為128位的分組,進行異或運算,得到密文。假設A為明文的一個分組,B為信息摘要,C為密文,則C = A XOR B。根據異或運算的特點,將C異或B,就可以得到A,這樣就完成了密文解密操作。具體的,圖2示出了本發明實施例中的基於圖像傳輸的加密方法流程圖,包括如下步驟開始;S201 :根據消息摘要算法第五版MD5值算法計算得到待加密圖片中數字圖像的 MD5 值;在本步驟中,根據MD5算法計算得到待加密數字圖像的MD5值,轉換為128位的二進位序列。S202 :解析數字圖像 的像素矩陣;這裡可以利用MT LAB工具讀入該數字圖片,並形成像素矩陣存儲。S203 :根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成加密圖片;S204 :檢測加密圖片的加密效果,判斷加密加過是否達到預先設置的門限值;如果加密效果達不到預先設置的門限值,則基於D5算法對加密圖片再次加密,即進入到S201進行二次加密,直到所述加密效果達到預先設置的門限值。需要對步驟S203和S204說明的是,該算法的特點之一就是可以根據圖像加密效果的可以進行多次加密,一般情況下四次以內加密完全可以滿足實際應用的需求。由於加密序列存在周期性,怎樣對圖像矩陣B進行分塊將會影響最終的加密效果。因此為了提高加密效果,本算法可以針對每次加密過程採取不同的像素分塊順序。第一次加密採取行像素從左到右,列像素從上到下的順序,先行後列,如圖3 (a)所示,第二次加密採取行像素從右到左,列像素從上到下的順序,先行後列,如圖3(b)所示,第三次加密採取行像素從左到右,列像素從下到上,先行後列,如圖3(c)所示,第四次加密採取行像素從右到左,列像素從下到上,先行後列,如圖3(d)所示。如果存在一次加密過程時,本算法可以在加密過程中採取圖3中的任一方式去加密。當然在多次加密過程中,可以採取這四種加密方式不同組合,也可以採取同一方式,例如在四次加密過程中,可以四次都採取如圖3(a)所示的加密過程,也可以都採取四種加密方式的組合,即本次加密組合方式可以為如下形式AAAA、ABCD、AABB, AAAB, ABCA, AABC, ABAB、ABBB等;兩次加密過程中,可以採取AA組合也可以採取AB組合。S205 :將所述加密圖片傳輸到解密端。結束。具體的,圖4示出了本發明實施例中的基於圖像傳輸的解密方法流程圖,包括如下步驟開始;S401 :接收加密端發送的加密圖片;S402 :解析加密圖片中的像素矩陣;S403 :根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成解密圖片;
S404 :判斷加密圖像是否經過篡改,如果進過篡改,則結束流程,如果沒有進過篡改則進入到S405 ;S405 :根據加密次數判斷是否需要再加密,如果需要再解密則進入到S402,否則解S完成;結束。需要說明的是,如果這裡存在一次加密過程,其在S403之後即可完成解密過程, 如果存在兩次或者多次以上的加密過程,則需要進入到S404和S405步驟進行多次解密和篡改識別過程。在解密端存儲有加密端加密相對應的解密規則,其加密與解密實現一一對應的關係。相應的,圖5還示出了本發明實施例中的基於圖像傳輸的加密解密系統,該加密解密系統包括加密端和解密端,其中加密端用於根據消息摘要算法第五版MD5算法計算得到待加密圖片中數字圖像的MD5值;解析所述數字圖像的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成加密圖片;將所述加密圖片傳輸到解密端;解密端用於接收加密端發送的加密圖片;解析加密圖片中的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成解密圖片。這裡的所述加密端還用於檢測加密圖片的加密效果,如果加密效果達不到預先設置的門限值,則給予D5算法對加密圖片再次加密,直到所述加密效果達到預先設置的門限值。在多次加密情況下,該解密端還用於計算解密圖像MD5值判斷所述加密圖像是否經過篡改,如果經過篡改,則終止操作;如果沒經過篡改,則根據已知的加密次數對解密圖像進行相應的解密操作。這裡的加密端加密的方式包括在加密過程中採取行像素矩陣從左到右,列像素從上到下的順序,先行後列與MD5 至進行異或運算;和/或在加密過程中採取行像素矩陣從右到左,列像素從上到下的順序,先行後列與MD5 值進行異或運算;和/或在加密過程中採取行像素從左到右,列像素從下到上,先行後列與MD5至進行異或運算;和/或在加密的過程中採取行像素從右到左,列像素從下到上,先行後列與MD5至進行異或運算。
該加密端在多次加密過程中,可以採用同一種加密方式連續加密,也可以採用四種加密方式相互間的組合進行加密。綜上,通過實施本發明實施例,該算法充分利用了 MD5算法的優勢,並增添了位加密技術,使之更適合與圖像加密應用,增加了破譯的難度,在安全性和分發效率方面比傳統的算法都有明顯的性能提高。本發明利用圖像位加密技術,將圖像本身的MD5值作為加密的周期序列,採用獨特的加密方法對圖像進行合理有序的加密,從而達到圖像安全傳輸的目的。此算法易實現、運算量小、應用多樣、效果好,在實現驗證圖像完整性功能的同時,保證了圖像安全性傳輸。以上對本發明實施例所提供的基於圖像傳輸的加密解密方法及系統進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式
及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制
權利要求
1.一種基於圖像傳輸的加密方法,其特徵在於,包括根據消息摘要算法第五版MD5算法計算得到待加密圖片中數字圖像的MD5值;解析所述數字圖像的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成加密圖片;將所述加密圖片傳輸到解密端。
2.如權利要求I所述的基於圖像傳輸的加密方法,其特徵在於,所述方法還包括 檢測加密圖片的加密效果,如果加密效果達不到預先設置的門限值,則基於D5算法對加密圖片再次加密,直到所述加密效果達到預先設置的門限值。
3.如權利要求I或2所述的基於圖像傳輸的加密方法,其特徵在於,所述根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成加密圖片具體包括在加密過程中採取行像素矩陣從左到右,列像素從上到下的順序,先行後列與MD5至進行異或運算;和/或在加密過程中採取行像素矩陣從右到左,列像素從上到下的順序,先行後列與MD5值進行異或運算;和/或在加密過程中採取行像素從左到右,列像素從下到上,先行後列與MD5至進行異或運算;和/或在加密的過程中採取行像素從右到左,列像素從下到上,先行後列與MD5至進行異或運算。
4.一種基於圖像傳輸的解密方法,其特徵在於,包括接收加密端發送的加密圖片;解析加密圖片中的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成解密圖片。
5.如權利要求4所述的基於圖像傳輸的解密方法,其特徵在於,所述方法之後還包括 計算所述解密圖像MD5值判斷所述加密圖像是否經過篡改,如果經過篡改,則終止操作,如果沒經過篡改,則根據已知的加密次數對解密圖片進行相應的解密操作。
6.一種基於圖像傳輸的加密解密系統,其特徵在於,所述系統包括加密端和解密端,其中加密端用於根據消息摘要算法第五版MD5算法計算得到待加密圖片中數字圖像的MD5 值;解析所述數字圖像的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成加密圖片;將所述加密圖片傳輸到解密端;解密端用於接收加密端發送的加密圖片;解析加密圖片中的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成解密圖片。
7.如權利要求6所述的基於圖像傳輸的加密解密系統,其特徵在於,所述加密端還用於檢測加密圖片的加密效果,如果加密效果達不到預先設置的門限值,則給予D5算法對加密圖片再次加密,直到所述加密效果達到預先設置的門限值。
8.如權利要求7所述的基於圖像傳輸的加密解密系統,其特徵在於,在多次加密情況下,所述解密端還用於計算所述解密圖像MD5值判斷所述加密圖像是否經過篡改,如果經過篡改,則終止操作;如果沒經過篡改,則根據已知的加密次數對解密圖像進行相應的解密操作。
9.如權利要求6至8任一項所述的基於圖像傳輸的加密解密系統,其特徵在於,所述加密端加密的方式包括在加密過程中採取行像素矩陣從左到右,列像素從上到下的順序,先行後列與MD5至進行異或運算;和/或在加密過程中採取行像素矩陣從右到左,列像素從上到下的順序,先行後列與MD5值進行異或運算;和/或在加密過程中採取行像素從左到右,列像素從下到上,先行後列與MD5至進行異或運算;和/或在加密的過程中採取行像素從右到左,列像素從下到上,先行後列與MD5至進行異或運算。
10.如權利要求9所述的基於圖像傳輸的加密解密系統,其特徵在於,所述加密端在多次加密過程中,採用同一種加密方式加密或者四種加密方式相互間的組合。
全文摘要
本發明實施例公開了一種基於圖像傳輸的加密方法,包括根據消息摘要算法第五版MD5算法計算得到待加密圖片中數字圖像的MD5值;解析所述數字圖像的像素矩陣;根據像素的分塊順序,以16個像素為分塊形成的像素矩陣與MD5值進行異或運算,形成加密圖片;將所述加密圖片傳輸到解密端。本發明實施例還公開了一種基於圖像傳輸的解密方法和加密解密系統,通過實施本發明實施例,此算法易實現、運算量小、應用多樣、效果好,在實現驗證圖像完整性功能的同時,保證了圖像安全性傳輸。
文檔編號H04N1/44GK102625025SQ201210083700
公開日2012年8月1日 申請日期2012年3月26日 優先權日2012年3月26日
發明者林格, 王佳, 羅笑南, 陳湘萍 申請人:中山大學