誰說程序員不浪漫鸵膏!他從事python工作七八年,為了追公司的女同事怎炊,竟然用python的圖片隱寫術在圖片上寫情書谭企,讓全公司只有她才能看懂。
先介紹一下圖片隱寫術吧评肆,這是一門有關于將信息隱藏的科學技術债查,也就是說,用過這種信息隱藏的內容糟港,一般除了特別的人能看懂以外攀操,其他任何看到的人都不會知道信息中被隱藏的內容。
下面簡單講一下如何用python實現圖片隱寫術(完整的教程在底部)
首先秸抚,python圖片隱寫術涉及到的知識點
Pillow 模塊
最低有效位
lambda 表達式遞歸
UTF-8 編碼
效果展示:
當然速和,已經經過“施法”后的圖片歹垫,應該很難看出什么。
再是安裝包
這是用到了pillow這個模塊颠放。
然后是程序實現的步驟
先導入pillow模塊排惨,舉個例子
再就是編碼
我們要將需要隱藏的信息編碼到圖片中去,也是函數encodeDatalnlmage()中碰凶,它會有兩個參數暮芭,一個是用于作為載體的圖片對象,還有一個是需要被隱藏的字符串欲低。部分代碼如下:
然后 map(constLenBin,bytearray(data,‘utf-8’)) 對數值序列中的每一個值應用 constLenBin() 函數辕宏,將十進制數值序列轉換為二進制字符串序列。
部分代碼如下:
最后砾莱,需要看到圖片中的信息瑞筐,再進行解碼。
decodeImage()返回圖片解碼后的隱藏文字腊瑟,其接受一個圖片對象參數聚假。
代碼如下:
到這里,python圖片隱寫術的效果就基本可以完成了闰非,但是由于篇幅比較有限膘格,不能把詳細內容寫出來,所以财松,這里面還涉及到很多的內容沒有講瘪贱,比如隱寫術的原理等等,還有全部的源碼游岳,如果需要的話政敢,可以:
這是一門特別實用的Python技術其徙,想象一下胚迫,學會隱寫術后馏锡,隨便怎么給喜歡的寫情書娱局,再也不擔心會被別人看到了搅荞!