


DOI:10.19850/j.cnki.2096-4706.2024.01.041
收稿日期:2023-05-31
基金項目:湖南省自然科學基金項目(2022JJ50077)
摘? 要:針對目前圖像加密技術存在的安全性問題與存儲冗余問題,提出一種基于區塊鏈技術的圖像安全加密算法。首先使用基于奇異值分解的加密算法對圖像進行加密,然后將加密后的密鑰上傳到IPFS星際文件系統中進行隱私保護,最后通過與Hyper ledger Fabric超級賬本平臺結合實現圖像防篡改。與傳統的存儲方式相比,所提出的加密算法能有效地防止圖像篡改,實現圖像隱私保護,減少鏈上存儲空間負載。
關鍵詞:區塊鏈技術;圖像加密;IPFS;奇異值分解
中圖分類號:TP391? ? 文獻標志碼:A? ? 文章編號:2096-4706(2024)01-0193-06
A Design of Anti-image Tampering Model Based on Blockchain
ZHANG Yinghao
(College of Computer Science, Hunan University of Technology, Zhuzhou? 412007, China)
Abstract: An image security encryption algorithm based on blockchain technology is proposed to address the security and storage redundancy issues in current image encryption technologies. Firstly, the image is encrypted using an encryption algorithm based on singular value decomposition. Then, the encrypted key is uploaded to the IPFS interstellar file system for privacy protection. Finally, image tamper prevention is achieved by combining it with the Hyper ledger Fabric super ledger platform. Compared with traditional storage methods, the proposed encryption algorithm can effectively prevent image tampering, achieve image privacy protection, and reduce storage space load on chain.
Keywords: blockchain technology; image encryption; IPFS; singular value decomposition
0? 引? 言
傳統意義上的圖像隱私保護通常以加密算法的改進為主要技術,加密之后的數據安全難以保障,然而在當今的信息技術高速發展的大環境下,隱私泄漏與真實完整的圖像被篡改是當今不容忽視的問題。
對應基于區塊鏈的圖像防篡改技術的研究,目前國內外已有眾多專家學者在該方面進行過研究,如數字水印、數字簽名、塊hash、時間戳等。
在對圖像進行加密處理的方法優化方面,王苗苗等[1]提出的雙重水印算法優化了圖像中嵌入水印信息造成的魯棒性與透明性的不平衡問題,但是在分區域過程中只是使用單一閾值進行簡單處理,存在一定的局限性;Lin等[2]提出的圖像篡改監測定位和恢復的方法,通過圖像拆分為三層對連續整體的圖像塊進行檢測定位,導致層次之間依賴性過強,即篡改的位置必須是一個連續的整體圖像塊,否則第2層和第3層就很難起到應有的作用;沈淑濤等[3]采用雙混沌可識別篡改圖像加密方法變換混沌圖像的超混沌序列來加密圖像;Zhou等[4]采用了離散小波變換、全相位離散余弦雙正交變換和奇異值分解提出了一種高魯棒性的混合水印算法,劉瑞禎等[5]提出了基于奇異值分解的數字水印算法來實現圖像水印的嵌入和恢復,抵抗各種圖像處理攻擊方面達到了較高的魯棒性,但這3種方法在存儲方式上都存在著安全漏洞。
在對圖像加密后密文存儲的整體架構設計問題上,Li等[6]通過壓縮感知、數字水印與區塊鏈技術和IPFS星際文件系統結合,基于水印的可靠性來達到圖像保密,Mohamed等[7]在醫療領域采用以太坊區塊鏈和IPFS星際文件系統進行分布式文件存儲,設計了一個能夠在無信任環境下高效共享和存儲大量醫療數據的框架,在不使用集中式基礎設施的情況下確保病人私人數據的安全和控制。Sohan等[8]使用IPFS星際文件系統和雙區塊鏈方法,通過將主區塊的引用添加到分類賬中來代替原始區塊,從而服務于區塊鏈的核心功能,達到提高吞吐量的目的和減少存儲膨脹問題。BEIR[9]、BSSSQS[10]、Smart-Med-Chain[11]、Privy-Sharing[12]等是一種點對點的隱私保護數據共享框架,各個方案在存儲模式上集成了去中心化且不可篡改的特性,有效地提升了數據安全性,但鏈上空間存儲冗余,出現了檢索時間成本過高的問題。
上述這些研究,在圖像加密方式與存儲模式上取得了一定的成果,但在存儲空間的復雜冗余與加密后的數據存儲安全性上存在不足,其中包括檢索效率低下,圖像加密算法時間復雜度高,鏈上存儲空間占用率過高,等等。
基于此,本文提出一種基于區塊鏈的防圖像篡改設計模式。通過奇異值分解對混沌圖像的像素進行置換,將圖像進行加密,將加密后的密鑰與圖像上傳到IPFS星際文件系統中。通過圖像特征提取來檢測圖像是否被篡改過,與傳統的圖像加密所采用的存儲方式相比,所提出的加密算法與存儲模式相結合,能更有效地防止圖像篡改,保障圖像數據的安全性,且減少鏈上空間冗余,提升加密密文數據檢索效率。
1? 基于區塊鏈圖像防篡改基本技術原理
1.1? 區塊鏈技術
在2008年中本聰于《比特幣:一種點對點的電子現金系統》[13]一文里,提出了一種去中心化的P2P網絡和密碼學技術,可以實現用戶之間的直接、安全、匿名的交易行為,屆時區塊鏈技術受到廣泛的關注。
區塊鏈是一種去中心化的分布式數據庫技術,它通過將數據分布在網絡中的多個節點上,實現了數據的去中心化存儲和管理。區塊鏈技術的核心是由多個區塊組成的鏈式結構,每個區塊包含了一定數量的交易記錄和一些元數據,同時還包含了前一個區塊的哈希值,這樣就形成了一個不可篡改的、去中心化的數據存儲系統。區塊鏈各區塊結構如圖1所示。
1.2? 共識算法
共識機制是區塊鏈的核心,現今區塊鏈的共識機制算法類型繁多,如工作量證明機制(PoW)、Paxos、權益證明機制(PoS)、Raft分布式一致性算法、股份授權證明機制(DPoS)、Pool驗證池和實用拜占庭容錯機制(PBFT),等等。所謂共識安全是,指選擇合適的共識機制算法對區塊鏈的數據安全進行嚴格保障的一種方案。
通過上面提及的共識機制算法特點進行承載的交易量、確認速度、是否開源、拜占庭容錯等特點進行比較,從而可以從中選擇適合防圖像篡改系統設計的共識算法。上述各算法特點比較如表1所示。
綜上表格所述,共識機制算法特點各異,本文結合韓璇等[14]提出的比特幣骨干協議中定義的一致性(Consistency)和活性(Liveness)兩個安全屬性來衡量和評估區塊鏈的共識機制安全。
1.3? 基于奇異值分解的圖像加密算法
基于數字圖像的保護目前主要是兩種方式:一種是信息隱藏,包括水印、匿名、隱寫術和覆蓋通道,另一種是加密,包括常規加密和其他方法,如混沌加密、置換加密等。其中也包含了基于奇異值分解對混沌圖像分解加密。
奇異值分解(Singular Value Decomposition, SVD)是一種矩陣分解方法,可以將一個矩陣分解為三個矩陣的乘積,是一種將矩陣對角化的數值計算方法,SVD在數據分析、機器學習、圖像處理、信號處理等領域都有廣泛的應用,常被用來數據降維、信號處理、圖像處理等方面。
一幅灰度圖像可以看成是由一個許多非負元素組成的矩陣。若一幅圖像用M表示,定義為M ∈ Rn×n,其中R為實數域,則矩陣M的奇異值分解定義如下:
(1)
其中,U ∈ Rn×n,V ∈ Rn×n, ∈ Rn×n,U、V都為正交矩陣。為非對角線上的元素都是0的矩陣,矩陣對角線上的元素:
θ1≥θ2≥…≥θr = … = θn = 0? ? ? ? ? ? ?(2)
r既是r(M),是矩陣M的秩,它等于非0奇異值的個數。
在對目標圖像進行加密時,圖像所受到的輕微擾動不會大幅度的改變被篡改圖像的奇異值,θ1為灰度圖像的主要能量的最大奇異值。
對一幅灰度圖像來說,奇異值根據像素的取值[0,255]來取值[0,510],將灰度圖像拆分為2×2的圖像塊,選取每一塊的最大奇異值組成128×128的圖像矩陣,再對圖像矩陣按不同量化步長來進行量化操作,以達到恢復被篡改圖像的清晰度要求。
將加密圖像拆分塊進行奇異值分解,每塊的最大奇異值經過提取量化形成量化圖像,對量化圖像進行置亂操作,采用二值編碼形成水印信息。在進行安全及完整性驗證與恢復加密篡改圖像時無須原始圖像M,它不但能夠檢測和定位篡改的2×2圖像塊,而且能夠較好地恢復被篡改的內容。
1.4? IPFS星際文件系統
星際文件系統(InterPlanetary File System, IPFS),它是一種分布式的點對點文件存儲和傳輸協議,擁有分布式存儲系統的可用性強、高性能、可擴展、節約成本和更好的安全性等特點。IPFS旨在創建一個持久性的、分布式的存儲系統,用于存儲和分享內容的協議具有去中心化、不可篡改、內容可尋址等特點,使得數據能夠從一個節點到另一個節點以更快的速度、更少的帶寬和更低的延遲傳輸,從而為Web提供更加安全、開放和高效的分布式網絡提供一個良好的支持環境。
IPFS存儲文件的流程可以分為以下幾個步驟:
第一步,將文件添加到本地IPFS節點,首先需要將文件加載到本地IPFS節點。這可以通過使用IPFS命令行界面來完成。添加文件時,IPFS會對文件內容使用哈希函數進行哈希,該哈希值用于在IPFS網絡中查找和訪問文件。
第二步,添加文件后,可以選擇將其發布到IPFS網絡中,使其他節點能夠訪問該文件。要發布文件,只需使用IPFS命令行界面或API發布文件的哈希值即可。此時,文件的哈希值將被廣播到IPFS網絡中,并復制到多個節點上,以便其他節點可以查找和下載文件。
第三步,要查找文件,可以使用文件的哈希值或文件名在IPFS網絡中搜索。當找到文件時,IPFS會返回包含該文件的節點的信息,以便下載該文件。
第四步,下載文件,使用文件的哈希值或文件名,可以下載文件并將其保存到本地文件系統中。當下載文件時,IPFS會從多個節點下載文件塊,并驗證下載的文件塊的哈希值,以確保下載的文件完整和正確。
IPFS數據存儲算法流程圖如圖2所示。
數據存儲的簡化算法流程如下:
1)INPUT:圖像加密密文數據。
2)OUTPUT:在IPFS中圖像加密密文數據的Hash值。
需要注意的是,IPFS存儲文件的過程是分布式的,文件不是存儲在單個中心化服務器上,而是分布在多個節點上。因此,IPFS在存儲和傳輸文件方面具有高可靠性、高效性和安全性。
2? 基于區塊鏈的圖像防篡改模型設計
基于區塊鏈的圖像加密IPFS系統是指采用奇異值分解的混沌圖像加密算法對圖像進行加密處理,實現加密后的IPFS存儲和管理。使用該系統可以對圖像的來源、版權、存儲時間、是否加密以及圖像是否被修改過等進行管理,從而保證在網絡上存儲和傳輸的圖片都是經過區塊鏈技術嚴格認證的。該系統主要包含了加密IPFS信息、信息提交、加密管理、信息統計、管理員管理、修改密碼的功能。總體設計功能針對性強,操作簡明扼要,滿足了各類實時需求,更方便,更快捷的進行系統管理。
2.1? 區塊平臺選擇
區塊鏈平臺按照受用對象范圍進行分類可以分為公有鏈、私有鏈和聯盟鏈,按照對象種類可以分為幣類、平臺類、應用類和資產代幣類。目前網絡上流行的四種受眾面廣的區塊鏈平臺如表2所示,包括各個平臺常用的合約語言、共識算法與數據庫。
從業務角度來說,Hyper ledger Fabric超級賬本平臺具備了獨特的分層結構,這層特性使得其可以進行私有事務的交易;實用的可拓展性與安全性也是超級賬本平臺的優勢,可以使其兼容大部分的應用場景。
結合表2與Hyper ledger Fabric超級賬本的特點進行綜合分析,通過將本系統模塊化設計與整體架構進行契合,本文選擇Hyper ledger Fabric超級賬本聯盟鏈作為平臺。
2.2? Hyper ledger Fabric+IPFS存儲框架設計
設計本系統從經濟層面與時間成本等多方面考量,由于僅在區塊鏈上存儲內容成本高且效率低,通過去中心化的存儲方案來降本增效。設計了一種將區塊鏈與星際文件系統結合的保護與存儲架構,將圖像加密密鑰數據輸入到IPFS文件系統,IPFS在接收到數據后返回圖像加密密文數據的Hash值。在其他節點申請訪問需要查看這些加密數據時,將會返回IPFS散列值向IPFS獲取密文數據請求。該框架也擁有一定的局限性,比如,這種方法是不保存的老舊訪問與交易記錄,取決于其所使用的賬戶樹技術交易網絡的局限性,使得交易網絡只包括一小部分。
為了解決上述區塊鏈存儲鏈上節點負載量大,存儲效率低下的問題,設計一種基于Hyper ledger Fabric平臺與IPFS文件系統結合的區塊鏈存儲框架,在一定程度上減少現有區塊鏈存儲的局限性[15],將世界狀態存放到Level DB中,將加密后的交易賬本(加密圖像秘鑰)存放到IPFS中,框架結構如圖3所示。
Hyper ledger Fabric中的賬本由世界狀態和交易賬本兩部分組成,它們彼此不同但卻相互關聯。世界狀態是一個數據庫,存儲了一組賬本狀態的當前值。
2.3? 系統架構設計
通過對模型進行模塊化設計,集成區塊鏈平臺的去中心化特征與分布式存儲模式,并通過奇異值分解的像素分塊量化再置亂保證圖像加密的安全性。
系統的設計整體上可劃分為應用層、智能合約層、共識層、網絡層、數據層五個層次,如圖4所示。
系統采用區塊鏈整體架構設計如下:
1)應用層。圖像防篡改系統所設計的用戶層打包封裝了多種案例及應用場景,用戶可以對系統進行操作,對用戶身份進行認證,給予使用人員與區塊的一個交互作用,用戶節點通過應用層進行交互,實現用戶節點與內置區塊的共識,通過設計的UI界面使用者可以清晰地了解與使用本系統。
2)合約層。區塊鏈的合約層的設計是系統最核心的部分,本文圖像防篡改系統中設計的區塊鏈合約層包括了防篡改的智能合約,通過合約層連接服務器來進行防偽識別,將底層區塊鏈的系統數據封裝以達到簡化的作用,將關鍵的圖像加密信息與業務數據通過區塊鏈網絡層保存在系統中。
區塊鏈圖像防篡改系統的合約層是被建立合約的計算機系統寫成一段可讀代碼,并被保存在系統的合約賬本之中。在平臺需要實現其功能時,將對操作信息執行相應的接收、處理、存儲和發送操作功能。
3)共識層。本文設計的防篡改系統中的共識層主要包含系統中的共識算法和共識機制,結合進行承載的交易量、確認速度、是否開源、拜占庭容錯是從眾多共識算法中選擇PBFT拜占庭算法的關鍵因素。
PBFT拜占庭算法所解決的問題是拜占庭將軍問題[16],即在存在消息丟失的不可靠信道上試圖通過消息傳遞的方式達到一致性是不可能的,解決關于在整個網絡中存在惡意節點的情況下保證最終決策的一致性、正確性的問題[17]。在PBFT拜占庭算法中,可以將節點分為三種類型,即主節點、客戶節點、備份節點,又能將主節點與備份節點稱為備份節點。拜占庭算法具體流程如圖5所示。
結合共識安全以上兩個屬性及每個共識機制的算法特點,選擇正確的共識算法以讓高度分散的節點在去中心化的區塊鏈網絡中高效地針對區塊數據的有效性達成共識。
4)網絡層。網絡層主要負責區塊鏈節點之間的傳播和驗證機制,包括節點之間的網絡通信,主要指區塊鏈網絡組網方式與區塊鏈節點之間的通信機制[18]。
在組網方式上,本系統網絡層架構設計采用點對點網絡(peer-to-peer networking, P2P)即對等網絡的組網技術,將區塊鏈的每個節點分布在各個不一致的物理地址上,各個節點權限與地位平級,無高級別節點,滿足區塊鏈去中心化的特性。
5)數據層。數據層即負責系統內部數據存儲的架構,主要由兩部分節點組成,一是分布式認證節點,其功能是在圖像防篡改系統中形成不可篡改的特征點,二是區塊鏈管理節點,其在防篡改系統中的職能工作是存儲重要數據信息,通過分布式認證節點對系統設計的用戶應用設置權限。
區塊鏈中的數據層是對加密數據進行存儲,將數據層設計成鏈式結構,與架構節點相同可將區塊分成區塊頭和區塊體,區塊頭包含識別信息,即本區塊與前一區塊的客戶簽名,區塊體主要存儲數據信息,即加密的數據或交易信息。其中,數據層的設計的數據區塊采用鏈式結構,通過非對稱加密算法與哈希算法,將圖像加密數據信息分布式的存儲在鏈。
綜上所述,上述的新型圖像防篡改系統集成了Hyper ledger Fabric區塊鏈的去中心化特征與IPFS星際文件系統的分布式存儲,并通過奇異值分解的像素分塊量化再置亂保證圖像加密的安全性,可以使防篡改系統在隱私保護中大幅提升安全性與數據完整性,確保用戶的信息安全。
3? 基于區塊鏈圖像防篡改應用效果分析
第3節闡述了基于區塊鏈的圖像防篡改模型的設計,本文通過對自選大格式圖像作為數據集上傳應用來進一步驗證模型的有效性,具體環境為Intel(R)Core(TM)i5-7300HQ CPU @ 2.50 GHz雙CPU和16 G運行內存,開發軟件使用操作系統版本Ubuntu 20.04,Node.js版本為10.16.0,通過Docker搭建Hyper ledger Fabric分布式集群和IPFS。
在Hyper ledger Fabric中,數據存儲在各個節點的本地數據庫中,節點的存儲空間將隨著鏈上圖像加密數據的增加而量級增加。而將Hyper ledger Fabric與IPFS相結合使用,則可以將一些數據存儲在IPFS中,從而減少Peer節點上的本地存儲空間。在Hyper ledger Fabric+IPFS中,Peer節點只存儲IPFS哈希值,而不是實際的文件數據。文件數據存儲在IPFS節點中,可以通過哈希值進行檢索和獲取。將Hyper ledger Fabric與Hyper ledger Fabric+IPFS結合兩種方式存儲空間進行對比,實驗得出的對比結果如圖6所示。
同時將Hyper ledger Fabric與Hyper ledger Fabric+
IPFS結合兩種方式存儲效率即存儲相同用量的加密圖像所使用的時間進行對比,實驗得出的對比結果如圖7所示。
通過上述實驗可以得到,Hyper ledger Fabric+IPFS的存儲架構模式在相同數量大小的圖像加密文件上傳存儲可以減少鏈上負載空間,提高存儲效率,降低運算成本。
4? 結? 論
本文提出的圖像防圖像篡改及隱私保護模式是基于超級賬本Hyper ledger Fabric、星際文件系統IPFS、智能合約、數字簽名和奇異值分解圖像加密等技術設計出的一種將Hyper ledger Fabric與IPFS相結合的保護系統,以各技術背景開發了圖像加密IPFS信息管理系統。該系統通過公有鏈與聯盟鏈的結合,可以實現圖像的隱私安全及防篡改、驗證與恢復;利用智能合約和IPFS技術實現了圖像加密數據的上傳與存儲,總的來說,本文所設計的系統與提出的模式綜合考慮了開發與運維成本、隱私安全、圖像完整、易用性和擴展性等問題,系統能以較低的經濟開銷成本和較少的系統運維來實現對圖像加密IPFS信息管理系統中的圖像數據進行高效安全的保護與存儲,在數字圖像安全領域對數字資源保護提供一些有益的想法。但在系統的運行速度與吞吐量上尚有不足,包括圖像加密算法的選擇也是亟待改進。在未來工作中,我們將對區塊鏈的共識機制算法進行改進來提高運算速度,增強系統運行速度并且在加密算法上進行改進。
參考文獻:
[1] 王苗苗,吳德陽,胡森,等.一種面向醫學圖像的篡改檢測雙重水印算法 [J/OL].激光與光電子學進展:1-20[2023-05-02].http://kns.cnki.net/kcms/detail/31.1690.tn.20220713.1903.537.html
[2] LIN C Y,CHANG S F. Semifragile watermarking for authenticating JPEG visual content [J].Proceedings of the SPIE,2000,3971:140-151.
[3] 沈淑濤,尼瑪扎西.基于區塊鏈技術的雙混沌可識篡改圖像加密方法 [J].吉林大學學報:工學版,2021,51(3):1055-1059.
[4] ZHOU X,ZHANG H,WANG C Y. A Robust Image Watermarking Technique Based on DWT,APDCBT,and SVD [J].Symmetry,2018,10(3):77-77.
[5] 劉瑞禎,譚鐵牛.基于奇異值分解的數字圖像水印方法 [J].電子學報,2001(2):168-171.
[6] LI M,ZENG L L,ZHAO L,et al. Blockchain-Watermarking for Compressive Sensed Images [J].IEEE Access,2021,9:56457-56467.
[7] JABARULLA M Y,LEE H N. Blockchain-Based Distributed Patient-Centric Image Management System [J].Applied Sciences,2021,11(1):196-196.
[8] SOHAN M S H,MAHMUD M,SIKDER M A B,et al. Increasing Throughput and Reducing Storage Bloating Problem Using IPFS and Dual-Blockchain Method [C]//2021 2nd International Conference on Robotics,Electrical and Signal Processing Techniques (ICREST).DHAKA:IEEE,2021:732-736.
[9] LI X X,LI J,YU F,et al. BEIR:A Blockchain-based Encrypted Image Retrieval Scheme [C]//2021 IEEE 24th International Conference on Computer Supported Cooperative Work in Design (CSCWD).Dalian:IEEE,2021:452-457.
[10] ABHI A I,KADER M F,SHIN S Y. BSSSQS:A Blockchain-Based Smart and Secured Scheme for Question Sharing in the Smart Education System [J].Journal of Information and Communication Convergence Engineering,2019,17(3):174-184.
[11] MAJDOUBI D E,BAKKALI H E,SADKI S. SmartMedChain:A Blockchain-Based Privacy-Preserving Smart Healthcare Framework [J].Journal of Healthcare Engineering,2021,2021:4145512-4145512.
[12] MAKHDOOM I,ZHOU I,ABOLHASAN M,et al. PrivySharing:A Blockchain-Based Framework for Integrity and Privacy-preserving Data Sharing in Smart Cities [C]//International Joint Conference on e-Business and Telecommunications.2019.[2023-05-07].https://www.zhangqiaokeyan.com/academic-conference-foreign_meeting_thesis/0705011465919.html.
[13] NAKAMOTO S. Bitcoin:A Peer-to-Peer Electronic Cash System [EB/OL].[2023-09-28].https://courses.cs.washington.edu/courses/csep552/18wi/papers/nakamoto-bitcoin.pdf.
[14] 韓璇,袁勇,王飛躍.區塊鏈安全問題:研究現狀與展望 [J].自動化學報,2019,45(1):206-225.
[15] ANDROULAKI E,MANEVICH Y,MURALIDHARAN S,et al. Hyperledger Fabric:A Distributed Operating System for Permissioned Blockchains [EB/OL].[2023-05-07].https://www.doc88.com/p-69559310327262.html.
[16] LAMPORT L,SHOSTAK R,PEASE M. The Byzantine generals problem [J].ACM Transactions on Programming Languages and Systems,1982,4(3):382-401.
[17] 王海勇,郭凱璇,潘啟青.基于投票機制的拜占庭容錯共識算法 [J].計算機應用,2019,39(6):1766-1771.
[18] 斯雪明,徐蜜雪,苑超.區塊鏈安全研究綜述 [J].密碼學報,2018,5(5):458-469.
作者簡介:張英豪(2000.06—),男,漢族,湖南衡陽人,碩士在讀,主要研究方向:圖像處理技術、區塊鏈技術。