一種基于附加信息的二維碼防偽方法
【專利摘要】一種基于附加信息的二維碼防偽方法,是由生成防偽二維碼和驗證防偽二維碼兩部分構(gòu)成,包括通過向標準二維碼中加入一組密點,使標準二維碼的部分圖形發(fā)生改變,生成與標準二維碼不同的結(jié)果圖形,構(gòu)成防偽二維碼;每個防偽二維碼內(nèi)加入的密點信息隨機生成,具有唯一性,且僅保存于防偽二維碼服務(wù)器中;在進行防偽驗證時,通過與標準二維碼的差異性檢測,分離出所述防偽二維碼內(nèi)附加的密點信息,然后發(fā)送至防偽二維碼服務(wù)器,與所述防偽二維碼生成時保存的密點數(shù)據(jù)進行比對檢查,實現(xiàn)安全可靠的防偽功能。本發(fā)明使得二維碼防偽性能得到顯著提升,從根本上防止了現(xiàn)有防偽方法中因密鑰泄露,數(shù)據(jù)泄露等造成的大批量復制等不安全因素,可實現(xiàn)安全可靠的二維碼防偽。
【專利說明】-種基于附加信息的二維碼防偽方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種二維碼防偽方法。特別是涉及一種通過向標準二維碼中加入密點 信息,生成附加防偽密點信息的防偽二維碼的基于附加信息的二維碼防偽方法。
【背景技術(shù)】
[0002] 在目前二維碼防偽領(lǐng)域,主要采用二維碼加密,遮蓋及彩色二維碼三種方式進行 防偽。二維碼加密及遮蓋方式均使用標準二維碼,用標準二維碼生成及識別工具,通過對原 始信息加密,或者采用涂層遮蓋方式進行防偽。但因其生成有規(guī)律,且使用密鑰,容易泄露, 易被批量復制,安全性差。且加密或遮蓋后的二維碼僅能用于防偽,不能兼做商品管理,增 加使用成本。
[0003] 彩色二維碼防偽對標準二維進行彩色印刷,識別時一并檢測顏色信息。此種方法 比前述方法更可靠,復制難度較高。但因彩色信息仍有規(guī)律可循,生成結(jié)果也屬于標準二維 碼,也存在被批量復制可能。此種方法更大的缺陷是使用成本高。
[0004] 二維碼防偽應用越來越普及,但目前缺少既安全可靠,又可防偽及商品管理通用 這樣的低成本二維碼防偽技術(shù)。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明所要解決的技術(shù)問題是,提供一種能夠從根本上防止了現(xiàn)有防偽方法中因 密鑰泄露,數(shù)據(jù)泄露等造成的大批量復制基于附加信息的二維碼防偽方法。
[0006] 本發(fā)明所采用的技術(shù)方案是:一種基于附加信息的二維碼防偽方法,是由生成防 偽二維碼和驗證防偽二維碼兩部分構(gòu)成,包括通過向標準二維碼中加入一組密點,使標準 二維碼的部分圖形發(fā)生改變,生成與標準二維碼不同的結(jié)果圖形,構(gòu)成防偽二維碼;每個防 偽二維碼內(nèi)加入的密點信息隨機生成,具有唯一性,且僅保存于防偽二維碼服務(wù)器中;在進 行防偽驗證時,通過與標準二維碼的差異性檢測,分離出所述防偽二維碼內(nèi)附加的密點信 息,然后發(fā)送至防偽二維碼服務(wù)器,與所述防偽二維碼生成時保存的密點數(shù)據(jù)進行比對檢 查,實現(xiàn)安全可靠的防偽功能。
[0007] -組密點的任一個密點都包括有位置坐標信息,所述位置坐標信息,對應于標準 二維碼的一個區(qū)域,向標準二維碼附加一個密點后標準二維碼相應區(qū)域內(nèi)容發(fā)生改變,改 變結(jié)果是反色或修改為特定圖形,通過向一個標準二維碼內(nèi)加入1個至多個密點,形成具 有防偽特性的防偽二維碼。
[0008] 通過控制加入的密點總數(shù),使得防偽二維碼仍能被標準二維碼掃描設(shè)備識別。
[0009] 所述的生成二維碼包括如下步驟:
[0010] 1)防偽二維碼生成客戶端輸入原始編碼;
[0011] 2)防偽二維碼生成客戶端將原始編碼生成標準二維碼;
[0012] 3)防偽二維碼生成客戶端將原始編碼發(fā)送至防偽二維碼服務(wù)器;
[0013] 4)防偽二維碼服務(wù)器收到一個原始編碼后,為所述原始編碼隨機生成的密點信 息,包括:密點數(shù)n,以及每個密點的隨機坐標,其中密點數(shù)n根據(jù)原始標準二維碼版本確 定:n <原始標準二維碼的總模塊數(shù)X容錯率/10,密點位置隨機生成,避開二維碼左上,左 下及右上三個回形標識區(qū);
[0014] 5)防偽二維碼服務(wù)器保存原始編碼及對應的密點信息;
[0015] 6)防偽二維碼服務(wù)器將密點信息發(fā)送至防偽二維碼生成客戶端;
[0016] 7)防偽二維碼生成客戶端收到密點信息后,根據(jù)每個密點的坐標,逐一修改步驟 2)中所生成的標準二維碼中相應位置的模塊,直至將全部密點所對應位置的模塊修改完 畢,生成最終防偽二維碼,并保存。
[0017] 所述的驗證防偽二維碼是由防偽二維碼驗證客戶端完成,包括如下步驟:
[0018] 1)防偽二維碼驗證客戶端掃描或拍攝防偽二維碼;
[0019] 2)防偽二維碼驗證客戶端根據(jù)掃描或拍攝的防偽二維碼,識別其中的原始編碼;
[0020] 3)防偽二維碼驗證客戶端根據(jù)識別出的原始編碼,重新生成標準二維碼;
[0021] 4)防偽二維碼驗證客戶端將所掃描或拍攝的防偽二維碼與重新生成的標準二維 碼進行圖形比對,找出兩個圖形中所有不相同的模塊以及每一個不相同模塊的坐標,組成 附加密點信息;
[0022] 5)防偽二維碼驗證客戶端連接防偽二維碼服務(wù)器,將防偽二維碼原始編碼以及密 點信息傳送至防偽二維碼服務(wù)器;
[0023] 6)防偽二維碼服務(wù)器接收到防偽二維碼驗證客戶端數(shù)據(jù)后,先從防偽二維碼數(shù)據(jù) 庫內(nèi)查詢是否存有與所接收的原始編碼相同的原始編碼,如果不存在,則驗證失敗,如果存 在,則進一步比對原始編碼對應的密點信息,如果不同則驗證失敗,只有全部比對正確,則 驗證成功,并增加原始編碼防偽查詢計數(shù);
[0024] 7)防偽二維碼服務(wù)器發(fā)送驗證結(jié)果及防偽查詢計數(shù)給防偽二維碼驗證客戶端;
[0025] 8)防偽二維碼驗證客戶端顯示驗證結(jié)果及防偽查詢計數(shù),完成驗證過程。
[0026] 本發(fā)明的一種基于附加信息的二維碼防偽方法,使得二維碼防偽性能得到顯著提 升,因海量的密點隨機組合,以及數(shù)據(jù)的分離存儲,從根本上防止了現(xiàn)有防偽方法中因密鑰 泄露,數(shù)據(jù)泄露等造成的大批量復制等不安全因素,而且該防偽二維碼不需要特別打印,遮 蓋或印刷,還可以被標準設(shè)備識別,可同時用在商品管理等用途,降低了使用成本,本發(fā)明 可實現(xiàn)安全可靠的二維碼防偽系統(tǒng),防偽二維碼無法批量復制。并且利用二維碼具有冗余 編碼功能,在冗余范圍內(nèi)添加密點信息,不影響該二維碼的正常識別,標準二維碼掃描設(shè)備 可正常識別該防偽二維碼內(nèi)原始編碼,用于商品物流管理追蹤等使用,幾乎不增加額外成 本。
【專利附圖】
【附圖說明】
[0027] 圖1是標準QR碼示意圖;
[0028] 圖2是密點矩陣圖;
[0029] 圖3是附加密點的QR碼示意圖;
[0030] 圖4是防偽QR碼示意圖。
【具體實施方式】
[0031] 下面結(jié)合實施例和附圖對本發(fā)明的一種基于附加信息的二維碼防偽方法做出詳 細說明。
[0032] 本發(fā)明的一種基于附加信息的二維碼防偽方法,通過向標準二維碼中加入密點信 息,使得該二維碼內(nèi)與密點對應的模塊發(fā)生改變,生成與標準二維碼不同的結(jié)果圖形,即附 加了防偽密點信息的防偽二維碼。通過檢測該二維碼內(nèi)的附加密點信息,可以實現(xiàn)可靠防 偽。對于每一個二維碼編碼,所加入的密點信息隨機生成,并與二維碼原始編碼一起配對保 存在服務(wù)器中。在進行真?zhèn)悟炞C識別時,通過專用的防偽二維碼驗證客戶端,對拍照的防偽 二維碼進行標準原始編碼識別,然后分離出防偽二維碼內(nèi)的附加密點信息,與原始編碼一 并發(fā)送至服務(wù)器,服務(wù)器與保存在數(shù)據(jù)庫中該二維碼原始編碼及附加密點信息進行配對檢 查,全部匹配后才可通過驗證。
[0033] 本發(fā)明的一種基于附加信息的二維碼防偽方法,是通過向標準二維碼中附加隨機 生成的密點信息,在不影響加密后二維碼正常識別的情況下,通過附加的密點信息實現(xiàn)安 全防偽。是由生成防偽二維碼和驗證防偽二維碼兩部分構(gòu)成,包括通過向標準二維碼中加 入一組密點,使標準二維碼的部分圖形發(fā)生改變,生成與標準二維碼不同的結(jié)果圖形,構(gòu)成 防偽二維碼,這里一組密點的任一個密點都包括有位置坐標信息,所述位置坐標信息,對應 于標準二維碼的一個區(qū)域,向標準二維碼附加一個密點后標準二維碼相應區(qū)域內(nèi)容發(fā)生改 變,改變結(jié)果是反色或修改為特定圖形,通過向一個標準二維碼內(nèi)加入1個至多個密點,形 成具有防偽特性的防偽二維碼;每個防偽二維碼內(nèi)加入的密點信息隨機生成,具有唯一性, 且僅保存于防偽二維碼服務(wù)器中;在進行防偽驗證時,通過與標準二維碼的差異性檢測,分 離出所述防偽二維碼內(nèi)附加的密點信息,然后發(fā)送至防偽二維碼服務(wù)器,與所述防偽二維 碼生成時保存的密點數(shù)據(jù)進行比對檢查,實現(xiàn)安全可靠的防偽功能。通過控制加入的密點 總數(shù),使得防偽二維碼仍能被標準二維碼掃描設(shè)備識別。
[0034] 標準二維碼為正方形色塊,以QR碼為例,不同的版本可容納不同長度的編碼信 息,模塊數(shù)也不同,從版本1(21X21模塊)到版本40(177X177模塊)。QR碼可以具有 7% -30 %的冗余糾錯能力。
[0035] -個標準QR碼內(nèi)每個模塊為黑或白色,一個附加密點對應于該標準QR碼的特定 模塊,可以用模塊坐標(X,Y)表示。向該標準QR碼內(nèi)加入該密點,即為改變該標準QR碼中 相應模塊的顯示,比如與原來顯示的顏色反色。
[0036] 對應于不同版本的QR碼,可加入若干個附加密點用于防偽。對于每一個特定的QR 碼,密點總個數(shù),以及每個密點的坐標位置均隨機生成,密點信息與QR碼唯一對應,分離保 存于服務(wù)器,無任何統(tǒng)一模式或規(guī)律,從理論上避免了被仿制的可能。
[0037] 為保證印刷后的防偽二維碼在各使用環(huán)境下的可識別度,附加密點總數(shù)以不超過 二維碼總模塊數(shù)X容錯率/10為宜,且密點位置盡量避開QR碼標識區(qū)(左上,左下及右上 三個回形標識區(qū))。
[0038] 以QR碼最低版本1為例,一個具有25 %容錯率的標準QR碼包含21*21個模塊,可 以選取1-10個密點,隨機密點組合可高達數(shù)百億種。僅以3個密點為例,位置隨機分布,理 論上密點組合就可達441*440*439約8500萬種。
[0039] 下面對附加密點過程進行舉例說明:
[0040] 一個標準QR碼如圖1所示:(原始編碼內(nèi)容:samplel23,版本1,容錯率25%, 21*21模塊)
[0041] 對應于圖1所示的標準QR碼,隨機生成附加密點,以下面所示的密點矩陣為例: (21*21元素,內(nèi)含5個附加密點,及每個密點坐標位置)
[0042] 密點矩陣中每個元素對應于圖1所示標準QR碼中的一個模塊。密點矩陣中表示 為1的元素為密點,與該密點坐標對應的標準QR碼模塊將進行反色操作,而與矩陣中其他 為0的元素所對應模塊保持不變。
[0043] 將圖2所示的密點矩陣附加至圖1所示的標準QR碼,模塊變化如下圖3所示:
[0044] 圖3內(nèi)共有5個與密點相對應的模塊進行反色處理。
[0045] 對應于圖1的標準QR 5馬,其中標識" + "號的為增加模塊,標識"x"的為消減模塊。
[0046] 實施附加密點處理后,即生成了防偽QR碼,如圖4所示:
[0047] 該防偽QR碼與原始QR碼相比,原始編碼息相同,仍為samplel23,但加入了 5個密 點信息,有5個模塊發(fā)生變化。這5個密點即為該QR碼的唯一防偽信息。這5個密點與該 QR碼原始編碼配對保存于服務(wù)器數(shù)據(jù)庫中,供防偽驗證使用。
[0048] 每個防偽QR碼生成時加入的密點個數(shù)及位置為隨機生成,具有海量組合且無任 何規(guī)律,無法仿制。
[0049] 在進行防偽驗證時,用專用的防偽驗證客戶端拍攝防偽QR碼,首先識別出該碼的 原始編碼,并根據(jù)此原始編碼生成標準QR碼,然后與所拍攝的防偽QR碼圖形進行對比,分 離出密點信息。防偽驗證客戶端將原始編碼和密點信息一并傳至服務(wù)器,服務(wù)器將原始編 碼和密點信息與生成該防偽碼時保存的相應數(shù)據(jù)進行配對比對,比對正確才可通過驗證。
[0050] 本發(fā)明所述的生成二維碼包括如下步驟:
[0051]1)防偽二維碼生成客戶端輸入原始編碼;
[0052] 2)防偽二維碼生成客戶端將原始編碼生成標準二維碼,所述的生成標準二維碼根 據(jù)預先設(shè)定的二維碼版本,容錯率,按照標準二維碼編碼標準進行生成;
[0053] 3)防偽二維碼生成客戶端將原始編碼發(fā)送至防偽二維碼服務(wù)器;
[0054] 4)防偽二維碼服務(wù)器收到一個原始編碼后,為所述原始編碼隨機生成的密點信 息,包括:密點數(shù)n,以及每個密點的隨機坐標,其中密點數(shù)n根據(jù)原始標準二維碼版本確 定:n <原始標準二維碼的總模塊數(shù)X容錯率/10,密點位置隨機生成,避開二維碼左上,左 下及右上三個回形標識區(qū);
[0055] 5)防偽二維碼服務(wù)器保存原始編碼及對應的密點信息;
[0056] 6)防偽二維碼服務(wù)器將密點信息發(fā)送至防偽二維碼生成客戶端;
[0057] 7)防偽二維碼生成客戶端收到密點信息后,根據(jù)每個密點的坐標,逐一修改步驟 2)中所生成的標準二維碼中相應位置的模塊,直至將全部密點所對應位置的模塊修改完 畢,生成最終防偽二維碼,并保存。
[0058] 本發(fā)明所述的驗證防偽二維碼是由防偽二維碼驗證客戶端完成,包括如下步驟:
[0059] 1)防偽二維碼驗證客戶端掃描或拍攝防偽二維碼;
[0060] 2)防偽二維碼驗證客戶端根據(jù)掃描或拍攝的防偽二維碼,識別其中的原始編碼;
[0061] 3)防偽二維碼驗證客戶端根據(jù)識別出的原始編碼,重新生成標準二維碼;
[0062] 4)防偽二維碼驗證客戶端將所掃描或拍攝的防偽二維碼與重新生成的標準二維 碼進行圖形比對,找出兩個圖形中所有不相同的模塊以及每一個不相同模塊的坐標,組成 附加密點信息;
[0063] 5)防偽二維碼驗證客戶端連接防偽二維碼服務(wù)器,將防偽二維碼原始編碼以及密 點信息傳送至防偽二維碼服務(wù)器;
[0064] 6)防偽二維碼服務(wù)器接收到防偽二維碼驗證客戶端數(shù)據(jù)后,先從防偽二維碼數(shù)據(jù) 庫內(nèi)查詢是否存有與所接收的原始編碼相同的原始編碼,如果不存在,則驗證失敗,如果存 在,則進一步比對原始編碼對應的密點信息,如果不同則驗證失敗,只有全部比對正確,則 驗證成功,并增加原始編碼防偽查詢計數(shù);
[0065] 7)防偽二維碼服務(wù)器發(fā)送驗證結(jié)果及防偽查詢計數(shù)給防偽二維碼驗證客戶端;
[0066] 8)防偽二維碼驗證客戶端顯示驗證結(jié)果及防偽查詢計數(shù),完成驗證過程。
[0067] 在應用本發(fā)明設(shè)計的一種基于附加信息的二維碼防偽系統(tǒng)中:
[0068] 1、防偽二維碼生成客戶端可以采用Windows系統(tǒng)PC,負責將商品唯一原始編碼生 成標準QR碼,與防偽二維碼服務(wù)器通信獲得附加密點,最后生成防偽QR碼,保存或打印出 防偽QR碼。
[0069] 該客戶端僅保存每個原始編碼的最終防偽二維碼,不保存或緩存任何附加密點信 息,且連接防偽二維碼服務(wù)器需要密碼驗證。
[0070] 2、防偽二維碼服務(wù)器選用Windows或Linux服務(wù)器,并配備數(shù)據(jù)庫。該服務(wù)器負 責與防偽二維碼生成客戶端通訊,保存每個QR碼的原始編碼,為該原始編碼生成并保存密 點信息。該服務(wù)器同時負責與防偽二維碼驗證客戶端通訊,提供防偽驗證查詢,以及記錄查 詢次數(shù)。該服務(wù)器將每個原始編碼及其對應的密點信息分離加密存儲,這樣即使獲得全部 靜態(tài)數(shù)據(jù),也無法得到原始編碼與附加密點的匹配關(guān)系,無法破解復制。
[0071] QR碼數(shù)據(jù)存儲如表1所示:
[0072] 表1防偽QR碼數(shù)據(jù)存儲
【權(quán)利要求】
1. 一種基于附加信息的二維碼防偽方法,其特征在于,是由生成防偽二維碼和驗證防 偽二維碼兩部分構(gòu)成,包括通過向標準二維碼中加入一組密點,使標準二維碼的部分圖形 發(fā)生改變,生成與標準二維碼不同的結(jié)果圖形,構(gòu)成防偽二維碼;每個防偽二維碼內(nèi)加入的 密點信息隨機生成,具有唯一性,且僅保存于防偽二維碼服務(wù)器中;在進行防偽驗證時,通 過與標準二維碼的差異性檢測,分離出所述防偽二維碼內(nèi)附加的密點信息,然后發(fā)送至防 偽二維碼服務(wù)器,與所述防偽二維碼生成時保存的密點數(shù)據(jù)進行比對檢查,實現(xiàn)安全可靠 的防偽功能。
2. 根據(jù)權(quán)利要求1所述的一種基于附加信息的二維碼防偽方法,其特征在于,一組密 點的任一個密點都包括有位置坐標信息,所述位置坐標信息,對應于標準二維碼的一個區(qū) 域,向標準二維碼附加一個密點后標準二維碼相應區(qū)域內(nèi)容發(fā)生改變,改變結(jié)果是反色或 修改為特定圖形,通過向一個標準二維碼內(nèi)加入1個至多個密點,形成具有防偽特性的防 偽二維碼。
3. 根據(jù)權(quán)利要求1或2所述的一種基于附加信息的二維碼防偽方法,其特征在于,通過 控制加入的密點總數(shù),使得防偽二維碼仍能被標準二維碼掃描設(shè)備識別。
4. 根據(jù)權(quán)利要求1所述的一種基于附加信息的二維碼防偽方法,其特征在于,所述的 生成二維碼包括如下步驟: 1) 防偽二維碼生成客戶端輸入原始編碼; 2) 防偽二維碼生成客戶端將原始編碼生成標準二維碼; 3) 防偽二維碼生成客戶端將原始編碼發(fā)送至防偽二維碼服務(wù)器; 4) 防偽二維碼服務(wù)器收到一個原始編碼后,為所述原始編碼隨機生成的密點信息,包 括:密點數(shù)n,以及每個密點的隨機坐標,其中密點數(shù)n根據(jù)原始標準二維碼版本確定:n < 原始標準二維碼的總模塊數(shù)X容錯率/10,密點位置隨機生成,避開二維碼左上,左下及右 上三個回形標識區(qū); 5) 防偽二維碼服務(wù)器保存原始編碼及對應的密點信息; 6) 防偽二維碼服務(wù)器將密點信息發(fā)送至防偽二維碼生成客戶端; 7) 防偽二維碼生成客戶端收到密點信息后,根據(jù)每個密點的坐標,逐一修改步驟2)中 所生成的標準二維碼中相應位置的模塊,直至將全部密點所對應位置的模塊修改完畢,生 成最終防偽二維碼,并保存。
5. 根據(jù)權(quán)利要求1所述的一種基于附加信息的二維碼防偽方法,其特征在于,所述的 驗證防偽二維碼是由防偽二維碼驗證客戶端完成,包括如下步驟: 1) 防偽二維碼驗證客戶端掃描或拍攝防偽二維碼; 2) 防偽二維碼驗證客戶端根據(jù)掃描或拍攝的防偽二維碼,識別其中的原始編碼; 3) 防偽二維碼驗證客戶端根據(jù)識別出的原始編碼,重新生成標準二維碼; 4) 防偽二維碼驗證客戶端將所掃描或拍攝的防偽二維碼與重新生成的標準二維碼進 行圖形比對,找出兩個圖形中所有不相同的模塊以及每一個不相同模塊的坐標,組成附加 密點信息; 5) 防偽二維碼驗證客戶端連接防偽二維碼服務(wù)器,將防偽二維碼原始編碼以及密點信 息傳送至防偽二維碼服務(wù)器; 6) 防偽二維碼服務(wù)器接收到防偽二維碼驗證客戶端數(shù)據(jù)后,先從防偽二維碼數(shù)據(jù)庫內(nèi) 查詢是否存有與所接收的原始編碼相同的原始編碼,如果不存在,則驗證失敗,如果存在, 則進一步比對原始編碼對應的密點信息,如果不同則驗證失敗,只有全部比對正確,則驗證 成功,并增加原始編碼防偽查詢計數(shù); 7) 防偽二維碼服務(wù)器發(fā)送驗證結(jié)果及防偽查詢計數(shù)給防偽二維碼驗證客戶端; 8) 防偽二維碼驗證客戶端顯示驗證結(jié)果及防偽查詢計數(shù),完成驗證過程。
【文檔編號】G06Q30/00GK104392260SQ201410788430
【公開日】2015年3月4日 申請日期:2014年12月17日 優(yōu)先權(quán)日:2014年12月17日
【發(fā)明者】肖學靜 申請人:肖學靜