本發(fā)明涉及時間戳防偽技術領域,具體而言,涉及時間戳標簽打印方法及系統(tǒng)。
背景技術:
在商品時間戳標簽打印中,多數廠家采用時間戳(timestamp)來標記時間戳標簽打印日期。時間戳通常是一個字符序列,可以唯一地標識某一刻的時間。通常,廠家對標簽的使用過程為:廠家首先設置標簽內容并申請時間戳,然后打印帶有時間戳的標簽,最后粘貼該標簽到商品或商品包裝上。一般來說,時間戳申請的過程為:廠家首先將需要加時間戳的標簽用Hash編碼加密形成摘要,然后將該摘要發(fā)送到時間戳服務器,時間戳服務器在加入了收到標簽摘要的日期和時間信息后再對該標簽加密(數字簽名),然后送回廠家。這樣,時間戳標簽打印的時間是由時間戳服務器來加的,以時間戳服務器收到文件的時間為依據,因而可以為標簽的時間信息提供安全保護。然而,很多廠家常常采用“先申請,后打印”的方式偽造標簽上的時間戳,使得標簽上的時間戳與實際打印時間不一致。
技術實現(xiàn)要素:
本發(fā)明正是基于上述問題,提出了時間戳標簽打印方法及系統(tǒng),可以有效防止偽造標簽上的時間戳。
有鑒于此,本發(fā)明的一方面提出了一種時間戳標簽打印方法,包括:
響應廠家的時間戳申請請求,生成至少一時間戳,并合并所有所述時間戳為一封包;
生成動態(tài)密鑰,并使用該動態(tài)密鑰對所述封包進行加密;
生成一憑據,在對該憑據與所述動態(tài)密鑰進行關聯(lián)后,發(fā)送加密后的封包和所述憑據至打標機;
響應廠家的標簽打印請求,接收所述打標機反饋的憑據,判斷反饋的憑據是否在有效期內;
當所述憑據在有效期內時,發(fā)送與該憑據關聯(lián)的動態(tài)密鑰至所述打標機,使得所述打標機可以從所述封包獲取所述時間戳的數據信息并打印包含所述時間戳的數據信息的標簽。
進一步地,所述“響應廠家的時間戳申請請求,生成至少一時間戳”包括:
響應廠家的時間戳申請請求,獲取來自所述打標機的申請數量信息;
檢測使用設定的私鑰公鑰組中的公鑰能否對所述申請數量信息進行解密;
當檢測結果為是時,生成對應數量的時間戳;反之,生成并反饋未授權提示信息至所述打標機。
進一步地,所述“響應廠家的時間戳申請請求,生成至少一時間戳,并合并所有所述時間戳為一封包”包括:
響應廠家的時間戳申請請求,獲取來自所述打標機的申請數量信息;
生成對應數量的時間戳,并使用設定的私鑰公鑰組中的私鑰對所述時間戳加密;其中,所述時間戳包括文本日期和/或包含時間戳的數據信息的二維碼;
合并加密后的所述時間戳為一封包。
進一步地,所述時間戳標簽打印方法還包括:
響應消費者對標簽上二維碼的掃描操作,公布所述私鑰公鑰組中的公鑰至該消費者,使得該消費者可以從所述二維碼獲取所述時間戳的數據信息,及對比所述時間戳的數據信息和所述文本信息,從而識別所述標簽的真?zhèn)巍?/p>
進一步地,所述“判斷反饋的憑據是否在有效期內”包括:
當發(fā)送所述憑據至打標機時,記錄憑據發(fā)送時間;
當接收到所述打標機反饋的憑據時,記錄憑據反饋時間;
根據所述憑據發(fā)送時間和所述憑據反饋時間計算時間差;
比較所述時間差是否超過存儲的有效期。
本發(fā)明另一方面提供了一種時間戳標簽打印系統(tǒng),包括:
封包模塊,用于響應廠家的時間戳申請請求,生成至少一時間戳,并合并所有所述時間戳為一封包;
加密模塊,用于生成動態(tài)密鑰,并使用該動態(tài)密鑰對所述封包進行加密;
憑據模塊,用于生成一憑據,在對該憑據與所述動態(tài)密鑰進行關聯(lián)后,發(fā)送加密后的封包和所述憑據至打標機;
判斷模塊,用于響應廠家的標簽打印請求,接收所述打標機反饋的憑據,判斷反饋的憑據是否在有效期內;
解密模塊,用于當所述憑據在有效期內時,發(fā)送與該憑據關聯(lián)的動態(tài)密鑰至所述打標機,使得所述打標機可以從所述封包獲取所述時間戳的數據信息并打印包含所述時間戳的數據信息的標簽。
進一步地,所述封包模塊包括:
獲取單元,用于響應廠家的時間戳申請請求,獲取來自所述打標機的申請數量信息;
檢測單元,用于檢測使用設定的私鑰公鑰組中的公鑰能否對所述申請數量信息進行解密;
生成單元,用于當檢測結果為是時,生成對應數量的時間戳;反之,生成并反饋未授權提示信息至所述打標機。
進一步地,所述封包模塊包括:
獲取單元,用于響應廠家的時間戳申請請求,獲取來自所述打標機的申請數量信息;
生成單元,用于生成對應數量的時間戳;其中,所述時間戳包括文本日期和/或包含時間戳的數據信息的二維碼;
加密單元,用于使用設定的私鑰公鑰組中的私鑰對所述時間戳加密;
封包單元,用于合并加密后的所述時間戳為一封包。
進一步地,所述時間戳標簽打印系統(tǒng)還包括:
公布模塊,用于響應消費者對標簽上二維碼的掃描操作,公布所述私鑰公鑰組中的公鑰至該消費者,使得該消費者可以從所述二維碼獲取時間戳的數據信息,及對比所述時間戳的數據信息和所述文本信息,從而識別所述標簽的真?zhèn)巍?/p>
進一步地,所述判斷模塊包括:
記錄單元,用于當發(fā)送所述憑據至打標機時,記錄憑據發(fā)送時間,及當接收到所述打標機反饋的憑據時,記錄憑據反饋時間;
計算單元,用于根據所述憑據發(fā)送時間和所述憑據反饋時間計算時間差;
比較單元,用于比較所述時間差是否超過存儲的有效期。
本實施例提供的時間戳標簽打印方法及系統(tǒng),廠家在獲取到包含時間戳的數據信息的封包和憑據后,必須在指定時間內反饋憑據以換取關聯(lián)的動態(tài)密鑰,才可以獲取從所述封包獲取所述時間戳的數據信息,否則,申請到的時間戳失效,可以有效防止偽造標簽上的時間戳。
為使本發(fā)明的上述目的、特征和優(yōu)點能更明顯易懂,下文特舉較佳實施例,并配合所附附圖,作詳細說明如下。
附圖說明
為了更清楚地說明本發(fā)明實施例的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,應當理解,以下附圖僅示出了本發(fā)明的某些實施例,因此不應被看作是對范圍的限定,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其他相關的附圖。
圖1示出了第一實施例提供的時間戳標簽打印方法的流程示意圖;
圖2示出了第二實施例提供的時間戳標簽打印方法的第一流程示意圖;
圖3示出了第二實施例提供的時間戳標簽打印方法的第二流程示意圖;
圖4示出了本發(fā)明實施例提供的時間戳標簽打印系統(tǒng)的結構示意圖。
主要元件符號說明:
100-時間戳標簽打印系統(tǒng);10-封包模塊;20-加密模塊;30-憑據模塊40-判斷模塊;50-解密模塊;60-公布模塊。
具體實施方式
為了便于理解本發(fā)明,下面將參照相關附圖對時間戳標簽打印方法及系統(tǒng)進行更清楚、完整地描述。附圖中給出了時間戳標簽打印方法及系統(tǒng)的優(yōu)選實施例。時間戳標簽打印方法及系統(tǒng)可以通過許多不同的形式來實現(xiàn),并不限于本文所描述的實施例。因此,以下對在附圖中提供的本發(fā)明的實施例的詳細描述并非旨在限制要求保護的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實施例?;诒景l(fā)明的實施例,本領域技術人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
實施例1
圖1示出了本發(fā)明實施例提供的時間戳標簽打印方法的流程示意圖。
如圖1所示,本發(fā)明實施例提供的時間戳標簽打印方法,應用于時間戳服務器,包括:
步驟S1,響應廠家的時間戳申請請求,生成至少一時間戳,并合并所有所述時間戳為一封包。
具體地,響應廠家的時間戳申請請求,獲取廠家對時間戳的申請數量信息,并生成對應數量的時間戳。本實施例中,所述時間戳為可以唯一地標識某一刻的時間的字符序列,如2016年10月21日。另一實施例中,所述時間戳為包含時間信息的識別碼,如二維碼、條形碼等。
進一步地,將生成的所有時間戳合并為一封包。所述封包內包含一個或多個時間戳的數據信息。封包的設置不僅避免了多個時間戳需要多次反饋給廠家的繁瑣,同時便于對廠家申請的一批時間戳進行統(tǒng)一處理,如加密或解密等,提高了時間戳的申請效率。
步驟S2,生成動態(tài)密鑰,并使用該動態(tài)密鑰對所述封包進行加密。
本實施例中,采用對稱加密的方式對封包進行加密,即加密和解密使用相同密鑰。另一實施例中,采用非對稱加密的方式對封包進行加密,即加密和解密使用兩個不同的密鑰:公鑰(publickey)和私鑰(privatekey)。用戶可以根據實際需求等選擇具體的加密方式,這里不做限制。
具體地,在合并生成一封包后,生成一動態(tài)密鑰,并用該該動態(tài)密鑰對所述封包進行對稱加密。
步驟S3,生成一憑據,在對該憑據與所述動態(tài)密鑰進行關聯(lián)后,發(fā)送加密后的封包和所述憑據至打標機。
具體地,在生成所述動態(tài)密鑰的同時,生成一憑據,并關聯(lián)該憑據與所述動態(tài)密鑰。所述憑據為打標機在指定時間內換取動態(tài)密鑰的憑證。進一步地,在關聯(lián)該憑據與所述動態(tài)密鑰后,發(fā)送所述封包和所述憑據至打標機。優(yōu)選地,當發(fā)送所述憑據至打標機時,記錄憑據發(fā)送時間。
步驟S4,響應廠家的標簽打印請求,接收所述打標機反饋的憑據,判斷反饋的憑據是否在有效期內。
本實施例中,當廠家進行標簽打印時,首先需要在指定時間內反饋收到的憑據以換取關聯(lián)的動態(tài)密鑰,才可以獲取從所述封包獲取所述時間戳的數據信息。
具體地,響應廠家的標簽打印請求,接收所述打標機反饋的憑據,并記錄憑據反饋時間。根據所述憑據發(fā)送時間和所述憑據反饋時間計算時間差。比較所述時間差是否超過存儲的有效期。所述有效期為憑據維持有效的時間長度,本實施例中,所述有效期為1分鐘,當然,所述有效期可以根據實際應用設置為其他時間長度,這里不做限制。容易理解,為了避免偽造時間戳,設置的有效期不宜太長,應盡可能的縮短從時間戳申請到時間戳打印的時間間隔。
步驟S5,當所述憑據在有效期內時,發(fā)送與該憑據關聯(lián)的動態(tài)密鑰至所述打標機。
本實施例中,僅當所述憑據在有效期內時,發(fā)送與該憑據關聯(lián)的動態(tài)密鑰至所述打標機,使得所述打標機可以從所述封包獲取所述時間戳的數據信息并打印包含所述時間戳的數據信息的標簽。當所述憑據不在有效期內時,拒絕提供動態(tài)密鑰,從而廠家申請到的時間戳失效,打標機不能打印包含所述時間戳的數據信息的標簽。
本實施例提供的時間戳標簽打印方法,廠家在獲取到包含時間戳的數據信息的封包和憑據后,必須在指定時間內反饋憑據以換取關聯(lián)的動態(tài)密鑰,才可以獲取從所述封包獲取所述時間戳的數據信息,否則,申請到的時間戳失效,可以有效防止偽造標簽上的時間戳。
實施例2
圖2示出了本發(fā)明實施例提供的時間戳標簽打印方法的流程示意圖。
如圖2所示,本發(fā)明實施例提供的時間戳標簽打印方法,應用于時間戳服務器,包括:
步驟S11,響應廠家的時間戳申請請求,獲取來自所述打標機的申請數量信息。
具體地,響應廠家在一打標機的時間戳申請請求,獲取來自該打標機的申請數量信息。所述申請數量信息為廠家申請的時間戳的數量,可以是一個或多個。
步驟S12,檢測使用設定的私鑰公鑰組中的公鑰能否對所述申請數量信息進行解密。
需要說明的是,本實施例中,并非響應廠家在任意打標機的時間戳申請請求,而是僅響應來自經過授權的打標機的時間戳申請請求,以此避免廠家通過未授權的打標機規(guī)避本實施例提供的時間戳標簽打印方法的時間戳防偽手段。
具體地,響應廠家在一打標機的時間戳申請請求,檢測該時間戳申請請求是否為經過設定的私鑰公鑰組中的私鑰加密,當所述時間戳申請請求經過所述私鑰加密時,表示該打標機已授權。所述設定的私鑰公鑰組包括對數據進行加密和解密的一對密鑰,即公鑰和私鑰。如果用公鑰對數據進行加密,只有用對應的私鑰才能解密;如果用私鑰對數據進行加密,那么只有用對應的公鑰才能解密。
進一步地,對廠家發(fā)出的時間戳申請請求是否經過設定的私鑰公鑰組中的私鑰加密的判斷方式為:檢測使用設定的私鑰公鑰組中的公鑰能否對所述申請數量信息進行解密??梢岳斫?,當使用設定的私鑰公鑰組中的公鑰可以對所述申請數量信息進行解密時,表示該打標機已授權;反之,表示該打標機未授權。
步驟S13,當檢測結果為否時,生成并反饋未授權提示信息至所述打標機。
當使用設定的私鑰公鑰組中的公鑰不能對所述申請數量信息進行解密時,生成未授權提示信息,并反饋該未授權提示信息至所述打標機。所述未授權信息為用于提示廠家應在授權的打標機發(fā)出時間戳申請的文本、圖片或語音等信息。
步驟S14,當檢測結果為是時,生成對應數量的時間戳,并使用設定的私鑰公鑰組中的私鑰對所述時間戳加密。
具體地,當使用設定的私鑰公鑰組中的公鑰可以對所述申請數量信息進行解密時,響應該時間戳申請請求,生成對應數量的時間戳。本實施例中,所述時間戳包括文本日期和/或包含時間戳的數據信息的二維碼制作數據。更具體地,所述文本日期為可以唯一地標識某一刻的時間的字符序列,如2016年10月21日;所述時間戳的數據信息為某一刻的時間信息。進一步地,使用所述私鑰公鑰組中的私鑰對生成的每一時間戳進行加密。
步驟S15,合并加密后的所述時間戳為一封包。
具體地,將加密后的所有時間戳合并為一封包。所述封包內包含一個或多個時間戳的數據信息。
步驟S16,生成動態(tài)密鑰,并使用該動態(tài)密鑰對所述封包進行加密。
其中,步驟S16和步驟S2內容相同。
步驟S17,生成一憑據,在對該憑據與所述動態(tài)密鑰進行關聯(lián)后,發(fā)送加密后的封包和所述憑據至打標機。
其中,步驟S17和步驟S3內容相同。
步驟S18,響應廠家的標簽打印請求,接收所述打標機反饋的憑據,判斷反饋的憑據是否在有效期內。
其中,步驟S18和步驟S4內容相同。
步驟S19,當所述憑據在有效期內時,發(fā)送與該憑據關聯(lián)的動態(tài)密鑰至所述打標機。
其中,步驟S19和步驟S5內容相同。
步驟S20,響應消費者對標簽上二維碼的掃描操作,公布所述私鑰公鑰組中的公鑰至該消費者。
本實施例中,打標機根據從封包內獲取的時間戳的數據信息打印出的標簽包括文本日期和包含時間戳的數據信息的二維碼。當廠家粘貼該標簽至商品或商品包裝上時,消費者可以通過掃描所述二維碼獲取時間戳的數據信息,并對比所述時間戳的數據信息和所述文本信息,從而識別所述標簽的真?zhèn)巍?/p>
請一并參閱圖3所示,本實施例提供的時間戳標簽打印方法,不僅可以有效防止偽造標簽上的時間戳,還可以有效防止偽造標簽,更大程度上降低了偽造時間戳的可能性。
實施例3
圖4示出了本發(fā)明實施例提供的時間戳標簽打印系統(tǒng)的結構示意圖。
如圖4所示,本發(fā)明實施例提供的時間戳標簽打印系統(tǒng)100,包括封包模塊10、加密模塊20、憑據模塊30、判斷模塊40和解密模塊50。
封包模塊10用于響應廠家的時間戳申請請求,生成至少一時間戳,并合并所有所述時間戳為一封包。本實施例中,封包模塊10包括獲取單元、檢測單元、生成單元、加密單元和封包單元。
獲取單元,用于響應廠家的時間戳申請請求,獲取來自所述打標機的申請數量信息。
檢測單元,用于檢測使用設定的私鑰公鑰組中的公鑰能否對所述申請數量信息進行解密。
生成單元,用于當檢測結果為是時,生成對應數量的時間戳;反之,生成并反饋未授權提示信息至所述打標機。其中,所述時間戳包括文本日期和/或包含時間戳的數據信息的二維碼。
加密單元,用于使用設定的私鑰公鑰組中的私鑰對所述時間戳加密。
封包單元,用于合并加密后的所述時間戳為一封包。
加密模塊20用于生成動態(tài)密鑰,并使用該動態(tài)密鑰對所述封包進行加密。
憑據模塊30用于生成一憑據,在對該憑據與所述動態(tài)密鑰進行關聯(lián)后,發(fā)送加密后的封包和所述憑據至打標機。
判斷模塊40用于響應廠家的標簽打印請求,接收所述打標機反饋的憑據,判斷反饋的憑據是否在有效期內。本實施例中,判斷模塊40包括記錄單元、計算單元和比較單元。
記錄單元,用于當發(fā)送所述憑據至打標機時,記錄憑據發(fā)送時間,及當接收到所述打標機反饋的憑據時,記錄憑據反饋時間。
計算單元,用于根據所述憑據發(fā)送時間和所述憑據反饋時間計算時間差。
比較單元,用于比較所述時間差是否超過存儲的有效期。
解密模塊50用于當所述憑據在有效期內時,發(fā)送與該憑據關聯(lián)的動態(tài)密鑰至所述打標機,使得所述打標機可以從所述封包獲取所述時間戳的數據信息并打印包含所述時間戳的數據信息的標簽。
本實施例中,時間戳標簽打印系統(tǒng)100還包括公布模塊60。
公布模塊60用于響應消費者對標簽上二維碼的掃描操作,公布所述私鑰公鑰組中的公鑰至該消費者,使得該消費者可以從所述二維碼獲取時間戳的數據信息,及對比所述時間戳的數據信息和所述文本信息,從而識別所述標簽的真?zhèn)巍?/p>
本實施例提供的時間戳標簽打印方法及系統(tǒng),廠家在獲取到包含時間戳的數據信息的封包和憑據后,必須在指定時間內反饋憑據以換取關聯(lián)的動態(tài)密鑰,才可以獲取從所述封包獲取所述時間戳的數據信息,否則,申請到的時間戳失效,可以有效防止偽造標簽上的時間戳。
本發(fā)明實施例所提供的系統(tǒng),其實現(xiàn)原理及產生的技術效果和前述方法實施例相同,為簡要描述,系統(tǒng)實施例部分未提及之處,可參考前述方法實施例中相應內容。
在這里示出和描述的所有示例中,任何具體值應被解釋為僅僅是示例性的,而不是為限制,因此,示例性實施例的其他示例可以具有不同的值。應注意到:相似的標號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨后的附圖中不需要對其進行進一步定義和解釋。
在本申請所提供的幾個實施例中,應該理解到,所揭露的裝置可以通過其它的方式實現(xiàn)。以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,又例如,多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些通信接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述為分離部件說明的單元可以是或者也可以不是物理上分開的,為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上??梢愿鶕嶋H的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應所述以權利要求的保護范圍為準。