一種二維碼的驗證方法、裝置和系統的制作方法
【技術領域】
[0001]本發明涉及通信技術領域,具體涉及一種二維碼的驗證方法、裝置和系統。
【背景技術】
[0002]隨著智能終端的流行,二維碼(Two-dimens1nal code)也漸漸地流行開來,二維碼,又稱二維條碼,它是用特定的幾何圖形按一定規律在平面(二維方向)上分布的黑白相間的圖形,是所有信息數據的一把鑰匙。為了便于定位二維碼編碼的順序,在二維碼中,一般具有三個定位圖形,分別位于二維碼的三個頂角上。
[0003]在現有技術中,一般由被驗證終端生成二維碼,驗證終端掃描該生成的二維碼,然后由驗證終端根據二維碼中的定位圖形,定位二維碼編碼順序,以解讀二維碼信息。
[0004]在對現有技術的研究和實踐過程中,本發明的發明人發現,現有的二維碼的驗證方法安全性降低,不利于二維碼信息的安全。
【發明內容】
[0005]本發明實施例提供一種二維碼的驗證方法、裝置和系統,可以提高二維碼驗證的安全性,保護二維碼信息的安全。
[0006]本發明實施例提高一種二維碼的驗證方法,包括:
[0007]掃描被驗證終端生成的二維碼,所述二維碼包括定位圖形;
[0008]根據所述二維碼的定位圖形確定所述二維碼的掃描角度;
[0009]發送所述二維碼的掃描角度給服務器,以便所述服務器根據所述掃描角度對二維碼掃描操作的合法性進行驗證。
[0010]本發明實施例還提供一種終端,包括掃描單元、確定單元和處理單元,如下:
[0011]所述掃描單元,用于掃描被驗證終端生成的二維碼,所述二維碼包括定位圖形;
[0012]所述確定單元,用于根據所述二維碼的定位圖形確定所述二維碼的掃描角度;
[0013]所述處理單元,用于發送所述二維碼的掃描角度給服務器,以便所述服務器根據所述掃描角度對二維碼掃描操作的合法性進行驗證。
[0014]一種二維碼的驗證系統,包括本發明實施例提供的任一種終端。
[0015]本發明實施例采用掃描被驗證終端生成的二維碼,其中,該二維碼包括定位圖形,根據該二維碼的定位圖形確定該二維碼的掃描角度,然后發送該二維碼的掃描角度給服務器,以便該服務器根據該掃描角度對二維碼掃描操作的合法性進行驗證;由于在該方案中,驗證終端在掃描被驗證終端的二維碼時,需要驗證掃描角度才能獲取到二維碼信息,因此,相對于現有技術中直接掃描以獲取二維碼信息的方案而言,可以提高二維碼驗證的安全性,保護二維碼信息的安全。
【附圖說明】
[0016]為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0017]圖la是本發明實施例提供的二維碼的驗證方法的流程圖;
[0018]圖lb是本發明實施例中掃描角度的示意圖;
[0019]圖lc是本發明實施例中掃描角度的另一示意圖;
[0020]圖2a是本發明實施例提供的二維碼的驗證方法場景示意圖;
[0021]圖2b是本發明實施例提供的二維碼的驗證方法的流程圖;
[0022]圖2c是本發明實施例中掃描角度的確認場景示意圖;
[0023]圖3a是本發明實施例提供的終端的結構示意圖;
[0024]圖3b是本發明實施例提供的終端的另一結構示意圖;
[0025]圖4是本發明實施例提供的終端的又一結構示意圖。
【具體實施方式】
[0026]下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
[0027]本發明實施例提供一種二維碼的驗證方法、裝置和系統。以下分別進行詳細說明。
[0028]實施例一、
[0029]本實施例將從驗證終端的角度進行描述,該驗證終端具體可以為智能手機或平板電腦等設備。
[0030]一種二維碼的驗證方法,包括:掃描被驗證終端生成的二維碼,其中,該二維碼包括定位圖形;根據該二維碼的定位圖形確定該二維碼的掃描角度;發送該二維碼的掃描角度給服務器,以便該服務器根據該掃描角度對二維碼掃描操作的合法性進行驗證。
[0031]如圖la所示,該二維碼的驗證方法的具體流程可以如下:
[0032]101、掃描被驗證終端生成的二維碼,其中,該二維碼包括定位圖形。
[0033]需說明的是,為了便于定位二維碼編碼的順序,在二維碼中,一般具有三個定位圖形,分別位于二維碼的三個頂角上。
[0034]102、根據該二維碼的定位圖形確定該二維碼的掃描角度。
[0035]其中,二維碼的掃描角度的確定方式可以有多種,具體可以根據實際應用的需求進行設置,例如,具體可以如下任意一種方式:
[0036](1)第一種方式;
[0037]如圖lb所示,將二維碼中不存在定位圖形的角標記為角0,以角0為起始角,順時針依次標記其他角分別為角1、角2和角3,確定角1的定位圖形和角2的定位圖形的中心點連線,與穿過角2的定位圖形的中心點的水平線垂線的夾角的大小,根據該夾角的大小確定該二維碼的掃描角度。
[0038]其中,可以將該夾角中的銳角作為該二維碼的掃描角度,參見圖lb中的“Z a”,也可以將該夾角中的鈍角作為該二維碼的掃描角度,參見圖lb中的“Zb”,即步驟“根據該夾角的大小確定該二維碼的掃描角度”具體可以如下:
[0039]確定該夾角中的銳角為該二維碼的掃描角度;或者;
[0040]確定該夾角中的鈍角為該二維碼的掃描角度。
[0041](2)第二種方式;
[0042]如圖lc所示,將二維碼中不存在定位圖形的角標記為角0,以角0為起始角,順時針依次標記其他角分別為角1、角2和角3,確定角2的定位圖形和角3的定位圖形的中心點連線,與穿過角3的定位圖形的中心點的水平線垂線的夾角的大小,根據該夾角的大小確定所述二維碼的掃描角度。
[0043]其中,可以將該夾角中的銳角作為該二維碼的掃描角度,參見圖lc中的“Z c”也可以將該夾角中的鈍角作為該二維碼的掃描角度,參見圖lc中的“Z d”即步驟“根據該夾角的大小確定該二維碼的掃描角度”具體可以如下:
[0044]確定該夾角中的銳角為該二維碼的掃描角度;或者;
[0045]確定該夾角中的鈍角為該二維碼的掃描角度。
[0046]當然,還可以有其他確定二維碼掃描角度的方法,在此不再列舉。
[0047]需說明的是,上述各條中心點連線、水平線、以及水平線垂線等均與二維碼位于同一平面上,此后不再贅述。
[0048]103、發送該二維碼的掃描角度給服務器,以便該服務器根據該掃描角度對二維碼掃描操作的合法性進行驗證,例如,具體可以如下:
[0049](1)根據該掃描角度生成驗證問題,將該驗證問題發送給服務器,以便該服務器在接收到攜帶驗證答案的二維碼驗證請求時,可以根據該驗證問題對該驗證請求進行驗證。
[0050]也就是說,服務器在接收到該生成的驗證問題之后,便可以保存該驗證問題,這樣,后續若服務器接收到關于該二維碼的二維碼驗證請求,便可以根據該保存的驗證問題對二維碼驗證請求中攜帶的驗證答案進行驗證,若驗證通過,則允許獲取該二維碼對應的二維碼信息,若驗證不通過,則不允許獲取該二維碼對應的二維碼信息,從而保障二維碼信息的安全。
[0051]可選的,為了提高其靈活性,在根據該掃描角度生成驗證問題之前,還可以顯示該二維碼的掃描角度,以供用戶確認,在用戶確認后,比如,在接收到用戶關于該掃描角度的確認消息時,才根據該掃描角度生成驗證問題。
[0052]反之,如果用戶不確認,比如取消此次掃描二維碼的操作,則無需生成驗證問題,和/或,還可以提示用戶選擇是否需要修正當前的掃描角度,如果用戶選擇對當前的掃描角度進行修正,則將修正后的掃描角度作為生成驗證問題的依據,否則,如果用戶選擇不對當前的掃描角度進行修正,則沿用當前的掃描角度作為生成驗證問題的依據,即在步驟“顯示該二維碼的掃描角度,以供用戶確認”之后,該二維碼的驗證方法還可以包括:
[0053]接收用戶輸入的關于該二維碼的掃描角度的修正值。
[0054]則此時,步驟“根據該掃描角度生成驗證問題”具體可以為:根據該掃描角度的修正值生成驗證問題。
[0055](2)根據該掃描角度生成驗證答案,發送二維碼驗證請求給服務器,其中,該二維碼驗證請求攜帶該驗證答案,以便該服務器可以根據預存的驗證問題對該驗證答案進行驗證。
[0056]需說明的是,其中,驗證問題可以預先存儲在服務器中,該驗證問題可以由用戶預先進行設置并發送給服務器,也可以由驗證終端生成并提供給服務器,例如,參見步驟103中的(1)。
[0057]當服務器接收到該驗證答案后,便可以根據該保存的驗證問題對該驗證答案進行驗證,若驗證通過,則允許獲取該二維碼對應的二維碼信息,若驗證不通過,則不允許獲取該二維碼對應的二維碼信息,從而保障二維碼信息的安全。
[0058]與生成驗證問題同理,可選的,為了提高其靈活性,在根據該掃描角度生成驗證答案之前,還可以顯示該二維碼的掃描角度,以供用戶確認,在用戶確認后,比如,在接收到用戶關于該掃描角度的確認消息時,才根據該掃描角度生成驗證答案。
[0059]反之,如果用戶不確認,比如取消此次掃描二維碼的操作,則無需生成驗證答案,和/或,還可以提示用戶選擇是否需要修正當前的掃描角度,如果用戶選擇對當前的掃描角度進行修正,則將修正后的掃描角度作為生成驗證答案的依據,否則,如果用戶選擇不對當前的掃描角度進行修正,則沿用當前的掃描角度作為生成驗證答案的依據,即在步驟“顯示該二維碼的掃描角度,以供用戶確認”之后,該二維碼的驗證方法還可以包括:
[0060]接收用戶輸入的關于該二維碼的掃描角度的修正值。
[0061]則此時,步驟“根據該掃描角度生成驗證答案”具體可以為:根據該掃描角度的修正值生成驗證答案。
[0062]可選的,為了防止惡意地多次發起請求,以套取驗證答案,還可以對預置時間內所發起的二維碼驗證請求的次數進行限制,即在步驟“發送攜帶所述驗證答案的二維碼驗證請求給服務器”之前,該方法還可以包括:
[0063]獲取當前發送二維碼驗證請求的操作時間;確定當前發送二維碼驗證請求的操作時間距離上一次發送二維碼驗證請求的操作時間超過預置第一閾值時,統計發送二維碼驗證請求的次數;若在預置時間內,發