資料介紹
PNG是一種圖像格式,始于1995年,作為一種頗受歡迎的圖像格式,PNG至今仍十分盛行。一般而言,PNG以無損失壓縮或處理透明像素的能力為人所知。然而,我并不想從泛泛的角度去看待不同的圖像格式,而是嘗著用不同的方式讓它們發(fā)生故障,你有沒有想過,PNG發(fā)生故障時是什么效果呢?
校驗和(Checksum)
讓我們首先來看看校驗和(Checksum)系統(tǒng)中的CRC32算法。這一算法通常用于確認受損圖像,當它偵測到圖像文件受損時,不會在一般的圖片閱讀器上顯現(xiàn)出來。因此,若想使PNG發(fā)生故障,用諸如文本編輯器或二進制編輯器重寫部分二進制數(shù)據(jù)的簡單方法是行不通的。換句話說,“黑掉”PNG之難,難于上青天。
因此,為了能順利“黑掉”PNG,我們需要根據(jù)PNG的格式規(guī)范(PNG Specification)來做。這意味著,解碼CRC32算法后要對數(shù)據(jù)進行重寫和重新計算,并將其綁定到已經(jīng)編輯的數(shù)據(jù)上。
狀態(tài)(State)
接下來,我們看看PNG的轉(zhuǎn)碼過程。表1簡要地顯示了PNG編碼流工作流程。包括四步:原始數(shù)據(jù)、過濾后數(shù)據(jù)、壓縮后數(shù)據(jù)、格式化的PNG。
表1 PNG編碼流
理論上來說,上述四個步驟都可以成為“下手”的目標。然而,從“原始數(shù)據(jù)”下手跟從BMP下手一樣,技術(shù)上而言,并不能把它稱之為“PNG故障”。而以最后一步“格式化的PNG”為目標也行不通,原因在于上文提到的校驗和系統(tǒng)的工作原理,因此無法產(chǎn)生故障。
現(xiàn)在,能供我們下手的就只有“過濾后數(shù)據(jù)”或“壓縮后數(shù)據(jù)”兩個步驟,只要方法正確,就可以使PNG故障形成。當我攻擊“過濾后數(shù)據(jù)”時,產(chǎn)生的效果非常明顯,故障元素好像花瓣一樣彌漫了整張圖像,過濾器之間的差異在“過濾后數(shù)據(jù)”受到攻擊時變得尤為明顯。另一方面,“壓縮后數(shù)據(jù)”故障受到了它們自身的壓縮算法的影響(Deflate壓縮),因此顯示出了一種與雪花噪點類似的圖片效果。
當然,在轉(zhuǎn)碼過程之外,也有其他的過程能影響PNG故障的圖案,例如透明像素和interlace。
決定PNG故障圖案最重要的決定因素是過濾的過程,這一過程通過某種算法將每一層掃描線的為壓縮像素數(shù)據(jù)進行轉(zhuǎn)換,從而提升壓縮效率。過濾包括四種算法和五種過濾類型,分別為Sub、Up、Average、Paeth和None(None為無過濾)。PNG圖像通常在使用最適當?shù)倪^濾類型對每一層掃描線進行過濾后才開始壓縮,因此,在PNG圖像生成之后,五種壓縮會合為一體。
這五種過濾通常只是促進壓縮效率的提升,因此無論使用哪一層過濾,輸出結(jié)果都一樣。然而,當過濾后的數(shù)據(jù)受到損壞后,輸出結(jié)果會顯示出明顯的差異。當一個圖像經(jīng)過優(yōu)化,并同時具備上述五種過濾效果后,就很難辨別出不同的過濾效果。然而當同一個單一的過濾應(yīng)用在每一條掃描線上,圖像出現(xiàn)故障時,差異就很明顯了。
下面我會展示每一種過濾的效果差異,當我們仔細留意不同的效果時,會發(fā)覺哪一種過濾會讓PNG故障的部分產(chǎn)生哪種美麗的效果。是的,這些圖像的確很美麗。
- FANUC系統(tǒng)共性故障排除及故障分析 4次下載
- 電氣設(shè)備故障檢測診斷方法及實例 0次下載
- 繼電保護用開關(guān)電源的故障分析及措施綜述 14次下載
- 常見電動機故障原因分析資料下載
- 實例:觸摸屏故障的診斷處理方法資料下載
- 邏輯分析儀設(shè)計實例 54次下載
- 汽車防盜報警器常見故障原因分析 0次下載
- 汽車發(fā)動機回火放炮故障原因分析 0次下載
- 幾款示波器常見故障分析與檢修實例_上 23次下載
- 幾款示波器常見故障分析與檢修實例_下 12次下載
- 壓縮機故障原因分析PDF 6次下載
- 微機保護裝置逆變電源故障原因分析 20次下載
- 高線軋機故障診斷實例分析
- 碰摩故障診斷實例研究
- GSM交換故障實例
- 變頻器缺相故障原因分析及維修方法 5944次閱讀
- 電能質(zhì)量分析儀的常見故障及原因分析 790次閱讀
- 繼電保護測試儀的常見故障及原因分析 1361次閱讀
- 鉗形電流表的常見故障及原因分析 3794次閱讀
- 矢量網(wǎng)絡(luò)分析儀的常見故障和原因分析 1412次閱讀
- 示波器探頭的常見故障和原因分析 1085次閱讀
- 功率分析儀的常見故障和原因分析 1415次閱讀
- 相位噪聲分析儀的常見故障和原因分析 775次閱讀
- 數(shù)控銑床主軸故障實例 4547次閱讀
- 制冷系統(tǒng)的故障分析_制冷系統(tǒng)故障原因 3309次閱讀
- 淺談汽車常見的故障和形成原因 2626次閱讀
- 燃氣灶熱電偶常見故障原因分析及處理辦法(6種故障) 10w次閱讀
- 電子電路常見故障現(xiàn)象原因分析 1.6w次閱讀
- 軟啟動器常見故障原因分析及維修 6.2w次閱讀
- 海信電視故障維修實例速查表 1.1w次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1491次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機和 SG3525的程控開關(guān)電源設(shè)計
- 0.23 MB | 4次下載 | 免費
- 8基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關(guān)電源設(shè)計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537793次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論