利用不同格式圖檔的特性,例如 bmp檔案頭标記了圖檔檔案大小,後面資訊不讀取,或jpg檔案擁有ffd9 标志結束符,是以就算将再多資訊附加上去,也不會影響原來圖檔檢視。
根據 顔色的特點,因為顔色的最後一個位含有的資訊量就算改變也不會改變大局,是以顔色的最後一個bit作為資訊記錄點。
顔色特征,按一定的算法,擷取約定的圖檔特征,例如,都擷取rgb中g的整張圖的波形,通過某種濾波器,分析出來某段,然後加上校驗碼進行校驗資訊是否有效,而且多段,含備援,分布圖檔各個地方,幾時壓縮,或者截圖後,資訊也有可能被擷取到。
加密後圖檔正常顯示,無資訊長度限制,可以無限追加資訊。我們都不明白為啥某個 “正常” 圖檔竟然有1,2g那麼大,到底後面附加了什麼???嘿嘿
加密後圖檔正常顯示,資訊保密度更強,不會增加圖檔本身的大小,當然轉格式例外,而且根據算法,整體的保密性更強。
能加密得資訊的長度受圖檔size限制,如果對圖檔進行過壓縮,資訊将會損失得一塌糊塗。**
經過壓縮後,資訊仍有機會提取出來,耐操,加密後不會改變圖檔大小,有備援資訊,破解難度大。
圖檔容易顯示不正常,當然搞成類似白噪點也是個技術活,能加密得資訊的長度受圖檔size限制。
他們以2位16進制數字位一個機關分别代表 a,r,g,b。記得在儲存的時候别忘記了a,透明度,否則出來的都是黑色一片哦。**
而2位16進制的數字聯合代表256個色值,換算2進制就是 8位。因為主要決定顔色的資訊其實都儲藏在這裡,而前面的值表示顔色的變化越大,而最後以為相對改變的話,對顔色本身的影響是非常小的,255和254是相差很小的顔色變化。**是以隻要我們改變三原色随便一個或者幾個的最後一位,其實對顔色變化影響微乎其微。肉眼壓根不能看出變化。
變量名
大小
作用
bftype
2bytes
預設直接寫死 424d 說明檔案類型的
bfsize
4bytes
圖檔總大小,包括頭資訊
bfreserved1
保留,必須設定為0
bfreserved2
bfoffbits
說明檔案頭開始到實際圖檔資料之間的偏移量,其實也是相對恒定的
bisize
bitmapinfoheader結構需要的字數,固定的40
biwidth
圖像的寬度,用像素為機關
biheight
圖像的高度,用像素為機關。還有個作用,标志圖檔是正向還是倒向的。如果該值是正數,說明圖像是倒向的,如果該數是負數,那麼圖像是正向的
biplanes
為目标裝置說明顔色的平面數,他的值總是設為1
bibitcount
說明比特數/像數,其值為1、4、8、16、24、32,現在通常用24位
bicompression
說明圖像資料壓縮的類型。
0 表示不壓縮
1 表示8比特編碼,隻用于8位圖
bisizeimage
圖像大小,機關為位元組
bixpelspermeter
說明水準分辨率,像素/米 表示
biypelspermeter
說明垂直分辨率,像素/米 表示
biclrused
說明位圖實際使用的彩色表中的顔色索引數
biclrimportant
說明對圖像顯示有重要影響的顔色索引的數目如果是0,表示都很重要