一種采用數(shù)字水印技術(shù)的二維碼防偽印刷及驗(yàn)證方法
【專利摘要】本發(fā)明涉及一種二維碼信息隱藏防偽技術(shù),特別是一種采用數(shù)字水印技術(shù)的二維碼印刷及驗(yàn)證方法,先將二維碼圖片進(jìn)行DCT變換將得到DCT系數(shù)配對;然后將二維碼圖片像素分塊,確定每塊嵌入的水印信息;按分塊選定位置,嵌入水印,得到嵌入水印的二維碼圖片。驗(yàn)證時(shí),將需驗(yàn)證的帶有水印的二維碼圖片通過DCT變換得到DCT系數(shù)配對,獲得水?。粚@得的水印與提取的水印比較判斷是否有篡改。本發(fā)明的方法使得二維碼能夠有效的快速快速有效的加密,也可以準(zhǔn)確的驗(yàn)證二維碼是否防偽。
【專利說明】一種采用數(shù)字水印技術(shù)的二維碼防偽印刷及驗(yàn)證方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種二維碼信息隱藏防偽技術(shù),特別是一種采用數(shù)字水印技術(shù)的二維 碼防偽印刷及驗(yàn)證方法。
【背景技術(shù)】
[0002] 二維碼由于攜帶的信息密度和信息容量較大,因此得到了廣泛的應(yīng)用??紤]到二 維碼所攜帶的信息的安全性和保密性以及防偽的需求,于是產(chǎn)生了二維碼的加密技術(shù)。
[0003] 以火車票為例,一張火車票的原始數(shù)據(jù),如時(shí)間、出發(fā)地、目的地、持票人姓名身份 證號等信息,經(jīng)過加密算法加密,然后生成二維碼(火車票右下角),這就是二維碼加密技 術(shù)。當(dāng)二維碼被解碼時(shí),解出來的數(shù)據(jù)就是一大串看不懂的數(shù)字,它必須經(jīng)過解密算法才能 還原出火車票的真實(shí)信息。
[0004] 但是由于二維碼算法和軟件的公開性,使得二維碼的所攜帶的信息是透明的,人 們很容易解碼,得到初始的數(shù)據(jù)。這樣使得二維碼本身不具備防偽功能,二維碼加密技術(shù)也 不具備防偽功能。二維碼只是把數(shù)據(jù)加密,而二維碼本身還是很容易偽造。比如火車票信 息加密后的二維碼信息,我們通過微信掃一掃解碼后得到一大串?dāng)?shù)字,再通過二維碼生成 軟件(最簡單的采用網(wǎng)絡(luò)在線生成軟件)很快就能生成一樣的二維碼。加密也就是體現(xiàn)在 加密信息這一步,與二維碼無關(guān),二維碼只是把這一長串?dāng)?shù)字用一個(gè)圖形表示出來而已。不 管加不加密,二維碼都可以仿造,如果你復(fù)制(復(fù)?。┝艘粡堒嚻保偃缭诩垙埡陀∷⒌姆?面不被人識破,你先于真票拿去退票或者改簽了,系統(tǒng)也是不可能發(fā)現(xiàn)的。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明需要解決的技術(shù)問題是提供一種快速準(zhǔn)確的二維碼防偽印刷及驗(yàn)證方法。
[0006] 為解決上述的技術(shù)問題,本發(fā)明包括一種采用數(shù)字水印技術(shù)的二維碼防偽印刷方 法,包括以下步驟,
[0007] 步驟S101 :將二維碼圖片進(jìn)行DCT變換,將得到的DCT系數(shù)配對;
[0008] 步驟S102 :將二維碼圖片分成像素塊,確定每個(gè)像素塊對應(yīng)嵌入的水印信息;
[0009] 步驟S103 :按分塊選擇的位置,嵌入水印信息;
[0010] 步驟S104 :得到嵌入水印的二維碼圖片。
[0011] 進(jìn)一步的,所述步驟S102中將二維碼圖片分成8*8像素塊。
[0012] 進(jìn)一步的,所述步驟S103中分塊位置的選擇為根據(jù)產(chǎn)生的水印比特,將前3bit嵌 入一個(gè)塊對中一塊的選定位置,后3bit嵌入另一塊的相應(yīng)位置。
[0013] 更進(jìn)一步的,所述步驟S103中設(shè)置可接受的圖片壓縮品質(zhì)因子閾值m。
[0014] 本發(fā)明還包括一種與上述采用數(shù)字水印技術(shù)的二維碼防偽印刷方法相對應(yīng)的驗(yàn) 證采用數(shù)字水印技術(shù)的二維碼是否篡改的方法,包括以下步驟,
[0015] 步驟S201,將需要驗(yàn)證的帶有水印的二維碼圖片進(jìn)行DCT變換,得到DCT系數(shù)配 對;
[0016] 步驟S202,根據(jù)DCT系數(shù)配對產(chǎn)生二維碼圖片中的水??;
[0017] 步驟S203,將步驟S202中產(chǎn)生的水印與從原二維碼圖片中提取的水印進(jìn)行比較, 如果相同,則說明未被篡改;如果不相同,則說明被篡改并對篡改部位進(jìn)行定位。
[0018] 采用上述二維碼防偽印刷及驗(yàn)證方法,偽造者首先無法通過普通二維碼識別軟件 或掃描槍來讀取二維碼信息,也就無法通過軟件逆向復(fù)制二維碼;即使仿造者逆向復(fù)制了 二維碼,由于水印信息的丟失,可以用驗(yàn)證二維碼的水印信息來識別偽造的二維碼。本發(fā)明 的方法使得二維碼能夠有效的快速快速有效的加密,也可以準(zhǔn)確的驗(yàn)證二維碼是否防偽。 本發(fā)明的方法采用數(shù)字水印的信息隱藏技術(shù)實(shí)現(xiàn)了二維碼的防偽問題,效果明顯優(yōu)于普通 的加密技術(shù)。
【專利附圖】
【附圖說明】
[0019] 下面將結(jié)合附圖和【具體實(shí)施方式】對本發(fā)明作進(jìn)一步詳細(xì)的說明。
[0020] 圖1為本發(fā)明采用數(shù)字水印技術(shù)的二維碼防偽印刷方法的流程圖。
【具體實(shí)施方式】 [0021]
[0022] 如圖1所示,本發(fā)明一種采用數(shù)字水印技術(shù)的二維碼防偽印刷方法,包括以下步驟,
[0023] 步驟S101 :將二維碼圖片進(jìn)行DCT變換,將得到的DCT系數(shù)配對。
[0024] 步驟S102 :將二維碼圖片分成像素塊,確定每個(gè)像素塊對應(yīng)嵌入的水印信息。在 本實(shí)施方式中,首先將圖片分成8*8像素塊,把圖像所有的塊分成不相交的集合PP和Pq,取 k = 0,則每個(gè)塊對嵌入的水印信息為
[0025]
【權(quán)利要求】
1. 一種采用數(shù)字水印技術(shù)的二維碼防偽印刷方法,其特征在于,包括以下步驟, 步驟S101 :將二維碼圖片進(jìn)行DCT變換,將得到的DCT系數(shù)配對; 步驟S102 :將二維碼圖片分成像素塊,確定每個(gè)像素塊對應(yīng)嵌入的水印信息; 步驟S103 :按分塊選擇的位置,嵌入水印信息; 步驟S104 :得到嵌入水印的二維碼圖片。
2. 按照權(quán)利要求1所述的一種采用水印技術(shù)的二維碼防偽印刷方法,其特征在于:所 述步驟S102中將二維碼圖片分成8*8像素塊。
3. 按照權(quán)利要求1所述的一種采用水印技術(shù)的二維碼防偽印刷方法,其特征在于:所 述步驟S103中分塊位置的選擇為根據(jù)產(chǎn)生的水印比特,將前3bit嵌入一個(gè)塊對中一塊的 選定位置,后3bit嵌入另一塊的相應(yīng)位置。
4. 按照權(quán)利要求3所述的一種采用水印技術(shù)的二維碼防偽印刷方法,其特征在于:所 述步驟S103中設(shè)置可接受的圖片壓縮品質(zhì)因子閾值m。
5. -種驗(yàn)證按權(quán)利要求1方法所印刷二維碼是否篡改的方法,其特征在于,包括以下 步驟, 步驟S201,將需要驗(yàn)證的帶有水印的二維碼圖片進(jìn)行DCT變換,得到DCT系數(shù)配對; 步驟S202,根據(jù)DCT系數(shù)配對產(chǎn)生二維碼圖片中的水?。? 步驟S203,將步驟S202中產(chǎn)生的水印與從原二維碼圖片中提取的水印進(jìn)行比較,如果 相同,則說明未被篡改;如果不相同,則說明被篡改并對篡改部位進(jìn)行定位。
【文檔編號】G06K19/06GK104063731SQ201410172104
【公開日】2014年9月24日 申請日期:2014年4月28日 優(yōu)先權(quán)日:2014年4月28日
【發(fā)明者】趙俊夫, 趙起 申請人:長沙佐世網(wǎng)絡(luò)科技有限公司