專利名稱:一種基于圖像處理的數(shù)字資源加解密系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息技術(shù)領(lǐng)域,具體涉及一種基于圖像處理的數(shù)字資源加解密系統(tǒng)及方法。
背景技術(shù):
隨著數(shù)字化技術(shù)、多媒體技術(shù)、網(wǎng)絡(luò)技術(shù)和現(xiàn)代教育技術(shù)的發(fā)展與普及,數(shù)字化資源越來越豐富,而數(shù)字資源在互聯(lián)網(wǎng)上發(fā)布、傳播、共享和開放的數(shù)量也越來越大。但這些發(fā)布和共享的數(shù)字資源,如果沒有進(jìn)行訪問控制,則其被非法復(fù)制、篡改和使用也變得越來越容易,一些被非法取得的數(shù)字資源甚至被用于商業(yè)盈利性經(jīng)營,其版權(quán)擁有者的權(quán)益受到了極大的侵犯。因此,數(shù)字資源版權(quán)保護(hù)越來越受到了人們的廣泛關(guān)注,并已成為了信息安全領(lǐng)域的一個研究熱點。傳統(tǒng)的加密技術(shù),雖然可以使數(shù)字資源只被合法擁有密鑰者讀取,但是,加密的數(shù)字資源一旦被破譯,數(shù)字資源就能被非授權(quán)者輕易的復(fù)制和使用。
發(fā)明內(nèi)容
為了克服上述現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明的目的是提供一種基于圖像處理的數(shù)字資源加解密系統(tǒng)方法,該發(fā)明能夠更加簡潔靈活地實現(xiàn)數(shù)字資源保密性。為了實現(xiàn)本發(fā)明的上述目的,根據(jù)本發(fā)明的第一個方面,本發(fā)明提供了一種基于圖像處理的數(shù)字資源加解密方法,包 括如下步驟:S1:在顯示器上生成用戶界面,所述用戶界面用于原始圖像的導(dǎo)入、密鑰的輸入、嵌入?yún)?shù)的顯示與輸入、待加密數(shù)字資源的輸入和解密后數(shù)字資源的顯示;S2:利用處理器運(yùn)行加密方法或解密方法,實現(xiàn)對數(shù)字資源的加密或解密,所述加密方法用于把待加密數(shù)字資源嵌入所述原始圖像,得到已嵌入數(shù)字資源的加密圖像和待加密數(shù)字資源的嵌入?yún)?shù),所述解密方法用于從已嵌入數(shù)字資源的加密圖像中把數(shù)字資源解密出來并顯示;S3:在顯示器上生成可執(zhí)行文件,用于使所述加解密方法脫離Matlab環(huán)境運(yùn)行。在本發(fā)明的一種優(yōu)選實施例中,所述用戶界面是在Matlab環(huán)境下設(shè)計實現(xiàn)的GUI(Graphical User Interface)圖形用戶界面。在本發(fā)明的另一種優(yōu)選實施例中,所述加密方法的步驟為:S31:通過用戶界面導(dǎo)入原始圖像,得到原始圖像各像素點的灰度值數(shù)據(jù)矩陣X ;S32:通過所述用戶界面輸入密鑰key ;S33:在所述用戶界面的信息窗口中輸入待加密的數(shù)字資源resources,并將其轉(zhuǎn)換為二進(jìn)制碼;S34:利用隨機(jī)游走技術(shù)將所述待加密的數(shù)字資源信息的每一比特對應(yīng)于原始圖像的一個像素得到加密后圖像的數(shù)據(jù)矩陣,并保證加密后像素灰度的最后一位始終和帶加密數(shù)字資源保持一致;S35:以加密前后圖像直方圖的變化函數(shù)為目標(biāo)函數(shù),優(yōu)化得到嵌入了待加密數(shù)字資源的最終加密圖像數(shù)據(jù)矩陣Y,設(shè)原始圖像和加密圖像中灰度值為i的像素個數(shù)分別為Pi和P’ i,1=0, I, 2,…,255,則所述加密算法的數(shù)學(xué)公式為:
權(quán)利要求
1.一種基于圖像處理的數(shù)字資源加解密方法,其特征在于,包括如下步驟: S1:在顯示器上生成用戶界面,所述用戶界面用于原始圖像的導(dǎo)入、密鑰的輸入、嵌入?yún)?shù)的顯示與輸入、待加密數(shù)字資源的輸入和解密后數(shù)字資源的顯示; 52:利用處理器運(yùn)行加密方法或解密方法,實現(xiàn)對數(shù)字資源的加密或解密,所述加密方法用于把待加密數(shù)字資源嵌入所述原始圖像,得到已嵌入數(shù)字資源的加密圖像和待加密數(shù)字資源的嵌入?yún)?shù),所述解密方法用于從已嵌入數(shù)字資源的加密圖像中把數(shù)字資源解密出來并顯示; 53:在顯示器上生成可執(zhí)行文件,用于使所述加解密方法脫離Matlab環(huán)境運(yùn)行。
2.如權(quán)利要求1所述的基于圖像處理的數(shù)字資源加解密方法,其特征在于,所述用戶界面是在Matlab環(huán)境下設(shè)計實現(xiàn)的⑶I圖形用戶界面。
3.如權(quán)利 要求1所述的基于圖像處理的數(shù)字資源加解密方法,其特征在于,所述加密方法的步驟為: 531:通過用戶界面導(dǎo)入原始圖像,得到原始圖像各像素點的灰度值數(shù)據(jù)矩陣X ; 532:通過所述用戶界面輸入密鑰key ; 533:在所述用戶界面的信息窗口中輸入待加密的數(shù)字資源resources,并將其轉(zhuǎn)換為二進(jìn)制碼; S34:利用隨機(jī)游走技術(shù)將所述待加密的數(shù)字資源信息的每一比特對應(yīng)于原始圖像的一個像素得到加密后圖像的數(shù)據(jù)矩陣,并保證加密后像素灰度的最后一位始終和帶加密數(shù)字資源保持一致; S35:以加密前后圖像直方圖的變化函數(shù)為目標(biāo)函數(shù),優(yōu)化得到嵌入了待加密數(shù)字資源的最終加密圖像數(shù)據(jù)矩陣Y,設(shè)原始圖像和加密圖像中灰度值為i的像素個數(shù)分別為Pi和P’ y i=0, I, 2,…,255,則所述加密算法的數(shù)學(xué)公式為:
4.如權(quán)利要求3所述的基于圖像處理的數(shù)字資源加解密方法,其特征在于,保證加密后像素灰度的最后一位始終和待加密數(shù)字資源保持一致的方法為:如果一個比特與對應(yīng)像素灰度值的最后一位相同,則所述像素的灰度值不作改動;如果不同,則隨機(jī)的加I或減I。
5.如權(quán)利要求1或3所述的基于圖像處理的數(shù)字資源加解密方法,其特征在于,所述解密方法的步驟為: 551:通過所述用戶界面導(dǎo)入已嵌入數(shù)字資源的加密圖像并得到各像素點的灰度值數(shù)據(jù)矩陣Y ; 552:通過所述用戶界面輸入密鑰key ; 553:通過所述用戶界面輸入嵌入?yún)?shù)L和LL ; 554:利用所述加密算法的逆算法F_\通過[resources] = F—1 (Y, key, L, LL)得到解密后數(shù)字資源并在信息窗口中以字符串顯示出來。
6.如權(quán)利要求3或5所述的基于圖像處理的數(shù)字資源加解密方法,其特征在于,所述密鑰為字母、數(shù)字或符號之一以及三者的任意組合。
7.如權(quán)利要求1所述的基于圖像處理的數(shù)字資源加解密方法,其特征在于,生成所述可執(zhí)行文件的步驟為: 571:在Matlab的命令窗口輸入創(chuàng)建獨立應(yīng)用程序的編譯器命令: mcc-B sgl SDREDI_V01.m,用于調(diào)用Matlab編譯器已建立的⑶I圖形用戶界面的寫程序文件SDREDI_V01.m,生成對應(yīng)的c文件和使用c圖形庫的可執(zhí)行文件SDREDI_V01.exe ; 572:將可執(zhí)行文件SDREDI_V01.exe、工程文件SDREDI_V01.prj,以及Matlab中的編譯器安裝文件MCRInstaller.exe拷貝到同一文件夾下; S73:在需要利用加解密系統(tǒng)進(jìn)行加解密的計算機(jī)上運(yùn)行文件編譯器安裝文件MCRInstaller.exe,得到可執(zhí)行文件SDREDI_V01.exe脫離Matlab運(yùn)行所需的函數(shù)庫。
8.如權(quán)利要求1所述的基于圖像處理的數(shù)字資源加解密方法,其特征在于,所述原始圖像的格式為JPG、BMP或GIF格式。
9.一種基于圖像處理的數(shù)字資源加解密系統(tǒng),其特征在于,包括: 顯示器,所述顯示器上具有用戶界面模塊,所述用戶界面模塊用于原始圖像的導(dǎo)入、密鑰的輸入、嵌入?yún)?shù)的顯示與輸入、待加密數(shù)字資源的輸入和解密后數(shù)字資源的顯示; 處理器,所述處理器包括加密模塊、解密模塊和可執(zhí)行文件生成模塊,所述用戶界面模塊分別與加密模塊和解密模塊相連,所述加密模塊用于把通過所述用戶界面模塊輸入的待加密數(shù)字資源嵌入原始圖像并得到已嵌入數(shù)字資源的加密圖像和待加密數(shù)字資源的嵌入?yún)?shù),所述解密模塊用于從已嵌入數(shù)字資源的加密圖像中把數(shù)字資源解密出來并通過所述用戶界面模塊顯示;所述可執(zhí)行文件生成模塊分別與所述加密模塊和所述解密模塊相連,用于生成可執(zhí)行文件,使加解密方法脫離Matlab環(huán)境運(yùn)行。
全文摘要
本發(fā)明提出了一種基于圖像處理的數(shù)字資源加解密系統(tǒng)及方法,該加解密方法包括如下步驟在顯示器上生成用戶界面,用戶界面用于原始圖像的導(dǎo)入、密鑰的輸入、嵌入?yún)?shù)的顯示與輸入、待加密數(shù)字資源的輸入和解密后數(shù)字資源的顯示;利用處理器運(yùn)行加密方法或解密方法,實現(xiàn)對數(shù)字資源的加密或解密,加密方法用于把待加密數(shù)字資源嵌入所述原始圖像,得到已嵌入數(shù)字資源的加密圖像和待加密數(shù)字資源的嵌入?yún)?shù),解密方法用于從已嵌入數(shù)字資源的加密圖像中把數(shù)字資源解密出來并顯示;在顯示器上生成可執(zhí)行文件,用于使加解密方法脫離Matlab環(huán)境運(yùn)行。本發(fā)明的加解密方法具有很好的隱蔽性,本發(fā)明的加解密系統(tǒng)具有良好的實用性和靈活性,適用面廣。
文檔編號H04N21/2347GK103220551SQ201310078320
公開日2013年7月24日 申請日期2013年3月12日 優(yōu)先權(quán)日2013年3月12日
發(fā)明者樊愛軍, 王開發(fā), 王東強(qiáng), 王少青, 韓鵬, 孫懷義 申請人:重慶市科學(xué)技術(shù)研究院