【同态加密算法的学习日记】
文章目錄
- 圖像魯棒可逆水印算法
- 1.摘要
- 2.Paillier加密系統
- 2.cmake
- 3.VTK
- 4.NTL數論庫
- 5.圖像加密評判指標
- 1.PSNR——峰值信噪比
- 總結
圖像魯棒可逆水印算法
來源:項世軍,楊樂.基于同態加密系統的圖像魯棒可逆水印算法.軟件學報,2018,29(4):957-972.[http://www.jos.org.cn/1000-9825/5406.htm]
提示:以下是本篇文章正文內容,下面案例可供參考
1.摘要
可逆水印算法分為以下五步:
1. 對原始圖像進行8*8分塊,加密得原始圖像的密文圖像 2. 計算各密文分塊統計量,平方圖平移來嵌入水印信息 3. 在接收方可從密文圖像或明圖像直方圖中提取水印,并反平移恢復密文圖像或原始圖像 4. 含水印的密文圖像解密后,可從其統計量直方圖中提取水印信息和恢復原始圖像 5. 解密后含水印圖像被攻擊后,仍可以正確提取水印該算法實現了直接在密文圖像中嵌入水印,并分別在加密域或明文域提取水印,恢復原始密文或明文圖像。
2.Paillier加密系統
同態性:加密后可直接對密文進行相應運算,結果與明文一致
概率性:對于相同明文,不同加密過程可得到不同密文
密鑰生成
p,q:隨機選擇的兩個較大質數 lambda:p-1和q-1的最小公倍數(私鑰) gcd:(計算兩數的)最大公約數 lcm:最小公倍數 (N,g)公鑰加密過程
輸入明文m,采用公鑰(N,g)加密后得密文c。
解密過程
利用私鑰對密文c進行解密,得到明文m
半同態加密
半同態加法加密:將兩密文相乘取模后的密文進行解密,得到與密文對應的兩明文之和
2.cmake
cmake:cross platform make
定義:跨平臺的高級編譯配置工具,可以用簡單的語句來描述所有平臺的編譯過程
makefile:makefile關系到了整個工程的編譯規則。一個工程中的源文件不計數,其按類型、功能、模塊分別放在若干個目錄中,makefile定義了一系列的規則來指定,哪些文件需要先編譯,哪些文件需要后編譯,哪些文件需要重新編譯,甚至于進行更復雜的功能操作
作用:有效地描述這些文件之間的依賴關系以及處理命令,當個別文件改動后僅執行必要的處理,而不必重復整個編譯過程,可以大大提高軟件開發的效率。
借助cmake進行VTK的環境配置
靜態編譯:在編譯時把所有模塊都編譯進可執行文件里,類似于帶著工具包到處跑,不需要周圍環境提供相應工具,不受環境影響。
動態編譯:將應用程序需要的模塊都編譯成動態鏈接庫DLL,運行時用到哪個模塊就調用哪個DLL,會受到環境影響。
3.VTK
環境配置:借助VTK
靜態編譯:在編譯時把所有模塊都編譯進可執行文件里,類似于帶著工具包到處跑,不需要周圍環境提供相應工具,不受環境影響.
動態編譯:將應用程序需要的模塊都編譯成動態鏈接庫DLL,運行時用到哪個模塊就調用哪個DLL,會受到環境影響。
4.NTL數論庫
定義:NTL是一種高性能的可移植C ++庫,為任意長度的整數提供數據結構和算法。用于整數和有限域上的向量,矩陣和多項式以及任意精度的浮點運算。
作用:NTL為代表數學對象的各種類提供了一個干凈一致的接口。它為輕松快速地實現新的數論算法提供了良好的環境,而又不影響性能。
原文鏈接:http://t.csdn.cn/mz7c9
NTL為以下方面提供了最新算法的高質量實現:
5.圖像加密評判指標
1.PSNR——峰值信噪比
它是原圖像與被處理圖像之間的均方誤差相對于(2n-1)2的對數值(信號最大值的平方,n是每個采樣值的比特數),它的單位是dB。PSNR數值越高,則兩圖像相似度更高。
MSE:原圖像與密文圖像之間均方誤差。
總結
總結
以上是生活随笔為你收集整理的【同态加密算法的学习日记】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python 框架 之 Scrapy 爬
- 下一篇: 2019如何转换2010_9102年,你