TWI748209B - 基於安全應用的二維碼防偽方法、設備及系統 - Google Patents
基於安全應用的二維碼防偽方法、設備及系統 Download PDFInfo
- Publication number
- TWI748209B TWI748209B TW108125966A TW108125966A TWI748209B TW I748209 B TWI748209 B TW I748209B TW 108125966 A TW108125966 A TW 108125966A TW 108125966 A TW108125966 A TW 108125966A TW I748209 B TWI748209 B TW I748209B
- Authority
- TW
- Taiwan
- Prior art keywords
- code
- security application
- dimensional code
- management server
- dimensional
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K17/00—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
- G06K17/0022—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
- G06Q30/0185—Product, service or business identity fraud
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Finance (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Storage Device Security (AREA)
Abstract
本申請公開了一種基於安全應用的二維碼防偽方法、設備及系統。該方法包括:二維碼安全應用接收產生二維碼資訊數據的請求;二維碼安全應用根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名;二維碼安全應用發送二維碼資訊數據;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;所述二維碼資訊數據包含二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名。
Description
本申請係關於安全領域,尤其關於基於安全應用的二維碼防偽方法、設備及系統。
隨著移動互聯網的發展,二維碼得到了廣泛的應用,例如掃碼打開共用單車、掃描支付等等。為了提高二維碼的安全性,也有些企業提供動態的二維碼,動態二維碼中的數據隨著時間會進行更新,展示變化的二維碼。但是,目前市場上的二維碼驗證解決方案,二維碼資訊本身沒有防偽能力,即透過解碼設備解析二維碼以後,直接得到明文的二維碼數據,該二維碼數據和業務資訊數據一致,掃碼設備無法在本地驗證二維碼資訊的合法性。為了驗證二維碼資訊的合法性,需要將二維碼資訊發送到後台伺服器,依賴於後台伺服器的風險控制能力進行安全防護。但在此過程中,有可能因為無法識別二維碼中資訊的合法性,導致訪問惡意網站或者執行了惡意程式,進而對用戶造成損害。
本申請實施例提供一種基於安全應用的二維碼防偽方法、設備及系統,用於解決二維碼安全性低的問題。
本申請實施例採用下述技術方案:
本申請實施例提供了一種基於安全應用的二維碼防偽方法,所述方法包括:二維碼安全應用接收產生二維碼資訊數據的請求;二維碼安全應用根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名;二維碼安全應用發送二維碼資訊數據;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;所述二維碼資訊數據包含二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名。
本申請實施例提供了一種二維碼讀取方法,所述方法包括:掃描二維碼以獲得二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名;驗證所述二維碼業務資訊的簽名,確認所述二維碼業務資訊。
本申請提供了一種基於安全應用的二維碼防偽方法,所述方法包括:二維碼展示模組發送產生二維碼資訊數據的請求;二維碼安全應用接收產生二維碼資訊數據的請求;二維碼安全應用根據二維碼安全應用的私鑰對二維碼
業務資訊進行簽名;二維碼安全應用向所述二維碼展示模組發送二維碼資訊數據;所述二維碼展示模組以二維碼的方式展示所述二維碼資訊數據;二維碼讀取設備掃描二維碼以獲得二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名;二維碼讀取設備驗證所述二維碼業務資訊的簽名,確認所述二維碼業務資訊;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;所述二維碼資訊數據包含二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名。
本申請提供了一種二維碼防偽設備,該設備包括二維碼安全模組;二維碼安全模組,還用於接收產生二維碼資訊數據的請求;根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名;發送二維碼資訊數據;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;所述二維碼資訊數據包含二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名。
本申請實施例提供了一種二維碼防偽設備,該設備包括安全晶片和記憶體,所述記憶體上儲存有二維碼安全程
式;所述安全晶片,用於執行所述二維碼安全程式以實現根據申請專利範圍第1項所述的方法。
本申請實施例提供了一種二維碼防偽設備,該設備包括處理器和記憶體,所述記憶體儲存有二維碼安全程式;所述處理器,用於執行所述二維碼安全程式以實現所述的方法。
本申請實施例提供了一種二維碼防偽設備,所述設備包括:請求接收模組,用於接收產生二維碼資訊數據的請求;二維碼業務資訊簽名模組,用於根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名;二維碼資訊數據發送模組,用於發送二維碼資訊數據;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;所述二維碼資訊數據包含二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名。
本申請實施例提供了一種二維碼讀取設備,該二維碼讀取設備包括:掃描模組,用於掃描二維碼以獲得二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名;驗證模組,用於驗證所述二維碼業務資訊的簽名,確
認所述二維碼業務資訊。
本申請實施例提供了一種二維碼讀取設備,其特徵在於,所述設備包括處理器和記憶體,所述記憶體上儲存有程式;所述處理器,用於執行所述程式以實現所述的方法。
本申請實施例提供了一種二維碼防偽系統,該系統包括所述的設備以及所述的二維碼讀取設備。
本申請實施例採用的上述至少一個技術方案能夠達到以下有益效果:
本申請實施例透過安全晶片或者可信執行環境對二維碼的業務數據進行簽名,提高了二維碼的安全性,並透過憑證的使用可以使得二維碼讀取設備可以在在本地對二維碼的合法性進行驗證,降低了風險發生的機率。
S11~S16:方法步驟
S21~S23:方法步驟
S31~S33:方法步驟
S41~S42:方法步驟
S51~S53:方法步驟
S61~S67:方法步驟
此處所說明的圖式用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。在圖式中:圖1為本申請第一實施例提供的憑證分發流程圖;圖2為本申請第二實施例的二維碼防偽方法示意圖;圖3為本申請第三實施例的二維碼防偽方法示意圖;圖4為本申請第四實施例的二維碼展示流程示意圖;圖5為本申請第五實施例的二維碼讀取流程示意圖;
圖6為本申請第六實施例的二維碼防偽方法示意圖;圖7為本申請第七實施例的二維碼防偽設備示意圖;圖8為本申請第八實施例的二維碼防偽設備示意圖;圖9為本申請第九實施例的二維碼防偽設備示意圖;圖10為本申請第十實施例的二維碼防偽設備示意圖;圖11為本申請第十一實施例的二維碼防偽設備示意圖;圖12為本申請第十二實施例的二維碼產生和展示系統示意圖;圖13為本申請第十三實施例的二維碼防偽系統示意圖。
為使本申請的目的、技術方案和優點更加清楚,下面將結合本申請具體實施例及相應的圖式對本申請技術方案進行清楚、完整地描述。顯然,所描述的實施例僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本申請保護的範圍。
以下結合圖式,詳細說明本申請實施例提供的技術方案。
第一實施例
如圖1所示,本申請實施公開了一種用於二維碼的憑
證分發方法,具體包括:
步驟S11,二維碼管理伺服器產生非對稱密鑰,包括二維碼管理伺服器公鑰Public_Key_Server和二維碼管理伺服器私鑰Private_Key_Server;在實際應用的過程中,如果使用RSA演算法來產生密鑰,其一般由公鑰和模值,以及私鑰和模值組成,模值一般選擇1024位元或者2048位元。
步驟S12,二維碼管理伺服器將二維碼管理伺服器公鑰分發至若干終端設備,例如智慧型手機、平板電腦、電腦等,終端設備可以使用接收的二維碼管理伺服器公鑰Public_Key_Server來加密數據或者驗證簽名;二維碼管理伺服器公鑰Public_Key_Server的發送可以在沒有建立二維碼管理伺服器和終端設備安全通道的情況下進行傳輸,例如二維碼管理伺服器直接根據終端設備的請求將二維碼管理伺服器公鑰Public_Key_Server返回至終端設備,也可以在向終端設備返回二維碼管理伺服器公鑰Public_Key_Server之前建立安全通道,例如採用安全通訊協定(Secure Sockets Layer,SSL)協議建立安全通道,然後再將二維碼管理伺服器公鑰Public_Key_Server返回至終端設備。對於非對稱密鑰,公鑰用來加密數據和驗證簽名,私鑰用來解密和簽名。
步驟S13,終端設備中的二維碼安全應用產生非對稱密鑰,包括,二維碼安全應用公鑰Public_Key_Client和二維碼安全應用私鑰Private_Key_Client;二維碼安全應用產
生的二維碼安全應用公鑰Public_Key_Client可以用於供二維碼管理伺服器產生憑證,二維碼安全應用私鑰Private_Key_Client可以用於產生簽名;憑證可以基於X.509v3憑證標準,憑證包含的資訊一般包括:公鑰值,公鑰所有者的標識符資訊,有效期,憑證頒發者的標識符資訊,憑證頒發者的數位簽章等。
步驟S14,二維碼安全應用將二維碼安全應用的公鑰Public_Key_Client發送到二維碼管理伺服器;同樣地,二維碼安全應用的公鑰Public_Key_Client的發送可以在沒有建立終端設備和二維碼管理伺服器之間的安全通道的情況下進行傳輸,例如終端設備直接將二維碼安全應用的公鑰Public_Key_Client發送至二維碼管理伺服器,也可以在向二維碼管理伺服器發送二維碼安全應用的公鑰Public_Key_Client之前建立安全通道,例如採用SSL協議建立安全通道,然後再將二維碼安全應用的公鑰Public_Key_Client發送至二維碼管理伺服器。
步驟S15,二維碼管理伺服器使用二維碼管理伺服器的私鑰Private_Key_Server對二維碼的安全應用公鑰Public_Key_Client進行簽名產生憑證;在產生憑證的過程中,可以直接對二維碼安全應用公鑰Public_Key_Client進行簽名產生憑證(public key certificate,PKC),也可以對二維碼安全應用公鑰Public_Key_Client進行雜湊計算得到雜湊值,再使用二維碼管理伺服器的私鑰Private_Key_Server將該雜湊值簽名產生憑證PKC;作為示
例,憑證包括:二維碼的安全應用公鑰(m,d),安全應用的標識1001,有效期2019年1月1日,二維碼管理伺服器標識0001,二維碼的安全應用公鑰的簽名(m’,d’)。(m,d)是透過密鑰演算法得到,(m’,d’)是透過二維碼管理伺服器的私鑰對二維碼的安全應用公鑰(m,d)進行運算得到,例如對(m,d)進行雜湊運算之後再使用二維碼管理伺服器的私鑰對其進行冪指數運算和模運算,將模運算的結果作為簽名。
步驟S16,二維碼管理伺服器將憑證發送到二維碼安全應用;同樣地,二維碼管理伺服器可以在沒有建立二維碼管理伺服器和終端設備安全通道的情況下進行傳輸,例如二維碼管理伺服器直接將憑證PKC返回至終端設備,也可以在向終端設備返回憑證PKC之前建立安全通道,例如採用安全通訊協定(Secure Sockets Layer,SSL)協議建立安全通道,然後再將憑證PKC返回至終端設備。
透過上述的步驟,二維碼管理伺服器可以將憑證分發至需要該憑證的終端設備,從而為終端設備產生具有安全性的二維碼時附上該憑證完成了準備工作。終端設備可以使用憑證作為二維碼安全應用公鑰Public_Key_Client的載體,在終端設備使用二維碼安全應用私鑰Private_Key_Client簽名數據時,二維碼讀取設備可以透過對憑證驗證獲得二維碼安全應用公鑰Public_Key_Client,從而可以對使用二維碼安全應用私鑰Private_Key_Client所做的簽名進行進一步的驗證。需要說明的是,二維碼讀取
設備保存有二維碼管理伺服器分發的二維碼管理伺服器的公鑰。
對於非對稱密鑰而言,用私鑰可以用來解密或者簽名,公鑰可以用來加密或者驗證簽名。非對稱密鑰的演算法可以包括RSA、Elgamal、背包演算法、Rabin、D-H、ECC中的任一種。下面以RSA演算法為例,分別說明公鑰、私鑰、簽章憑證以及簽名產生的過程。
二維碼管理伺服器產生二維碼管理伺服器公鑰Public_Key_Server和二維碼管理伺服器私鑰Private_Key_Server的過程,具體包括:步驟(1),令素數p=3,素數q=11,得到n=p×q=33,f(n)=(p-1)×(q-1)=20;步驟(2),令e=3,e與d互質;步驟(3),令e×d≡1mod f(n),即3×d≡1mod20,透過下表來選擇d:
因此,可以選擇d=7,滿足3×d≡1mod20。
步驟(4),因此,二維碼管理伺服器公鑰Public_Key_Server可以為(3,33),二維碼管理伺服器私鑰Private_Key_Server可以為(7,33)。
在獲得上述的二維碼管理伺服器公鑰Public_Key_Server和二維碼管理伺服器私鑰Private_Key_Server之後,可以將二維碼管理伺服器公鑰Public_Key_Server發送到終端設備,二維碼管理伺服器保留二維碼管理伺服器私鑰Private_Key_Server。
二維碼安全應用產生安全二維碼安全應用公鑰Public_Key_Client和二維碼安全應用私鑰
Private_Key_Client的過程,具體包括:步驟(A),令素數p=13,素數q=7,得到n=p×q=91,f(n)=(p-1)×(q-1)=72;步驟(B),令e=7,e與d互質;步驟(C),令e×d≡1mod f(n),即7×d≡1mod72,7×d可以是73,145,217等。
因此,為了滿足上述恆等式,可以選擇d=31,滿足7×d≡1mod72。
步驟(D),因此,二維碼安全應用公鑰Public_Key_Client可以為(7,72),二維碼安全應用私鑰Private_Key_Client可以為(31,72)。
在二維碼安全應用在產生二維碼安全應用公鑰Public_Key_Client和二維碼安全應用私鑰Private_Key_Client以後,可以將二維碼安全應用公鑰Public_Key_Client發送至二維碼管理伺服器,由二維碼管理伺服器產生憑證PKC,並發送至安裝有二維碼安全應用的終端設備。
二維碼管理伺服器產生憑證的過程可以如下:步驟(I),二維碼安全應用將二維碼安全應用公鑰Public_Key_Client發送至二維碼管理伺服器,例如二維碼安全應用公鑰Public_Key_Client為(7,72);步驟(II),二維碼管理伺服器收到二維碼安全應用公鑰Public_Key_Client(7,72)以後,使用二維碼管理伺服器的Private_Key_Server(7,33)來產生憑證。
例如,透過計算7^7 mod 33=28以及72^7 mod 33=30得到憑證中包含的憑證內容為(7,72,1001,20190101,0001,28,30)。二維碼讀取設備在收到該憑證以後,可以確認公鑰為(7,72),二維碼安全應用的標識為1001,公鑰的有效期為2019年1月1日,二維碼管理伺服器的標識為0001,公鑰的簽名為(28,30)。
可選地,還可以對二維碼安全應用公鑰Public_Key_Client(7,72)進行散列,例如將公鑰中的7和72組合為772,然後模16後,得到4。此後,可以使用二維碼管理伺服器的Private_Key_Server(7,33)來對4進行運算,4^7 mod 33=16,得到陣列(7,72,1001,20190101,0001,16),作為憑證的內容。
步驟(III),二維碼管理伺服器將包含陣列的憑證發送至終端設備的安全應用,例如憑證的內容為陣列(7,72,1001,20190101,0001,28,30)或者(7,72,1001,20190101,0001,16)。
可選地,在安裝有二維碼安全應用的終端設備保存有二維碼管理伺服器公鑰Public_Key_Server的情況下,二維碼管理伺服器還可以使用二維碼管理伺服器私鑰Private_Key_Server對憑證進一步簽名,將憑證以及對憑證的簽名發送到安全應用,安全應用可以進一步使用二維碼管理伺服器公鑰Public_Key_Server驗證憑證的真實性。
透過上述的步驟,可以完成憑證的分發。
需要說明的是,對於終端設備而言,均可以接收並保
存二維碼管理伺服器公鑰Public_Key_Server。如果終端設備安裝有二維碼安全應用,則其既可以用來產生二維碼,也可以用來讀取二維碼。如果終端設備未安裝有二維碼安全應用,則其用來來讀取二維碼,但不能用來按照本申請實施例提供的技術方案產生二維碼,在其需要產生二維碼時,其可以採用傳統的方式來產生和展示二維碼,例如可以透過應用程式本身內置的二維碼產生和展示模組來產生和展示二維碼。需要說明的是,應用程式內置二維碼產生和展示模組來產生和展示二維碼是現有技術,在此不再贅述。
第二實施例
在現實生活中,二維碼可以應用於很多的場景,例如支付場景或者即時通信場景。下面以支付場景為例對二維碼產生流程進行說明。
隨著社會的進步,便利店越來越多,方便了人們的生活。便利店的掃碼機可以透過掃描客戶購買的商品上的條碼來為客戶結算,結算之後可以透過二維碼展示,用戶可以掃描該二維碼進行支付。
商家在收費的終端設備上確認結算之後,該終端設備中的二維碼展示模組會向二維碼安全應用發送二維碼資訊數據產生請求,該請求中會包括結算的有關資訊,例如收款方帳號,金額等資訊,二維碼安全應用可以使用二維碼安全應用私鑰Private_Key_Client對該資訊進行簽名,並附
上公約憑證發送到二維碼展示模組,供二維碼展示模組按照二維碼展示的規則展示包含二維碼安全應用所發送資訊的二維碼。可選地,結算資訊中可以包含日期資訊,二維碼安全應用還可以增加一些動態資訊,例如隨機數之類的資訊。
圖2示出了本申請實施例提供的二維碼產生流程,具體包括:
步驟S21,二維碼安全應用接收產生二維碼資訊數據的請求;該請求可以來自於二維碼展示模組;該二維碼展示模組可以為商家計費系統內置的模組,也可以是針對二維碼的應用外置的模組,主要是在用戶確認結算金額之後,獲取與結算有關的資訊(例如可以稱為二維碼業務資訊),例如訂單資訊,並發送到二維碼安全應用;與結算有關的資訊包括但不限於金額、商家帳戶標識等,甚至還可以包括用戶購買商品的明細,購買日期等等;
步驟S22,二維碼安全應用根據二維碼安全應用的私鑰對訂單資訊進行簽名;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;二維碼安全應用在收到二維碼展示模組發送的二維碼資訊數據產生請求之後,可以使用二維碼安全應用私鑰Private_Key_Client簽名訂單資訊。二維碼業務資訊以及二維碼安全應用的簽章憑證可以合稱為二維碼資訊數據。可選地,二維碼資訊數據還可以包含憑證。二維碼安全應用使用私鑰Private_Key_Client簽名訂單資訊時,可以將訂單
資訊進行雜湊運算,然後對雜湊運算得到的結果進行冪指數運算和取模運算,將取模的結果作為簽名。
步驟S23,二維碼安全應用發送二維碼資訊數據;所述二維碼資訊數據包含二維碼業務資訊以及二維碼安全應用對所述訂單資訊的簽名;可選地,該二維碼資訊數據中還包含憑證。憑證可以是由二維碼管理伺服器提供的憑證,是二維碼管理伺服器對二維碼安全應用發送的公鑰的簽章憑證。
為了便於說明,本申請實施例將二維碼展示模組發送的二維碼業務資訊簡化為僅包括金額數據,例如2。
在二維碼安全應用收到二維碼業務資訊之後,需要使用二維碼安全應用私鑰Private_Key_Client(31,72)對二維碼業務資訊進行簽名,例如透過計算2^31 mod 72=56。
如上所述,憑證的內容為陣列可以為(7,72,1001,20190101,0001,28,30)或者(7,72,1001,20190101,0001,16),因此安全應用可以產生如下的二維碼資訊數據:(2,56,7,72,1001,20190101,0001,28,30)或者(2,56,7,72,1001,20190101,0001,16)。
二維碼安全應用可以將上述的二維碼資訊數據發送到二維碼展示模組,二維碼展示模組按照編碼規則,將二維碼資訊數據展示為二維碼,例如QR碼。
上述的流程可以實現支付場景下的二維碼產生,該二維碼中包含了二維碼業務資訊、安全應用簽名以及憑證。
二維碼讀取設備可以讀取二維碼,獲取二維碼資訊數據,並可以透過對簽名進行驗證,從而確認二維碼業務數據是否真實。
第三實施例
在現實生活中,二維碼可以應用於很多的場景,例如支付場景或者即時通信場景。下面以即時通信場景為例對二維碼產生流程進行說明。
隨著移動互聯網的發展,基於無線互聯網技術的即時通信軟體層出不窮,例如微信,釘釘等。即時通信軟體一般都會提供透過掃描二維碼來添加好友或者透過掃描二維碼來加入群的功能。
現有技術中,二維碼讀取設備在掃描二維碼獲得相關數據時,不對其真實性進行驗證,存在安全隱患。
本申請中,用戶在同意另一用戶透過掃描自身的二維碼來加為好友時,該另一用戶所使用的終端設備中的二維碼展示模組會向二維碼安全應用發送二維碼資訊數據產生請求,該請求可以僅僅是一個展示二維碼的請求,可以不包含任何資訊,也可以包含用戶的標識;如果該請求僅僅是一個展示二維碼的請求,則二維碼安全應用可以之前預先與即時通信軟體進行交互獲得用戶的標識,在收到該請求之後,二維碼安全應用可以使用二維碼安全應用私鑰Private_Key_Client對該用戶的標識來進行簽名;如果請求中包含有用戶的標識(可以稱為二維碼業務資訊),二維碼
安全應用可以使用二維碼安全應用私鑰Private_Key_Client對該資訊進行簽名;二維碼安全應用在簽名之後,可以將二維碼業務資訊、簽名以及公約憑證發送到二維碼展示模組,供二維碼展示模組按照二維碼展示的規則展示包含二維碼安全應用所發送資訊的二維碼。
圖3示出了本申請實施例提供的二維碼產生流程,具體包括:步驟S31,二維碼安全應用接收產生二維碼資訊數據的請求;該請求可以來自於二維碼展示模組;該二維碼展示模組可以為即時通信軟體中的二維碼展示模組,例如二維碼名片模組,主要是在用戶點擊之後獲取用戶的標識(例如可以稱為二維碼業務資訊),並發送到二維碼安全應用;當然,也可以僅發送空的請求,用戶的標識預先保存在二維碼安全應用中;步驟S32,二維碼安全應用根據二維碼安全應用的私鑰對用戶標識進行簽名;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;步驟S33,二維碼安全應用發送二維碼資訊數據;所述二維碼資訊數據包含二維碼業務資訊以及二維碼安全應用對所述用戶標識的簽名;可選地,該二維碼資訊數據中還包含憑證。憑證可以是由二維碼管理伺服器提供的憑證,是二維碼管理伺服器對二維碼安全應用發送的公鑰的簽章憑證。
為了便於說明,本申請實施例將用戶的標識設為2。
在二維碼安全應用收到二維碼資訊數據產生請求之後,需要使用二維碼安全應用私鑰Private_Key_Client(31,72)對二維碼業務資訊(即用戶的標識)進行簽名,例如透過計算2^31 mod 72=56。
如上所述,憑證的內容為陣列可以為(7,72,1001,20190101,0001,28,30)或者(7,72,1001,20190101,0001,16),因此安全應用可以產生如下的二維碼資訊數據:(2,56,7,72,1001,20190101,0001,28,30)或者(2,56,7,72,1001,20190101,0001,16)。
二維碼安全應用可以將上述的二維碼資訊數據發送到二維碼展示模組,二維碼展示模組按照編碼規則,將二維碼資訊數據展示為二維碼,例如QR碼。
上述的流程可以實現即時通信場景下的二維碼產生,該二維碼中包含了用戶的標識。
二維碼讀取設備可以讀取二維碼,獲取二維碼資訊數據,並可以透過對簽名進行驗證,從而確認二維碼業務數據是否真實。
第四實施例
相對於條碼,二維碼能包含更多的資訊,隨著智慧型手機的普及,二維碼得到了廣泛的應用。
比較常用的二維碼是快速回應(quick response,QR)。
二維碼中一般包含:碼定位圖案、功能性數據、數據碼和錯誤校正碼等幾個部分。
碼定位圖案的功能主要用於矯正二維碼的位置。用戶使用智慧型手機在掃描二維碼時,可能無法對準,可以透過碼定位圖案將二維碼矯正,從而便於解析出二維碼中的各個像素。
功能性數據主要包括存放一些格式化數據,以及二維碼版本的資訊。
數據碼主要用於存放二維碼資訊數據。
錯誤校正碼主要用於存放對於二維碼資訊數據的前向錯誤校正碼。
圖4示出了本申請實施例提供的二維碼展示流程,具體包括:步驟S41,二維碼展示模組向安全應用發送二維碼資訊數據產生請求;該二維碼展示模組可以為即時通信軟體中的二維碼展示模組,例如二維碼名片模組,主要是在用戶點擊之後獲取用戶的標識(例如可以稱為二維碼業務資訊),並發送到二維碼安全應用;當然,也可以僅發送空的請求,用戶的標識預先保存在二維碼安全應用中;或者該二維碼展示模組可以為商家計費系統內置的模組,也可以是針對二維碼的應用外置的模組,主要是在用戶確認結算金額之後,獲取與結算有關的資訊(例如可以稱為二維碼業務資訊),並發送到二維碼安全應用;與結算有
關的資訊包括但不限於金額、商家帳戶標識等,甚至還可以包括用戶購買商品的明細,購買日期等等;步驟S42,二維碼展示模組接收二維碼安全應用發送的二維碼資訊數據,並根據二維碼編碼規則展示二維碼資訊數據對應的二維碼。
二維碼安全應用在收到二維碼展示模組發送的請求之後,可以使用二維碼安全應用私鑰Private_Key_Client對二維碼業務資訊進行簽名,並附上憑證發送至二維碼展示模組。二維碼業務資訊,二維碼安全應用的簽名以及憑證可以合稱為二維碼資訊數據。
為了便於說明,本申請實施例將二維碼業務資訊設為2。
在二維碼安全應用收到二維碼資訊數據產生請求之後,需要使用二維碼安全應用私鑰Private_Key_Client(31,72)對二維碼業務資訊(用戶的標識或商家的結算資訊)進行簽名,例如透過計算2^31 mod 72=56。
如上所述,憑證的內容為陣列可以為(7,72,1001,20190101,0001,28,30)或者(7,72,1001,20190101,0001,16),因此安全應用可以產生如下的二維碼資訊數據:(2,56,7,72,1001,20190101,0001,28,30)或者(2,56,7,72,1001,20190101,0001,16)。
二維碼安全應用可以將上述的二維碼資訊數據發送到
二維碼展示模組,二維碼展示模組按照編碼規則,將二維碼資訊數據展示為二維碼,例如QR碼。
二維碼讀取設備可以讀取二維碼,獲取二維碼資訊數據,並可以透過對簽名進行驗證,從而確認二維碼業務數據是否真實。
第五實施例
在終端設備展示二維碼之後,二維碼讀取設備需要對二維碼進行掃描,並驗證二維碼中的二維碼業務資訊是否真實。
圖5示出了本申請實施例提供的二維碼讀取流程,具體包括:
步驟S51,二維碼讀取設備掃描二維碼,獲取二維碼資訊數據。具體而言,二維碼讀取設備可以透過對二維碼進行圖像分析,解析出二維碼中包含的二維碼資訊數據,例如(2,56,7,72,1001,20190101,0001,28,30)或者(2,56,7,72,1001,20190101,0001,16)。
步驟S52,二維碼讀取設備使用其儲存的二維碼管理伺服器公鑰Public_Key_Server(3,33)來驗證憑證,例如透過計算28^3 mod 33=7,30^3 mod 33=72,從而驗證二維碼安全應用公鑰Public_Key_Client可以為(7,72),與憑證中的二維碼安全應用公鑰Public_Key_Client相同,從而驗證二維碼安全應用的公鑰為(7,72);或者透過計算16^3 mod 33=4,772 mod 16=4,從而驗證二維碼安全應用的公鑰為
(7,72)。
進一步地,二維碼讀取設備使用二維碼安全應用公鑰Public_Key_Client驗證簽名,例如透過計算2^7 mod 72=56,從而驗證了二維碼業務資訊2的真實性。
步驟S53,在對二維碼業務資訊驗證通過以後,可以根據二維碼業務資訊完成後續業務流程。
例如,在支付場景下,可以向帳務系統發起扣款請求,帳務系統扣款後通知用戶,並將所扣款項打入商家的帳戶;又如,在即時通信場景下,可以向即時通信伺服器發送好友添加請求,即時通信伺服器將該好友添加請求發送到用戶,用戶同意該請求後,雙方成為好友。
第六實施例
本申請提供的基於安全應用的二維碼防偽方法如圖6所示,具體包括:步驟S61,二維碼展示模組發送產生二維碼資訊數據的請求;該請求中可以包括例如訂單資訊之類的二維碼業務資訊,也可以為空請求,例如二維碼可以預先儲存有例如用戶標識之類的二維碼業務資訊;步驟S62,二維碼安全應用接收產生二維碼資訊數據的請求;步驟S63,二維碼安全應用根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名;
步驟S64,二維碼安全應用向所述二維碼展示模組發送二維碼資訊數據;步驟S65,二維碼展示模組以二維碼的方式展示所述二維碼資訊數據;步驟S66,二維碼讀取設備掃描二維碼以獲得二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名;步驟S67,二維碼讀取設備驗證所述二維碼業務資訊的簽名,確認所述二維碼業務資訊;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;所述二維碼資訊數據包含二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名。
需要說明的是,安全應用還可以保存有二維碼管理伺服器發送的憑證,該憑證是二維碼管理伺服器針對安全應用的公鑰產生的簽章憑證。在安全應用發送二維碼資訊數據的時候,可以將該憑證一併發送至二維碼展示模組。相應地,二維碼讀取設備可以預先儲存有二維碼管理伺服器發送的公鑰,可以用來驗證憑證的真實性;在二維碼讀取設備驗證二維碼真實性以後,可以利用憑證中的二維碼安全應用的公鑰來驗證二維碼業務資訊簽名的真實性,通過雙重驗證以後,可以對二維碼業務資訊進行處理,進行後續流程。可選地,也可以透過其他方式將安全應用的公鑰發送到二維碼讀取設備,用來二維碼業務資訊簽名的真實
性。
第七實施例
本申請實施例提供了一種二維碼資訊數據產生設備,如圖7所示,其可以為獨立的實體,例如位於安全晶片中的二維碼安全模組,或者為能夠產生二維碼資訊數據的晶片。優選地,還包括二維碼展示模組。
二維碼安全模組可以利用位於安全晶片中的二維碼安全應用來實現,二維碼安全應用可以產生安全二維碼安全應用公鑰Public_Key_Client和二維碼安全應用私鑰Private_Key_Client,具體產生的過程在此不再贅述。
在二維碼安全應用在產生二維碼安全應用公鑰Public_Key_Client和二維碼安全應用私鑰Private_Key_Client以後,可以將二維碼安全應用公鑰Public_Key_Client發送至二維碼管理伺服器,由二維碼管理伺服器產生憑證PKC,並發送至安裝有二維碼安全應用的終端設備。
二維碼安全應用在收到二維碼展示模組發送的二維碼資訊數據產生請求之後,可以使用二維碼安全應用私鑰Private_Key_Client進行簽名二維碼業務資訊,優選地,可以附上憑證發送至二維碼展示模組。二維碼業務資訊,以及二維碼安全應用的簽名可以合稱為二維碼資訊數據。二維碼資訊數據還可以包括憑證。二維碼安全應用可以將二維碼資訊數據發送至二維碼展示模組。
第八實施例
本申請實施例提供了一種二維碼資訊數據產生設備,如圖8所示,其可以為獨立的實體,例如二維碼安全模組。優選地,還包括二維碼展示模組。
二維碼安全模組可以利用位於可信執行環境中的二維碼安全應用來實現,二維碼安全應用可以產生安全二維碼安全應用公鑰Public_Key_Client和二維碼安全應用私鑰Private_Key_Client,具體產生的過程在此不再贅述。
在二維碼安全應用在產生二維碼安全應用公鑰Public_Key_Client和二維碼安全應用私鑰Private_Key_Client以後,可以將二維碼安全應用公鑰Public_Key_Client發送至二維碼管理伺服器,由二維碼管理伺服器產生憑證PKC,並發送至安裝有二維碼安全應用的終端設備。
二維碼安全應用在收到二維碼展示模組發送的二維碼業務資訊之後,可以使用二維碼安全應用私鑰Private_Key_Client進行簽名,優選地,可以附上憑證發送至二維碼展示模組。二維碼業務資訊,以及二維碼安全應用的簽名可以合稱為二維碼資訊數據。二維碼資訊數據還可以包括憑證。二維碼安全應用可以將二維碼資訊數據發送至二維碼展示模組。
二維碼展示模組可以透過二維碼展示應用程式實現,例如可以是帳務系統或即時通信軟體中的模組,或者是獨
立於帳務系統或即時通信軟體的模組。
第九實施例
本申請實施例提供的資訊數據產生設備,如圖9所示,該設備包括:請求接收模組,二維碼業務資訊簽名模組,二維碼資訊數據發送模組。優選地,該設備還可以包括公鑰發送模組和憑證接收模組;優選地,還可以包括二維碼展示模組。請求接收模組,用於接收產生二維碼資訊數據的請求;二維碼業務資訊簽名模組,用於根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名;二維碼資訊數據發送模組,用於發送二維碼資訊數據;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;所述二維碼資訊數據包含二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名。公鑰發送模組,用於將二維碼安全應用的公鑰發送至二維碼管理伺服器;憑證接收模組,用於接收二維碼安全應用的憑證;其中,所述二維碼資訊數據還包含所述二維碼安全應用的憑證。二維碼資訊數據發送模組,用於將所述二維碼資訊數據發送至所述二維碼展示模組;所述二維碼展示模組,用於以二維碼的方式展示所述二維碼資訊數據。
第十實施例
本申請公開的二維碼資訊數據產生設備,其可以為獨
立的物理實體,如圖10所示,該設備包括處理器和記憶體,記憶體可以分為兩部分,例如第一記憶體和第二記憶體,優選地,第一記憶體上儲存有二維碼安全程式,例如二維碼安全應用,第二記憶體儲存有二維碼展示應用程式。
處理器,可以執行第一記憶體上的二維碼安全程式,實現本申請實施例提供的基於安全應用的二維碼防偽方法。
第十一實施例
本申請公開的二維碼資訊數據產生設備,其可以為獨立的物理實體,如圖11所示,該設備包括安全晶片和第一記憶體,第一記憶體上儲存有二維碼安全程式,例如二維碼安全應用;優選地,該設備還包括處理器和第二記憶體,第二記憶體上儲存有二維碼展示程式。
安全晶片,可以執行第一記憶體上的二維碼安全程式,實現本申請實施例提供的基於安全應用的二維碼防偽方法。
第十二實施例
本申請實施例提供的二維碼讀取設備示意圖,如圖12所示,該設備包括:掃描模組以及驗證模組。掃描模組,用於掃描二維碼以獲得二維碼業務資訊以及二維碼安全應用對所述二維碼業務資訊的簽名;驗證模組,用於驗證所
述二維碼業務資訊的簽名,確認所述二維碼業務資訊。
優選地,本申請實施例還提供了另一種二維碼讀取設備示意圖,如圖10所示,包括處理器和記憶體,所述記憶體上儲存有程式,例如二維碼讀取應用程式;處理器,用於執行二維碼讀取應用程式實現本申請實施例提供的二維碼讀取方法。
優選地,上述二維碼讀取設備為移動智慧型終端或者電腦。
第十三實施例
本申請實施例提供的二維碼系統,如圖13所示,該系統包括二維碼防偽設備和二維碼讀取設備;優選地,該系統還包括二維碼管理伺服器;該二維碼防偽設備可以是本申請實施例提供的任何一種二維碼防偽設備,二維讀取設備可以是本申請示例提供的任何一種二維碼讀取設備。
本申請實施例可以透過二維碼管理伺服器分發二維碼管理伺服器的公鑰,並使用二維碼管理伺服器的私鑰簽名二維碼安全應用的公鑰,以及使用安全晶片或可信執行環境對二維碼安全應用的私鑰進行保護的方案,可以讓二維碼讀取設備在本地就可以有效的對二維碼安全應用的合法性進行驗證,降低了風險發生的機率。
本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面
的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得透過電腦或其他可編程數據處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些電腦程式指令也可儲存在能引導電腦或其他可編程數據處理設備以特定方式工作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些電腦程式指令也可裝載到電腦或其他可編程數據處理設備上,使得在電腦或其他可編程設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可編程設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的
步驟。
在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。
記憶體可能包括電腦可讀媒體中的非永久性記憶體,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀媒體的示例。
電腦可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、數據結構、程式的模組或其他數據。電腦的儲存媒體的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可擦除可編程唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁片儲存或其他磁性儲存設備或任何其他非傳輸媒體,可用於儲存可以被計算設備訪問的資訊。按照本文中的界定,電腦可讀媒體不包括暫存電腦可讀媒體(transitory media),如調變的數據信號和載波。
還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這
種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。
本領域技術人員應明白,本申請的實施例可提供為方法、系統或電腦程式產品。因此,本申請可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本申請可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
以上所述僅為本申請的實施例而已,並不用於限制本申請。對於本領域技術人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本申請的申請專利範圍之內。
Claims (36)
- 一種基於安全應用的二維碼防偽方法,其特徵在於,該方法包括:二維碼安全應用接收產生二維碼資訊數據的請求;二維碼安全應用根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名;二維碼安全應用發送二維碼資訊數據;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;該二維碼資訊數據包含二維碼業務資訊、二維碼安全應用對該二維碼業務資訊的簽名以及二維碼安全應用的憑證,該憑證是由二維碼管理伺服器利用二維碼管理伺服器的私鑰對二維碼安全應用的公鑰進行簽名後產生的,使得二維碼讀取設備利用二維碼管理伺服器的公鑰對該憑證進行驗證,得到二維碼安全應用的公鑰,以透過利用二維碼安全應用的公鑰驗證該簽名來對該二維碼業務資訊進行驗證。
- 如請求項1所述的方法,其中,該方法還包括:二維碼安全應用將二維碼安全應用的公鑰發送至二維碼管理伺服器;二維碼安全應用接收二維碼安全應用的憑證。
- 如請求項1所述的方法,其中,該產生二維碼資訊數 據的請求包含該二維碼業務資訊;或者在該二維碼安全應用具有該二維碼業務資訊的情況下,該產生二維碼資訊數據的請求為空請求。
- 如請求項1-3任意一項所述的方法,其中,所述發送二維碼資訊數據包括:將該二維碼資訊數據發送至該二維碼展示模組;該方法還包括:該二維碼展示模組以二維碼的方式展示該二維碼資訊數據。
- 如請求項2所述的方法,其中,該方法還包括:該二維碼管理伺服器產生二維碼管理伺服器使用的非對稱密鑰,包括二維碼管理伺服器的公鑰和二維碼管理伺服器的私鑰;和/或該二維碼管理伺服器產生二維碼管理伺服器使用的對稱密鑰。
- 如請求項5所述的方法,其中,該方法還包括:該二維碼管理伺服器將二維碼管理伺服器的公鑰分發至二維碼讀取設備和/或二維碼安全應用。
- 如請求項1所述的方法,其中,所述二維碼安全應用根據二維碼安全應用的私鑰簽名二維碼業務資訊包括: 該二維碼安全應用結合動態資訊和該業務資訊得到更新後的業務資訊;該二維碼安全應用根據二維碼安全應用的私鑰簽名該更新的二維碼業務資訊。
- 一種二維碼讀取方法,其特徵在於,該方法包括:掃描二維碼以獲得二維碼業務資訊、二維碼安全應用對該二維碼業務資訊的簽名以及二維碼安全應用的憑證,該憑證是由二維碼管理伺服器利用二維碼管理伺服器的私鑰對二維碼安全應用的公鑰進行簽名後產生的;利用二維碼管理伺服器產生的密鑰驗證該憑證,確認該憑證包含的二維碼安全應用的公鑰;利用該憑證包含的二維碼安全應用的公鑰驗證該二維碼業務資訊的簽名,確認該二維碼業務資訊。
- 如請求項8所述的方法,其中,該方法還包括:二維碼安全應用將二維碼安全應用的公鑰發送至二維碼讀取設備;或者二維碼管理伺服器將二維碼安全應用的公鑰發送至二維碼讀取設備;或者二維碼管理伺服器將二維碼管理伺服器產生的密鑰發送至二維碼讀取設備,其中二維碼管理伺服器產生的密鑰為非對稱密鑰或對稱密鑰。
- 一種基於安全應用的二維碼防偽方法,其特徵在於, 該方法包括:二維碼展示模組發送產生二維碼資訊數據的請求;二維碼安全應用接收產生二維碼資訊數據的請求;二維碼安全應用根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名;二維碼安全應用向該二維碼展示模組發送二維碼資訊數據;該二維碼展示模組以二維碼的方式展示該二維碼資訊數據;二維碼讀取設備掃描二維碼以獲得二維碼業務資訊、二維碼安全應用對該二維碼業務資訊的簽名以及二維碼安全應用的憑證;二維碼讀取設備利用二維碼管理伺服器產生的密鑰驗證該憑證,確認該憑證包含的二維碼安全應用的公鑰;二維碼讀取設備利用該憑證包含的二維碼安全應用的公鑰驗證該二維碼業務資訊的簽名,確認該二維碼業務資訊;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;該二維碼資訊數據包含二維碼業務資訊、二維碼安全應用對該二維碼業務資訊的簽名以及二維碼安全應用的憑證,該憑證是由二維碼管理伺服器利用二維碼管理伺服器的私鑰對二維碼安全應用的公鑰進行簽名後產生的。
- 如請求項10所述的方法,其中,該方法還包括: 二維碼安全應用將二維碼安全應用的公鑰發送至二維碼管理伺服器;二維碼安全應用接收二維碼安全應用的憑證。
- 如請求項10所述的方法,其中,該產生二維碼資訊數據的請求包含該二維碼業務資訊;或者在該二維碼安全應用具有該二維碼業務資訊的情況下,該產生二維碼資訊數據的請求為空請求。
- 如請求項10所述的方法,其中,該方法還包括:該二維碼管理伺服器產生二維碼管理伺服器使用的非對稱密鑰,包括二維碼管理伺服器的公鑰和二維碼管理伺服器的私鑰;和/或該二維碼管理伺服器產生二維碼管理伺服器使用的對稱密鑰。
- 如請求項13所述的方法,其中,該方法還包括:該二維碼管理伺服器將二維碼管理伺服器的公鑰分發至二維碼讀取設備和/或二維碼安全應用。
- 如請求項10所述的方法,其中,所述二維碼安全應用根據二維碼安全應用的私鑰簽名二維碼業務資訊包括:該二維碼安全應用結合動態資訊和該業務資訊得到更新後的業務資訊; 該二維碼安全應用根據二維碼安全應用的私鑰簽名該更新的二維碼業務資訊。
- 如請求項10所述的方法,其中,該方法還包括:二維碼安全應用將二維碼安全應用的公鑰發送至二維碼讀取設備;或者二維碼管理伺服器將二維碼安全應用的公鑰發送至二維碼讀取設備;或者二維碼管理伺服器將二維碼管理伺服器產生的密鑰發送至二維碼讀取設備,其中二維碼管理伺服器產生的密鑰為非對稱密鑰或對稱密鑰。
- 一種二維碼防偽設備,其特徵在於,該設備包括二維碼安全模組;二維碼安全模組,還用於接收產生二維碼資訊數據的請求;根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名;發送二維碼資訊數據;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;該二維碼資訊數據包含二維碼業務資訊、二維碼安全應用對該二維碼業務資訊的簽名以及二維碼安全應用的憑證,該憑證是由二維碼管理伺服器利用二維碼管理伺服器的私鑰對二維碼安全應用的公鑰進行簽名後產生的,使得二維碼讀取設備利用二維碼管理伺服器的公鑰對該憑證進行驗證,得到二維碼安全應用的公鑰,以透過利用二維碼安全應用的公鑰驗 證該簽名來對該二維碼業務資訊進行驗證。
- 如請求項17所述的設備,其中,二維碼安全模組,還用於將二維碼安全模組的公鑰發送至二維碼管理伺服器;接收二維碼安全模組的憑證;其中,該二維碼資訊數據還包含該二維碼安全模組的憑證。
- 如請求項17所述的設備,其中,該產生二維碼資訊數據的請求包含該二維碼業務資訊;或者在該二維碼安全應用具有該二維碼業務資訊的情況下,該產生二維碼資訊數據的請求為空請求。
- 如請求項17-19任意一項所述的設備,其中,二維碼安全模組,還用於將該二維碼資訊數據發送至該二維碼展示模組;以二維碼的方式展示該二維碼資訊數據。
- 如請求項18所述的設備,其中,該二維碼管理伺服器,用於產生二維碼管理伺服器使用的非對稱密鑰,包括二維碼管理伺服器的公鑰和二維碼管理伺服器的私鑰;和/或該二維碼管理伺服器,用於產生二維碼管理伺服器使用的對稱密鑰。
- 如請求項21所述的設備,其中,該二維碼管理伺服器,還用於將二維碼管理伺服器的公鑰分發至二維碼讀取設備和/或二維碼安全模組。
- 如請求項17所述的設備,其中,該二維碼安全模組,還用於結合動態資訊和該業務資訊得到更新後的業務資訊;根據二維碼安全模組的私鑰簽名該更新的二維碼業務資訊。
- 一種二維碼防偽設備,其特徵在於,該設備包括安全晶片和記憶體,該記憶體上儲存有二維碼安全程式;該安全晶片,用於執行該二維碼安全程式以實現根據請求項1所述的方法。
- 一種二維碼防偽設備,其特徵在於,該設備包括處理器和記憶體,該記憶體儲存有二維碼安全程式;該處理器,用於執行該二維碼安全程式以實現根據請求項1所述的方法。
- 一種二維碼防偽設備,其特徵在於,該設備包括:請求接收模組,用於接收產生二維碼資訊數據的請求;二維碼業務資訊簽名模組,用於根據二維碼安全應用的私鑰對二維碼業務資訊進行簽名; 二維碼資訊數據發送模組,用於發送二維碼資訊數據;其中,二維碼安全應用具有二維碼安全應用的公鑰和二維碼安全應用的私鑰構成的非對稱密鑰;該二維碼資訊數據包含二維碼業務資訊、二維碼安全應用對該二維碼業務資訊的簽名以及二維碼安全應用的憑證,該憑證是由二維碼管理伺服器利用二維碼管理伺服器的私鑰對二維碼安全應用的公鑰進行簽名後產生的,使得二維碼讀取設備利用二維碼管理伺服器的公鑰對該憑證進行驗證,得到二維碼安全應用的公鑰,以透過利用二維碼安全應用的公鑰驗證該簽名來對該二維碼業務資訊進行驗證。
- 如請求項26所述的設備,其中,該設備還包括:公鑰發送模組,用於將二維碼安全應用的公鑰發送至二維碼管理伺服器;憑證接收模組,用於接收二維碼安全應用的憑證。
- 如請求項26所述的設備,其中,該產生二維碼資訊數據的請求包含該二維碼業務資訊;或者在該二維碼安全應用具有該二維碼業務資訊的情況下,該產生二維碼資訊數據的請求為空請求。
- 如請求項26-28任意一項所述的設備,其中,該設備還包括二維碼展示模組; 該二維碼資訊數據回應發送模組,用於將該二維碼資訊數據發送至該二維碼展示模組;該二維碼展示模組,用於以二維碼的方式展示該二維碼資訊數據。
- 如請求項27所述的設備,其中,該二維碼管理伺服器產生二維碼管理伺服器使用的非對稱密鑰,包括二維碼管理伺服器的公鑰和二維碼管理伺服器的私鑰;和/或該二維碼管理伺服器產生二維碼管理伺服器使用的對稱密鑰。
- 如請求項30所述的設備,其中,該二維碼管理伺服器將二維碼管理伺服器的公鑰分發至二維碼讀取設備和/或二維碼安全應用。
- 如請求項26所述的設備,其中,二維碼業務資訊簽名模組,還用於結合動態資訊和該業務資訊得到更新後的業務資訊;根據二維碼安全應用的私鑰簽名該更新的二維碼業務資訊。
- 一種二維碼讀取設備,其特徵在於,該二維碼讀取設備包括:掃描模組,用於掃描二維碼以獲得二維碼業務資訊、二維碼安全應用對該二維碼業務資訊的簽名以及二維碼安 全應用的憑證,該憑證是由二維碼管理伺服器利用二維碼管理伺服器的私鑰對二維碼安全應用的公鑰進行簽名後產生的;驗證模組,用於利用二維碼管理伺服器產生的密鑰驗證該憑證,確認該憑證包含的二維碼安全應用的公鑰,利用該憑證包含的二維碼安全應用的公鑰驗證該二維碼業務資訊的簽名,確認該二維碼業務資訊。
- 一種二維碼讀取設備,其特徵在於,該設備包括處理器和記憶體,該記憶體上儲存有程式;該處理器,用於執行該程式以實現根據請求項8所述的方法。
- 一種二維碼防偽系統,其特徵在於,該系統包括根據請求項17-32任意一項所述的設備以及根據請求項33或34所述的二維碼讀取設備。
- 根據請求項35所述的系統,其中,該系統還包括二維碼管理伺服器;該二維碼管理伺服器,用於向二維碼讀取設備發送密鑰和/或產生憑證並向根據請求項17-32任意一項所述的設備發送該憑證。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811187031.7A CN109615030A (zh) | 2018-10-12 | 2018-10-12 | 基于安全应用的二维码防伪方法、设备及*** |
CN201811187031.7 | 2018-10-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202014931A TW202014931A (zh) | 2020-04-16 |
TWI748209B true TWI748209B (zh) | 2021-12-01 |
Family
ID=66001696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108125966A TWI748209B (zh) | 2018-10-12 | 2019-07-23 | 基於安全應用的二維碼防偽方法、設備及系統 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN109615030A (zh) |
TW (1) | TWI748209B (zh) |
WO (1) | WO2020073715A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109615030A (zh) * | 2018-10-12 | 2019-04-12 | 阿里巴巴集团控股有限公司 | 基于安全应用的二维码防伪方法、设备及*** |
CN110677261B (zh) * | 2019-09-29 | 2023-05-12 | 四川虹微技术有限公司 | 可信二维码生成方法、装置、电子设备及存储介质 |
CN112862466A (zh) * | 2019-12-17 | 2021-05-28 | ***股份有限公司 | 一种资源转移的方法及结账终端、服务器节点 |
CN111709506B (zh) * | 2020-06-12 | 2023-07-11 | 北京思特奇信息技术股份有限公司 | 一种定制标签生成方法和*** |
CN112612843B (zh) * | 2021-01-07 | 2023-08-04 | 重庆泛美新程航空服务有限公司 | 问询柜台业务数据统计及展示方法、***、设备及介质 |
CN112862488A (zh) * | 2021-03-29 | 2021-05-28 | 中信银行股份有限公司 | 数据的签名方法、装置、电子设备及计算机可读存储介质 |
CN114897112B (zh) * | 2022-04-18 | 2023-07-18 | 上海美的茵信息技术有限公司 | 基于二维码的诊断数据传递方法、计算机设备和存储介质 |
CN115150126B (zh) * | 2022-05-24 | 2024-04-19 | 从法信息科技有限公司 | 一种法律服务远程处理方法、装置和电子设备 |
CN115204340A (zh) * | 2022-09-14 | 2022-10-18 | 北京紫光青藤微***有限公司 | 用于生成二维码的方法、装置、电子设备及存储介质 |
CN115484224B (zh) * | 2022-09-16 | 2023-09-29 | 北京奇艺世纪科技有限公司 | 信息关联方法、二维码生成方法、装置、电子设备及介质 |
CN117932573A (zh) * | 2022-10-17 | 2024-04-26 | 华为云计算技术有限公司 | 一种二维码防伪***、方法及相关设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102129589A (zh) * | 2011-02-10 | 2011-07-20 | 谢仁康 | 非对称加密二维码防伪方法 |
CN102999770A (zh) * | 2011-09-14 | 2013-03-27 | 尤星 | 动态二维码***和方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102201100B (zh) * | 2011-05-10 | 2013-04-24 | 朱清明 | 一种物品防伪方法及*** |
KR101579603B1 (ko) * | 2012-06-27 | 2016-01-04 | 네이버 주식회사 | 이미지 인증키를 이용한 tv와 스마트폰의 연동 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체 |
CN102932148B (zh) * | 2012-10-25 | 2016-05-11 | 成都市易恒信科技有限公司 | 基于cpk认证的安全二维码防伪***与方法 |
CN103824202A (zh) * | 2014-03-21 | 2014-05-28 | 成都市易恒信科技有限公司 | 基于cpk标识认证技术的rfid与二维码复合鉴真防伪溯源方法 |
US9338164B1 (en) * | 2014-04-14 | 2016-05-10 | Symantec Corporation | Two-way authentication using two-dimensional codes |
CN104408502A (zh) * | 2014-10-22 | 2015-03-11 | 全联斯泰克科技有限公司 | 基于cpk的二维码生成和验证方法及装置 |
CN105024824B (zh) * | 2014-11-05 | 2018-12-21 | 浙江码博士防伪科技有限公司 | 基于非对称加密算法的可信标签的生成与验证方法及*** |
CN105205664A (zh) * | 2015-09-25 | 2015-12-30 | 中城智慧科技有限公司 | 一种新型的离线支付方法 |
CN107835079A (zh) * | 2017-11-02 | 2018-03-23 | 广州佳都数据服务有限公司 | 一种基于数字证书的二维码认证方法和设备 |
CN109615030A (zh) * | 2018-10-12 | 2019-04-12 | 阿里巴巴集团控股有限公司 | 基于安全应用的二维码防伪方法、设备及*** |
-
2018
- 2018-10-12 CN CN201811187031.7A patent/CN109615030A/zh active Pending
-
2019
- 2019-07-22 WO PCT/CN2019/097095 patent/WO2020073715A1/zh active Application Filing
- 2019-07-23 TW TW108125966A patent/TWI748209B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102129589A (zh) * | 2011-02-10 | 2011-07-20 | 谢仁康 | 非对称加密二维码防伪方法 |
CN102999770A (zh) * | 2011-09-14 | 2013-03-27 | 尤星 | 动态二维码***和方法 |
Also Published As
Publication number | Publication date |
---|---|
TW202014931A (zh) | 2020-04-16 |
CN109615030A (zh) | 2019-04-12 |
WO2020073715A1 (zh) | 2020-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI748209B (zh) | 基於安全應用的二維碼防偽方法、設備及系統 | |
US11700257B2 (en) | System and method for storing and distributing consumer information | |
Qin et al. | A secure and privacy-preserving mobile wallet with outsourced verification in cloud computing | |
US12003495B2 (en) | Decentralized processing of interactions on delivery | |
US20230360040A1 (en) | Quantum-safe payment system | |
CN111222178B (zh) | 一种数据签名方法及装置 | |
CN111047321A (zh) | 业务处理方法及装置、电子设备、存储介质 | |
US11170363B1 (en) | Secure processing of online purchase using a mobile wallet | |
CN110390212B (zh) | 基于区块链的供货监控方法、节点装置 | |
US11716200B2 (en) | Techniques for performing secure operations | |
CN111178840A (zh) | 业务处理方法及装置、***、电子设备、存储介质 | |
CN104282091A (zh) | 一种票据数据生成/传送/保存/认证的方法 | |
CN111784347B (zh) | 一种资源转移方法及装置 | |
Ma et al. | The design and implementation of an innovative mobile payment system based on qr bar code | |
CN111861462B (zh) | 基于区块链的金融产品交易方法及装置 | |
US20220286291A1 (en) | Secure environment for cryptographic key generation | |
TWM553026U (zh) | 繳費系統 | |
US20220353058A1 (en) | Conditional offline interaction system and method | |
KR20120087788A (ko) | 바코드를 이용한 인증시스템 및 인증방법 | |
Chang et al. | A highly efficient and secure electronic cash system based on secure sharing in cloud environment | |
CN110535664B (zh) | 基于区块链的数据处理方法、装置、服务器及存储介质 | |
TW201909060A (zh) | 繳費系統及繳費方法 | |
CN112837063A (zh) | 基于区块链的电子回单存储方法及装置 | |
Oliveira | Dynamic QR codes for Ticketing Systems | |
WO2023144503A1 (en) | Quantum-secure digital currency |