第一部分 設計概述
1.1 設計目的
在多媒體技術高度發展的今天,視頻信息安全愈發受到人們的關注。傳統的視頻加密方法主要應用在軟件層面上,其算法設計復雜、加密速度慢,不適用于視頻的實時加密。FPGA 器件憑借高帶寬全并行的特性可以實現高速運算和視頻采集,能夠滿足視頻的實時性要求,但開發難度較大。
ARM 器件具備易于開發 的優勢,但其運算速度低。圖像的保密技術主要有圖像加密技術和圖像隱藏技術兩種。解密通過與加密算法配套的解密操作與密鑰,獲得原始圖像的信息,從而可以有效的保護原始圖像的隱秘性和信息的安全傳輸。
因此,本次比賽我們使用自制的 FPGA 板卡完成圖像及視頻加密解密系統, 發揮 FPGA 的高并行性及 FPGA 的 IP 核重用優勢,對比傳統軟件上實現的圖像加密解密速度慢,具有實時高速的優點。
本設計使用 Zynq7020 芯片采用自制的 雙 hdmi 拓展板,結合 FPGA 與 ARM 的優勢。在硬件層面分為加密端和解密端, 加密端實現基于攝像頭傳感器的視頻實時采集、加密和密匙流動態配置功能;解密端實現基于 hdmi in 數據的實時讀取、解密、并通過 hdmi out 接口輸出。在軟件算法層面主要結合了基于 Logistic 混沌序列的像素加密手段和基于 Arnold 貓映射的圖像置亂加密手段,具體內容見下面章節介紹。
1.2 應用領域
此技術可應用于傳輸含有個人隱私、企業信息、國家機密等重要信息的視頻及圖像數據,如安防監控、視頻會議等。
1.3 主要技術特點
在算法層面上,首先通過確定好圖像像素的地址,通過運用 Arnold 貓映射對確定好的像素地址進行置亂。由于該操作不會改變像素本身的值,存在被暴力破解的風險。因此在經過上述操作后,還需要通過使用 Logistic 混沌映射對像素點本身的值進行置亂,改變像素點的值,保證圖像的安全性。在硬件層面上,線性反饋位移寄存器所產生的偽隨機序列具有良好的相關 性,運用該特性實現混沌圖像加密算法硬件化。
1.4 關鍵性能指標
(1)密鑰空間
(2)密文圖像的相鄰像素間的相關性
(3)密圖的信息熵
(4)輸出視頻的幀率
1.5 主要創新點
(1)結合圖像與視頻的相關性,在靜態圖像加密技術的基礎上完成彩色視頻加密技術的開發;
(2)加密算法方面,結合了 Logistic 混沌映射圖像擴散算法和 Arnold 貓映射圖像置亂算法,具有較好的抵抗統計學、信息熵和差分攻擊能力,保證了圖像的安全性;
(3)運用 Zynq 系列芯片,在 FPGA 上完成視頻的采集、加密、解密和顯示, 在 ARM 上完成數據的傳輸以及各模塊的調用,充分結合了 ARM 易開發和 FPGA 高性能、低功耗的優勢。
第二部分 系統組成及功能說明
2.1 整體介紹
本設計使用 Zynq7020 芯片采用自制的雙 hdmi 拓展板,結合 FPGA 與 ARM 的優勢。在硬件層面分為加密端和解密端,加密端實現基于攝像頭傳感器的視頻實時采集、加密和密匙流動態配置功能;解密端實現基于 hdmi in 數據的實時讀取、解密、并通過 hdmi out 接口輸出。下面分別是加密端整體框圖和解密端整體框圖。
加密端框圖:
解密端框圖:
2.2 各模塊介紹
(1)OV7670 圖像采集模塊:
此模塊主要的任務是配置外部攝像頭和拼接視頻流數據。采用 SCCB 接口對外界 OV7670 攝像頭內部寄存器進行配置,同時提供 XCLK 時鐘源聯合控制攝像頭的幀率,顯示分辨率等一系列參數。
(2)HDMI_OUT 圖像并轉串輸出模塊:
此模塊主要功能是完成對物體識別模塊的視頻流轉化為 TMDS 差分信號,并完成時鐘的配置驅動外部 HDMI 顯示器或者接入另一塊板卡的 hdmi 輸入接口。
(3)HDMI_IN 圖像串轉并輸入模塊:
此模塊主要功能是完成對物體識別模塊的視頻流轉化為 TMDS 差分信號,并完成時鐘的配置驅動外部 HDMI 顯示器。顯示器將實時顯示雙攝像頭的畫面,在有入侵情況下完成對物體的框選,使監控更直觀方便。
(4)基于 Arnold 貓變換&logistic 混沌序列圖像加密模塊:
該模塊主要完成了對于一幀圖像數據的 Arnold 置亂加密與基于 logistic 混沌序列的像素點加密。其中置亂次數及密匙流為加密雙方提前約定,固化與此 ip 中。采用 axi4-s 的視頻流數據格式,基于 xilinx 的視頻流標準,具有較好的可移植性。
(5)基于 Arnold 貓變換&logistic 混沌序列圖像解密模塊:
該模塊主要完成了對于一幀圖像數據的 Arnold 逆置亂解密與基于 logistic 混沌序列的像素點解密。注意兩者順序與加密模塊正好相反,其中置亂次數及密匙流為加密雙方提前約定,固化與此 ip 中。采用 axi4-s 的視頻流數據格式,基于 xilinx 的視頻流標準,具有較好的可移植性。
第三部分 完成情況及性能參數
3.1 灰度直方圖統計
圖像的灰度直方圖可以反映圖像中像素灰度的分布情況,通過圖像灰度的分布特點來進行圖像的恢復,攻擊者可以利用這一特性對加密圖像進行攻擊。如果 加密后的圖像的灰度值分布沒有規律可循,攻擊者也就無法通過像素灰度的分布特征來恢復圖像。我們通過 matlab 仿真運算得到基于 Arnold 貓變換&logistic 混沌序列圖像加密算法的加密后擁有較好的加密效果。
3.2 像素點相關性分析
圖像的各相鄰像素之間通常有一定的相關性,攻擊者如果能夠利用好這個現 象就有機會對加密圖像實施攻擊。所以對加密者而言,能否降低圖像像素間的相關性是評價加密算法是否可行的一個重要依據。
所以引入相關系數來衡量圖像相 鄰像素間的相關性。可以看到原圖的水平、垂直和對角線方向的相鄰像素相關性 很強,而加密后的圖像水平、垂直和對角線方向上的相鄰像素間相關系數值很小, 尤其是水平方向上的相關系數,為 5.186×10-4,遠小于 0.01,即相關性很弱。
第四部分 總結
可擴展之處
(1)視頻圖像采集格式為 RGB888,即一個像素會占用 24bit 的空間,由這種格式組成一幅 640x480 的圖像需要 1MB 左右,這種原始視頻數據對于存儲器的容量有很高的要求,對于后續的視頻處理和傳輸工作都有很大的局限性。因此,后續可以設計一些算法對視頻數據進行壓縮,為存儲器騰出空間,提高存儲空間資源。
(2)本系統中采用 HDMI 實現加密視頻數據板間傳輸,這種傳輸方式距離近,暫時無法遠距離傳播。因此,后續可以加入以太網等網絡傳輸方式對視頻進行傳輸,以推廣該技術的應用。
作品來源:Xilinx開源社區,已授權,作者:林澤南、崔忠仁、陳沛杰。
編輯:jq
-
FPGA
+關注
關注
1626文章
21666瀏覽量
601834 -
芯片
+關注
關注
453文章
50402瀏覽量
421800 -
ARM
+關注
關注
134文章
9046瀏覽量
366815 -
仿真
+關注
關注
50文章
4042瀏覽量
133414
原文標題:基于 FPGA 的圖像及視頻加密解密系統
文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術江湖】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論