專利名稱:用于阻止產品偽造、轉移和盜版的方法和系統(tǒng)的制作方法
技術領域:
本發(fā)明一般地涉及反偽造措施,并且特別涉及用于驗證產品并且從而阻止偽造轉移和/或盜版的方法和系統(tǒng)。
背景技術:
在消費品エ業(yè)中,偽造是重大和不斷增長的問題。雖然時尚和奢侈品已經長時間地成為偽造的目標,但幾乎任何牌子的產品都可以是偽造的對象。例如,諸如洗發(fā)水、汽車零件、嬰兒配方以及甚至啤酒都已經是偽造的對象。偽造是難以檢測、調查和量化的。因而,難以知道問題的全部范圍。然而,通過某些估計,全世界貿易的百分之五到七之間是偽造貨物,總計年價值超過2500億美元。隨著全球化的繼續(xù)以及供應鏈進ー步在缺乏檢測并阻止偽造的能力和/或意愿的發(fā)展中國家中擴展,這個數字很可能増加。在傳統(tǒng)的偽造方案中,個人或者個人的群體生產、包裝以及試圖出售帶有欺騙性地代表產品的真實性和/或來源的目的的產品。在多數情況下,偽造品的質量低于偽造品設計效仿的原產品。因而,不知不覺地購買了偽造貨物的消費者被欺騙了。在某些情況中,諸如對于藥品、藥物和汽車零件,當消費者不知不覺地購買了偽造品時,結果可能是致命的。偽造對于商業(yè)實體也具有重大的影響。可能偽造品對于公司所具有的最明顯的負面影響是失去收入和利潤。不明顯但是也一祥重要的是偽造可以引起公司的品牌價值的潛在損害。例如,由使用偽造品引起的一個被大肆宣傳的負面事件可以對公司聲譽引起不可估量的破壞。已經開發(fā)或者提出了用于阻止偽造的若干技木。例如,針對阻止偽造的某些技術包括:利用采用全息圖、變色墨水、篡改標簽、凹板墨和紫外線墨水的識別標記來給產品,標簽或者產品包裝作標記。然而,這個方法經常是無效的,因為識別標記很容易被偽造者復制,和/或消費者很難識別。阻止偽造的另ー個方法是利用射頻識別(RFID)標簽。例如,通過當產品被初次包裝時給它附著ー個特定RFID標簽,以后可以通過檢驗由RFID標簽傳達的唯一識別數據來驗證產品。然而,給每個產品添加RFID標簽增加了產品的整體成本。而且,檢驗RFID標簽所需的設備(例如,RFID傳感器或者讀取器)可以在產品的分配鏈中僅對于特定的實體是可獲得的,并且?guī)缀蹩隙ǖ氖菍τ诋a品的消費者不可獲得。RFID標簽本身或者它們之內的代碼也易遭偽造。因而,存在對于有效并且經濟的反偽造系統(tǒng)的需要。
發(fā)明內容
提供了用于檢測并且阻止偽造的方法和系統(tǒng)。與本發(fā)明的一個實施例一致,用于阻止偽造的系統(tǒng)包括客戶端和主機。客戶端包括代碼生成邏輯,其利用從主機接收的數據生成ー批安全代碼。一旦生成安全代碼,則客戶端指示打印設備將該批安全代碼打印在一批產品上,在打印設備已經將安全代碼打印在產品上之后,不保留安全代碼。主機包括代碼驗證邏輯,其接收已經被打印在特定產品上的安全代碼以及代碼驗證請求。從而,主機通過確定安全代碼是否是由客戶端生成的來驗證安全代碼。
本發(fā)明以示例的方式加以說明并且不限于所附的附圖,其中相同的參考表示相似的元件,并且其中:圖1描述了根據本發(fā)明的一個實施例的具有主機組件和客戶端組件的反偽造系統(tǒng);圖2描述了根據本發(fā)明的一個實施例的用于生成多個將要被打印在產品上的多個ロ隹一安全代碼的方法;圖3描述了根據本發(fā)明的實施例的用于驗證已經在上面打印了安全代碼的產品的方法;圖4描述了根據本發(fā)明的實施例的與用于生成安全代碼的方法相關的操作和數據流程;圖5描述了根據本發(fā)明的實施例的與用于驗證包含安全代碼的產品的方法相關的操作和數據流程;圖6A描述了根據本發(fā)明的實施例的包括字母數字文本的安全代碼的例子;圖6B描述了根據本發(fā)明的實施例的包括編碼為圖形符號的字母數字文本的安全代碼的例子;圖7描述了按照計算機系統(tǒng)的示例性方式的機器的概略圖形表示,在其中可以執(zhí)行用于引起機器執(zhí)行任意一個或多個這里討論的方法的指令集。
具體實施例方式描述了用于檢測并且阻止偽造的方法和系統(tǒng)。在下列描述中,為了解釋的目的,提出許多特定的細節(jié)以達到提供本發(fā)明徹底的理解的目的。然而,對于本領域技術人員明顯的是,沒有這些特定細節(jié),也可實現本發(fā)明。這里的描述和表示是由本領域那些經驗豐富或者熟練的技術人員使用來向本領域的其他技術人員有效地傳達他們工作的實質的手段。在某些示例中,為了避免不必要的使本發(fā)明的各個方面變得模糊,熟知的操作和組件不再詳細描述。這里的參考“一個實施例”或者“實施例”意味著與實施例相關聯地描述的特定特征、結構、操作或者其他特性可以被包括在本發(fā)明的至少ー個實現中。然而,短語“在ー個實施例中”在說明書中不同地方的出現不是必須指相同的實施例。本發(fā)明的實施例包括用于驗證原產品并且從而檢測以及阻止產品偽造的方法和系統(tǒng)。在本發(fā)明的一個實施例中,用于檢測偽造的系統(tǒng)包括主機組件和客戶端組件。因而,客戶端利用從主機接收的數據生成多個安全代碼,并且然后指示打印設備將安全代碼打印在消費產品上。然而,相對于以前所知的反偽造系統(tǒng)的是,在安全代碼已經被打印在產品上之后,不保留安全代碼。即,在安全代碼已經被打印并且產品已經被置于商業(yè)流中后,主機和客戶端都不在短期或者長期存儲器中保留安全代碼。而且,在本發(fā)明的一個實施例中,安全代碼在它們被打印在產品上的地方生成。因而,安全代碼不需要通過網絡被傳送,在網絡上它們可能被例如網絡數據包嗅探應用所損壞。如下面將進行的更加詳細的描述,產品分配鏈中的產品消費者或者任何其他人可以通過僅將安全代碼傳送給主機來使其上已經打印了安全代碼的產品的真實性得以檢驗。而且,廣泛的多種設備和方法可以被用來將安全代碼傳送給主機用于驗證。例如,可以使用電話通過說出安全代碼,或者可選地,通過使用電話的按鍵式撥號盤輸入安全代碼從而將安全代碼傳送給主機??蛇x地,計算設備(例如,個人計算機、個人數字助理、移動電話,等)可以被用于將安全代碼傳送給主機。例如,可以使用鍵盤、電話鍵盤、照相機或者條形碼讀取器捕獲安全代碼,以及然后發(fā)送給主機。在主機已經接收并且驗證了安全代碼后,主機將驗證操作的結果傳送給消費者。本領域技術人員將會理解,本發(fā)明特別適用于品牌產品和商品。品牌產品可以包括任何具有可識別的來源(例如,制造商或者供應商)的產品。經常地,但是肯定不是總是的,使用諸如商標的專用名稱或特征來標記品牌產品。在某些情況中,產品品牌可以通過產品或者商品的設計、形狀或者顔色被辨認。品牌產品可以包括,但是絕不限于:醫(yī)藥品、化妝品、洗漱用品、護發(fā)品、營養(yǎng)品、玩具、煙草、食品、飲料、汽車零件、服飾和鞋類、計算機硬件和軟件、電子設備、家庭用品、清潔產品、護目鏡類和奢侈品。圖1描述了根據本發(fā)明的一個實施例的反偽造系統(tǒng)10,具有主機組件12和客戶端組件14。在本發(fā)明的一個實施例中,主機12可以由向一個或多個產品制造者提供反偽造服務的實體所維護和操作。因而,主機12可以通過網絡16連接到任意數目的客戶端14。例如,具有若干產品包裝設備的產品制造商可以使用多個客戶端14,每個單獨的包裝設備處有一個客戶端14。類似地,主機12可以服務干與不同產品制造商相關聯的多個客戶端14。主機12和客戶端14進行通信所使用的網絡16可以是諸如因特網的開放網絡或者專用網絡。在本發(fā)明的一個實施例中,主機12和客戶端14間的通信依靠安全通信協(xié)議完成,例如,諸如安全套接字層(SSL)或者傳輸層安全(TLS)。再次參考圖1,客戶端14包括代碼生成模塊18、代碼生成邏輯22和代碼標記模塊24。代碼生成模塊18便于客戶端14和客戶端14的用戶(例如,客戶端用戶)間交互。在本發(fā)明的一個實施例中,客戶端用戶可以通過輸入指示所需ー批安全代碼的尺寸的數字來啟動該批安全代碼的生成。另外,代碼生成模塊18可以提示客戶端用戶輸入與將要在上面打印安全代碼的產品相關聯的產品數據。例如,代碼生成模塊18可以提示客戶端用戶輸入產品數據,諸如通用產品代碼(UPC)、產品描述、包裝尺寸和數量、包裝圖像,或者ー些特定時間或位置屬性,諸如工作順序、批號、制造日期、最遲使用日期、操作員姓名或者制造エ廠。輸入到代碼生成模塊18中的產品數據連同生成安全代碼的請求一起被傳送到主機12。在驗證操作期間(其聯系下面圖5的描述被更詳細地描述),響應于代碼驗證請求,由客戶端用戶輸入的或者存儲在主機上的產品數據或者產品數據的子集可以被顯示或者被傳送給供應鏈中的消費者或者其他人。而且,顯示或者傳送的特定產品數據可以取決于提交代碼驗證請求的人而改變。特別地,顯示或者傳送的產品數據可以依據整個供應鏈或者商業(yè)流中人的位置而變化。例如,提交代碼驗證請求的海關官員可以被呈現多于消費者的不同的產品數據。如下面參考圖4的描述更詳細描述的,代碼生成邏輯22利用從主機12接收的數據生成打印在產品上的安全代碼。在本發(fā)明的一個實施例中,代碼標記模塊24控制傳輸安全代碼到打印設備26,其可以將安全代碼直接打印在產品上,或者可選地,打印在產品標簽或者產品包裝上。因而,代碼標記模塊24可以確認安全代碼被正確地從主機12傳輸到打印設備26。另外,代碼標記模塊24可以保持運行已經從客戶端14傳輸到打印設備26的安全代碼數目和/或已經被打印的安全代碼的數目的連續(xù)計數。打印設備26可以是適合在產品、標簽或者產品包裝上打印安全代碼的任意類型的打印系統(tǒng)。例如,打印設備26可以包括高速エ業(yè)噴墨打印機(帶有可見或者隱形墨水)、熱轉移式打印機(帶有可見或者隱形色帯)、激光標記器或者其他エ業(yè)標記系統(tǒng)。在特定的實施例中,特殊隱形墨水或者其他相關技術可以被使用來利用隱形安全代碼隱式地標記產品。打印設備26由這些打印技術的任意組合組成。本領域技術人員將會理解,打印設備規(guī)范將基于消費者的性能要求、包裝或者產品的基底材料以及操作環(huán)境,并且通常將反映這樣的打印或者標記系統(tǒng)中的目前技木。在本發(fā)明的一個實施例中,安全代碼被打印在防篡改密封上。因而,防篡改密封可以置于產品上,使得當打開或者使用產品時,毀壞該防篡改密封。因而,一旦毀壞,安全代碼不能被重新使用。在本發(fā)明的一個實施例中,打印設備26可以連接到或者集成到視覺系統(tǒng)28或者其他成像設備中。視覺系統(tǒng)28可以當安全代碼被打印時掃描或者讀取每個安全代碼以檢測是否發(fā)生打印問題并且確保全部的打印品質等級符合要求。因而,當在特定安全代碼的打印中檢測到ー個錯誤時,視覺系統(tǒng)28可以通過通知客戶端14或者主機12標記該安全代碼,或者丟棄低品質打印的安全代碼。視覺系統(tǒng)28可以通過使用“機器視覺”來實現,諸如光學或者非接觸讀取器,其具有當安全代碼被打印在產品、標簽或者產品包裝上時檢測它們的物理屬性的能力。視覺系統(tǒng)28協(xié)同其他過程控制方式確保只有高品質的安全代碼被打印在產品或者包裝上,同時保持極低的丟棄率以維持裝箱或者包裝線上的生產率和呑吐量。如圖1中所描述的,打印設備26和視覺系統(tǒng)28是與客戶端14分開的。本領域技術人員將會理解,在可選的實施例中,打印設備26可以與圖1中的客戶端集成在一起。類似地,如圖所示,代碼標記模塊24與客戶端14集成在一起。本領域技術人員將會理解,在可選的實施例中,代碼標記模塊24可以與打印設備26集成在一起。在本發(fā)明的一個實施例中,客戶端14可以以分布式來實現,使得一個或多個客戶端組件在地理上是分開的。例如,在本發(fā)明的一個實施例中,代碼生成模塊18可以位于商業(yè)總部,而ー個或多個其他組件(包括打印設備)位于包裝設備處。在分布式的實施例中,一個代碼生成模塊18可以被集成以支持并且與多個代碼標記模塊24和/或打印設備26 —起工作。因而,當制造者具有多個包裝設備時,可以實現分布式的實施例。反偽造系統(tǒng)10的主機12包括管理模塊30。相似于客戶端14的代碼生成模塊18,管理模塊30便于主機12和主機用戶間的交互。主機12包括批次標識符(批次ID)生成器36和批次密鑰生成器34。如下面更加詳細描述的,響應于接收客戶端請求生成安全代碼,批次ID生成器36生成用于安全代碼集合的批次ID并且批次密鑰生成器34生成相關聯的批次密鑰(也稱為種子數)。批次ID和批次密鑰與客戶端請求相關聯,并且連同利用客戶端請求所接收的產品數據一起由主機12存儲在例如產品數據庫32中。另外,主機12將批次ID和批次密鑰傳送給客戶端14,其利用批次ID和批次密鑰生成被打印在產品上的唯一安全代碼。主機12也包括代碼驗證邏輯38。如下面結合圖5的描述更詳細描述的,代碼驗證邏輯38接收并驗證已經打印在產品上的安全代碼。例如,在安全代碼已經打印在產品上之后,供應鏈或者商業(yè)流中的消費者或者其他人可以出于驗證的目的將安全代碼傳送給主機
12。如果主機12確定安全代碼是可信的,則主機12可以將此報告給消費者。與本發(fā)明的實施例一致,各種方法和設備可以被用來將安全代碼告知主機12,用于驗證。例如,在一個實施例中,消費者40可以利用基于電話的服務(例如,語音,短消息系統(tǒng)(SMS),支持web的應用)、個人計算機、個人數字助理、可視電話或者其他帶有數據通信的計算設備42,來將代碼驗證請求(包括安全代碼)傳送給主機12。在安全代碼被傳送給主機12之后,代碼驗證邏輯38將確認安全代碼的真實性。在本發(fā)明的一個實施例中,主機12可以使用包括與產品有關的關鍵屬性的消息回應代碼來驗證請求。例如,來自于主機12的響應包括特定商品的描述,包括品牌名稱、尺寸或者數量、過期日期、制造日期,制造地點、批號或者任何其它潛在的相關數據。在本發(fā)明的一個實施例中,主機12包括分析和報告模塊44。分析和報告模塊44具有兩個主要功能。第一,分析組件通過追蹤和分析代碼驗證請求來提供用于識別潛在欺騙活動的機制。例如,毎次接收到驗證特定安全代碼的請求時,分析組件進行記錄,并且當可能時,記錄接收的每個請求的來源(例如,人、地理位置、或者其他設備標識符,諸如因特網協(xié)議地址)。因而,通過分析利用代碼驗證請求接收的安全代碼,分析組件能夠檢測可以指示偽造活動的可疑圖案,例如,如果可信的安全代碼被復制并且被用于ー批偽造品上,那么很可能多個消費者試圖驗證相同的安全代碼(例如,復制的安全代碼)。通過檢測可疑圖案,分析和報告工具44可以通知制造商的品牌安全人員去監(jiān)視供應鏈的特定點上的活動。分析和報告模塊44的另ー個主要功能是報告功能。在本發(fā)明的一個實施例中,模塊44的報告組件提供用于報告可疑活動的機制,也是通常的商業(yè)報告。報告可以提出計劃給出了解供應鏈中的欺騙或者可疑活動的相關信息的范圍,并且允許品牌安全人員采取快速的預防性行動。另外,報告組件可以生成商業(yè)報告,其包括與用于不同產品的驗證活動有關的格式化的數據??梢酝ㄟ^客戶端、主機或者此兩者來定制報告功能。在一個實施例中,可以建立用于分析和報告模塊44的報告規(guī)則和警告,如果已經觸發(fā)了偽造品警告,例如通過檢測指示出安全代碼已經被復制或者克隆的高可能性的代碼驗證請求的圖案,則分析和報告模塊44自動警告品牌安全人員。本領域技術人員將會理解,圖1所示的反偽造系統(tǒng)10被提供作為本發(fā)明的ー個例子或者實施例,而不意味在本質上是限制的。系統(tǒng)可以包括其他邏輯和功能或者模塊的組件,沒有提供它們的描述以避免使本發(fā)明不必要的模糊。圖2描述了根據本發(fā)明的一個實施例的用于生成多個將要被打印在產品上的唯一的安全代碼的方法50。如圖2所示的,在或者由客戶端14執(zhí)行的與方法50相關的操作(即,虛線51的左面)與那些在或者由主機12執(zhí)行的操作分離開來。在操作52處,客戶端14接收用戶發(fā)起的請求以生成用于特定產品的多個安全代碼。例如,可以經由客戶端14的代碼生成模塊18接收用戶發(fā)起的請求。而且,用戶發(fā)起的請求可以包括與將在上面打印安全代碼的產品相關的數據,以及指示將被生成和打印的安全代碼的數量的數目。在接收了用戶發(fā)起的請求之后,客戶端14在操作54確定客戶端請求并且將客戶端請求傳送給主機12。例如,在本發(fā)明的一個實施例中,客戶端14可以抽取由客戶端用戶輸入的產品數據的一部分,并且將抽取的產品數據連同用戶輸入的數目包括于客戶端請求中,其中該數目指示將要被生成和打印的安全代碼的數量。然后,客戶端14將客戶端請求(例如,通過網絡16)傳送給主機12。在本發(fā)明的一個實施例中,對客戶端14與主機12間的通信進行加密或者保護。在操作56,主機12接收客戶端請求。響應于接收客戶端請求,在操作58,主機12生成批次標識符和批次密鑰(或者種子數)。批次ID可以以保證批次ID與所有以前用過的批次ID不同的任意方式生成,諸如簡単數值級數、確定性偽隨機序列、或者一系列隨機生成值,其中副本被移除。批次密鑰可以由偽隨機序列、硬件隨機數生成器或者生成難以預知的密鑰的任何方法生成。本領域技術人員將會理解,為了保證安全代碼的完整性,批次密鑰以不能為試圖生成偽造代碼的個人或者系統(tǒng)所預知的方式生成是重要的。批次密鑰也應該是唯一的,以阻止重復的安全代碼由客戶端14生成。批次ID和批次密鑰連同從客戶端14接收的產品數據被存儲在主機12的產品數據庫32中。然后,在生成批次ID和批次密鑰后,在操作60處,主機12將批次ID和批次密鑰傳送給客戶端14。在本發(fā)明的一個實施例中,可選的加密密鑰94(也叫加擾ID),連同批次ID和批次密鑰一起從主機12傳送給給客戶端14。如下更詳細描述的,加密密鑰94指示特定的加擾或者加密方法,其由客戶端14在安全代碼生成期間并且由主機12在安全代碼驗證期間使用??蛇x地,除了將加密密鑰94從主機12傳遞到客戶端14,可以配置主機12和客戶端14,以利用預定的加擾或者加密方法。在操作62處,在從主機12接收到批次ID和批次密鑰之后,客戶端14利用批次ID和批次密鑰,以在操作64處生成多個安全代碼。另外,在操作64處,客戶端14指示打印設備26在產品上打印安全代碼,而不將安全代碼保留于安全代碼庫中(例如,數據庫或者記錄介質)。因此,在客戶端14已經指示打印設備26將安全代碼打印在単獨的產品上之后,客戶端14和主機12都不保留安全代碼。即,安全代碼不保留在存儲器中并且不寫到磁盤存儲器中。安全代碼也不需要傳輸到主機12。如果未授權的人獲取進入客戶端14或者主機12,這阻止了安全代碼被危害。并且,由于安全代碼在打印位置生成,所以不存在安全代碼在傳送(例如,通過網絡)到打印位置中將被破壞的風險??蛻舳?4在安全代碼已經被打印后不保留批次密鑰,因此沒有做出從客戶端14到主機12的新的請求的情況下,不能產生另外的安全代碼。在用于該批的所有安全代碼的打印完成后,可選地,客戶端14將被打印的安全代碼的實際數目傳送給主機12,如果中斷代碼生成或者打印或者如果制造的產品數目少于預期,則所述實際數目可以少于最初請求的數目。圖3描述了根據本發(fā)明的實施例的用于驗證其上已經被打印了安全代碼的產品的方法70。如圖3所示的,在或者由主機12執(zhí)行的與方法70相關的操作(即,虛線71的右面)與由那些在產品供應或產品分配鏈中的消費者或者其他人所執(zhí)行的操作分離開來。在本發(fā)明的一個實施例中,當消費者識別所懷疑的產品包裝上的安全代碼時,用于驗證產品的方法70在操作72處開始。接下來,在操作74處,消費者將包括安全代碼的代碼驗證請求傳送給主機12。在本發(fā)明的不同實施例中,操作74可以以若干種方式中的ー種來完成。如果安全代碼被作為字母數字文本提供在產品、標簽或者產品包裝上,那么消費者可以使用任何可以使消費者能夠輸入字母數字文本的通信設備來將安全代碼傳送給主機的代碼驗證邏輯38。例如,消費者可以使用執(zhí)行在諸如個人計算機、個人數字助理(PDA)、移動電話或者任何其他類似的設備的計算設備上的基于Web的應用,以將安全代碼通過網絡傳送給主機12。在本發(fā)明的一個實施例中,主機12的代碼驗證邏輯38可以包括語音識別模塊、計算機電話應用,或者綜合話音響應單元(未示出)。因而,消費者可以向電話說出字母數字安全代碼,以將安全代碼傳送給主機12。在本發(fā)明的特定實施例中,安全代碼可以是已經被編碼為圖形符號的字母數字文本,諸如數據矩陣或者其他條形碼。在這樣的情況下,消費者可以利用帶有圖像讀取或者圖像捕獲機制的設備以將安全代碼告知主機12。例如,照相機或者掃描儀可以用來捕獲安全代碼的圖像(例如,圖形符號),然后將其傳送給主機。在本發(fā)明的特定實施例中,圖形符號在被告知主機12之前,可以對其進行解碼,以產生字母數字文本??蛇x地,在本發(fā)明的特定實施例中,主機12的代碼驗證邏輯38可以包括能夠將圖形符號的掃描圖像解碼為字母數字文本的解碼組件。再次參考圖3中描述的方法70,在操作76處,主機12接收代碼驗證請求和安全代碼。在操作78處,主機12驗證安全代碼。在參考圖5的下面描述中提供驗證操作的例子。本領域技術人員將會理解,驗證操作可以取決于特定的實現而變化。然而,與本發(fā)明一致,主機和客戶端都不在安全代碼已經被打印在產品上之后存儲它。因此,代碼驗證邏輯38能夠驗證安全代碼,而沒有訪問存儲在倉庫或者數據庫中的安全代碼的副本。在安全代碼已經由主機12的代碼驗證邏輯38驗證之后,在操作80處,主機12可以將驗證操作的結果傳送給消費者。在本發(fā)明的一個實施例中,將以與從消費者接收代碼驗證請求和安全代碼同樣的方式,來傳送驗證操作的結果。例如,如果通過電話呼叫收到請求,那么自動計算機電話應用可以將操作結果通過電話傳送給消費者??蛇x地,在本發(fā)明的一個實施例中,可以使用不同于用來接收安全代碼的通信方式來傳送驗證結果。在任何情況下,在操作82處,消費者接收驗證操作的結果。本領域技術人員將會理解,在前面的例子中,可以由計算設備實際執(zhí)行歸結于消費者的操作。例如,借助于某些計算設備或者電話將驗證過程的結果傳送給消費者。另外,本領域技術人員將會理解,可以以硬件、軟件或者它們的任意組合來實現這里描述的功能組件、模塊和邏輯。圖4描述了根據本發(fā)明的實施例的與用于生成安全代碼的方法相關聯的操作和數據流。在圖4中描述的操作用作在圖2中描述的方法50的客戶端側操作64的ー個例子。因而,在發(fā)起客戶端請求以生成安全代碼之后,客戶端14的代碼生成邏輯22從主機12接收數據。具體地,從主機12接收的數據包括三部分:批次ID 92、批次密鑰90和可選加密密鑰94。另外,由序列號生成器98生成的序列號96,其中序列號生成器98是客戶端的代碼生成邏輯22的一部分,從主機12接收的數據的三部分被用于生成安全代碼。生成安全代碼的操作開始于序列號96、批次ID 92和批次密鑰90 (其也稱為種子數)。序列號96是通過批次ID 92所識別的批次內產品的唯一標識符。序列號96可以由客戶端14以保證該序列號與在該批中所有以前生成的序列號不同的方式生成,諸如簡單數值級數(progression)、確定性偽隨機序列或者一系列隨機生成的值,其中副本被移除。確認值102通過將批次ID 92和序列號96中的一個或者多個與批次密鑰90進行組合來產生。之后,確認值可以被用于確定產生的安全代碼112的真實性。在圖4中示出的本發(fā)明的一個實施例中,批次密鑰90作為種子被用于偽隨機數生成器100生成用作確認值102的偽隨機數。在已經生成確認值102后,可選地,由加密邏輯104加擾和/或加密序列號96、批次ID 92和確認值102。本領域技術人員將會理解,可以使用廣泛的各種眾所周知的加密/解密算法。例如,在本發(fā)明的一個實施例中,利用簡單置換算法來加密數據。在本發(fā)明的一個實施例中,由加密邏輯104使用來加密數據(例如,序列號96、批次ID 92和確認值102)的加密算法與加密密鑰94相關聯。例如,在本發(fā)明的一個實施例中,加密邏輯104能夠執(zhí)行廣泛的各種加密算法。因而,從主機12接收的加密密鑰94指令或指示加密邏輯104使用特定的加密算法加密序列號96、批次ID 92和確認值102。因此,在驗證操作期間,最初選擇和分配加密密鑰94的主機12將能夠解密加密的數據106以實現序列號96、批次ID 92和確認值102。在本發(fā)明的一個實施例中,可以在主機將批次ID92和批次密鑰90傳送給客戶端的時候生成和分配加密密鑰94??蛇x地,可以在請求生成安全代碼之前分配加密密鑰94。例如,在本發(fā)明的一個實施例中,可以基于每個客戶端14分配加密密鑰94,使得每個客戶端具有其自己的主機12知道的加密密鑰94。在序列號96、批次ID 92和確認值102已經被加密以形成加密的數據106之后,可選的加密密鑰插入邏輯108可以將加密密鑰94的所有或者部分插入到加密的數據106中,以完成安全代碼110的生成。例如,加密密鑰94可以在已知位置處插入加密的數據106。因此,在驗證操作期間,主機12的代碼驗證邏輯38可以從安全代碼中的已知位置抽取加密密鑰94。一旦加密密鑰94被插入加密數據106,安全代碼110就準備好被打印在產品、標簽和產品包裝上。在本發(fā)明的一個實施例中,產生的安全代碼可以是十六個字母數字字符的序列。例如,在圖4中,安全代碼110被示出為十六個字母數字字符的字符串112??蛇x地,在本發(fā)明的一個實施例中,字母數字字符可以被編碼為圖形符號,諸如在圖6B中描述的數據矩陣。在任意一種情況中,在安全代碼由代碼生成邏輯22生成之后,代碼標記模塊24控制并且管理安全代碼到打印設備26的傳輸,以及安全代碼實際打印在產品、標簽或者產品包裝上。再次參考圖4,在第一安全代碼已經生成之后,代碼生成操作通過生成用于該批的下ー個序列號114而繼續(xù)。為了生成對應于第二序列號的第二安全代碼,通過將第二序列號和/或批次ID與批次密鑰進行組合來產生第二確認值。在本發(fā)明的一個實施例中,隨機數生成器100迭代運行多次,此數等于序列號。即,在第一過程(pass)期間生成的偽隨機數被用作輸入(例如,種子)進入偽隨機數生成器100用于第二過程。因而,偽隨機數生成器100運行兩次以生成針對第二安全代碼的確認值,第二安全代碼與第二序列號相關聯,并且偽隨機數生成器100運行三次以產生針對第三安全代碼的確認值,第三安全代碼與第三序列號相關聯,以此類推,直到已經生成所有安全代碼。當生成的序列號和相應的安全代碼數量等于由客戶端最初請求的安全代碼數目時,代碼生成操作完成。圖5描述了根據本發(fā)明實施例的與用于驗證包含安全代碼的產品的方法相關聯的操作和數據流。圖5中描述的操作用作在圖3中描述的方法70的主機側操作78的ー個例子。如圖5中描述的,驗證操作開始于打印的安全代碼112。例如,在圖5中,安全代碼是16個字符和數字的組合。首先,可選的加密密鑰抽取邏輯116從安全代碼112抽取加密密鑰94。因為代碼生成邏輯22將加密密鑰94插入到安全代碼中的已知位置中,代碼驗證邏輯38已經了解了安全代碼112中的加密密鑰94的位置。作為抽取加密密鑰94的結果,安全代碼被減小到加密的數據106 (例如,序列號96,批次ID 92和確認值102)。在加密密鑰94已經被抽取之后,加密密鑰94被用作到解密邏輯118的輸入以將加密的數據106解密為其組成部分,例如,序列號96、批次ID 92和確認值102。接下來,在查詢操作120中使用批次標識符92確定被使用來生成確認值102的批次密鑰90。批次密鑰90的副本與批次ID 92和任何作為初始生成安全代碼請求的一部分而從客戶端14接收的產品數據存儲在主機12處,其中批次密鑰90在主機12處響應于客戶端生成安全代碼的請求而初次生成。因此,一旦批次ID 92被確定,代碼驗證邏輯38可以查詢批次密鑰90,以及任何與批次ID 92相關聯的產品數據。最后,主機12使用與客戶端14相同的方法,通過將序列號96和/或批次ID 92與批次密鑰90進行組合,來產生第二確認值124。在本發(fā)明的一個實施例中,在批次ID 92被用于查詢批次密鑰90后,批次密鑰90被用作用于第二偽隨機數生成器122的種子,其使用與客戶端12的偽隨機數生成器100相同的邏輯。第二偽隨機數生成器122然后迭代運行等于序列號96的次數,使得每個過程使用先前過程的結果(例如,產生的偽隨機數)作為種子。產生的偽隨機數被用作第二確認值124,然后,其與由解密邏輯118解密的第一確認值102比較。如果確認值102和124相同,那么主機12報告安全代碼112是可信任的。然而,如果確認值102和124不相同,主機12報告安全代碼112是不可信任的。在本發(fā)明的一個實施例中,響應于消費者或者在產品的分配鏈中的其他人提交代碼驗證請求給主機,與批次ID相關聯的產品數據可以被傳送給該消費者或者該人。例如,在本發(fā)明的一個實施例中,傳送給消費者的產品數據可以表示針對給定產品的分配目的地(例如,地理位置或者零售商店)。即,產品數據可以表示針對特定產品在分配鏈中的最終目的地。因而,消費者可以確定是否產品已經被從它的初始分配的目的地轉移了。在本發(fā)明的另ー實施例中,傳送給消費者的產品數據可以包括與制造數據相關聯的數據,“最遲使用”或者“最遲出售”日期。因而,消費者可以確定是否產品分配鏈中有人已經通過改變與產品相關聯的數據而篡改了產品包裝。通常,在代碼驗證請求期間通過提供產品數據,涉及產品的多個方面可以被驗證。圖6A和圖6B描述了根據本發(fā)明實施例的安全代碼的例子。在本發(fā)明的ー個實施例中,安全代碼可以是十六個字母數字字符的字符串,其中字符由數字和字母組成,諸如圖6A中所示的安全代碼130。通過使用十六個字母數字字符串的不同組合,可以生成多于百萬、十億,十億(1024)個唯一安全代碼。然而,本領域技術人員將會理解,本發(fā)明可選的實施例可以使用的安全代碼在長度上是多于或少于十六個字符的,并且可以使用利用整個ASCII字符集的安全代碼。圖6B說明了表示為圖形符號的安全代碼132。具體地,在圖6B中所示的安全代碼132是被稱為數據矩陣的特定機器可讀取圖形符號。數據矩陣是ニ維矩陣條形碼,其由以正方形或者矩形圖案排列的黑和白方形模塊組成。類似于傳統(tǒng)的條形碼,數據矩陣可以由機器讀取,諸如矩陣條形碼讀取器。將安全代碼的字母數字表示編碼為圖形符號,諸如圖6B的數據矩陣132,提供了幾個優(yōu)勢。第一,糾錯和冗余是內置于數據矩陣132的。因此,如果如數據矩陣所表示的安全代碼被部分損壞,則安全代碼仍舊是可讀的。另ー個優(yōu)勢是數據矩陣的小印記或者尺寸。數據矩陣可以在三乘三毫米的正方形內編碼多達50個字符,其可以被分散地置于產品、標簽或者產品包裝上。最后,數據矩陣可以由機器快速并且容易地讀取。當然,本領域技術人員將會理解,在各種可選的實施例中,可以使用其他圖形符號方法來編碼安全代碼,例如,諸如與TOF417或者QR代碼標準一致的條形碼字體。在本發(fā)明的一個實施例中,兩個版本的安全代碼130和132都可以被包括在產品、標簽或者產品包裝上。例如,安全代碼130的字母數字表示和安全代碼130的圖形符號表示可以一起出現在產品、標簽或者產品包裝上。這提供了范圍廣泛的用于讀取并且將安全代碼傳送給主機12用來驗證的可能的方法和機制。在本發(fā)明的一個實施例中,當需要額外的安全性時,可以使用隱蔽的方式將安全代碼應用或者打印在產品、標簽或者產品包裝上,使得消費者認識不到安全代碼的存在。例如可以使用特定隱形墨水或者其他基于化學品的應用,將安全代碼應用在產品、標簽或者產品包裝上,其中該應用使得安全代碼對于消費者不可見。根據被使用來應用安全代碼的隱形墨水或者化學品的類型,讀取安全代碼可能需要施加熱、紫外線、或者化學品。當供應或者分配鏈中的不同于消費者的某些人很可能會驗證產品時,可以利用這個方法。例如,可以提供隱式的安全代碼,用于由海關官員驗證產品的目的。圖7示出了計算機系統(tǒng)300的示例性形式中機器的概略的圖形表示,在其中可以執(zhí)行用于使機器執(zhí)行任意一個或多個這里討論的方法的指令集。在可選的實施例中,機器可以作為獨立的設備操作或者可以被連接到(例如,通過聯網)其他機器。在一個聯網部暑中,機器可以在客戶端-服務器網絡環(huán)境中在服務器(例如,主機12)或者客戶端14機器的能力內操作,或者在對等(或者分布式)網絡環(huán)境中作為對等機器。機器可以是服務器計算機、客戶端計算機、個人計算機(PC),平板PC、機頂盒(STB)、個人數字助理(PDA)、蜂窩電話、Web設備、網絡路由器、交換機或者橋接器、或者能夠執(zhí)行指定由該機器所采取的動作的指令集(順序的或者其它)的任何機器。此外,雖然僅描述了單個機器,但是術語“機器”也應該被采用以包括獨立地或者聯合地執(zhí)行指令集(或者多個集合)以執(zhí)行任意ー個或者多個這里討論的方法的任何機器的集合。示例性的計算機系統(tǒng)300包括處理器302 (例如,中央處理單元(CPU)、圖形處理單元(GPU)或者兩者)、主存儲器304和非易失性存儲器306、它們通過總線308彼此通信。計算機系統(tǒng)300還包括視頻顯示單元310 (例如,液晶顯示器(LCD)或者陰極射線管(CRT))。計算機系統(tǒng)300也包括字母數字輸入設備312 (例如,鍵盤)、指針控制設備314 (例如,鼠標)、盤驅動單元316、信號生成設備318 (例如,揚聲器)和網絡接ロ設備320。盤驅動単元316包括機器可讀取介質322,其上存儲了ー個或多個包含任意ー個或多個這里描述的方法或者功能的指令集(例如,軟件324)。在由計算機系統(tǒng)300執(zhí)行它吋,軟件324也可以完全或者至少部分地駐留在主存儲器304中和/或處理器302中,主存儲器304和處理器302也構成機器可讀取介質。軟件324還可以經由網絡接ロ設備320通過網絡326傳輸或者接收。盡管機器可讀取介質322在示例性實施例中被示出作為單個介質,但術語“機器可讀取介質”應該被采用以包括存儲ー個或多個指令集的單個介質或者多個介質(例如,集中的或者分布的數據庫、和/或相關的緩存和服務器)。術語“機器可讀取介質”還應該被采用以包括任何能夠存儲、編碼或者攜載用于由機器執(zhí)行的并且使得機器執(zhí)行本發(fā)明的任意ー個或多個方法的指令集的介質。因而,術語“機器可讀取介質”應該被采用以包括,但是不限干,固態(tài)存儲器、光和磁介質以及載波信號。因此,已經描述了用于阻止偽造的方法和系統(tǒng)。盡管本發(fā)明已經參考特定的示例性實施例得以描述,但是明顯地,在不偏離本發(fā)明的更廣泛的精神和范圍的情況下,可以對這些實施例做出各種修改和改變。因而,說明書和附圖應該被當作說明性而不是限制性意義。
權利要求
1.一種方法,包括: 生成代碼的集合,其中每個代碼對于単元項目是唯一的,每個代碼包括檢查值用作所述代碼的子部分;以及 響應于接收用以驗證一代碼的請求,將所接收代碼的檢查值與一值進行比較。
2.根據權利要求1所述的方法,其中:所述比較包括僅將所述代碼的子部分與ー值進行比較。
3.根據權利要求2所述的方法,其中生成所述代碼進ー步包括:加密每個代碼。
4.根據權利要求2所述的方法,進ー步包括:加密所述代碼并向經加密代碼附加數據,所述數據將被用于解密所述代碼。
5.根據權利要求2所述的方法,其中所述代碼進ー步包括:批次標識符和序列號。
6.根據權利要求5所述的方法,其中所述批次標識符對于所生成的唯一代碼的集合是公共的,以及每個序列號對于公共批次標識符是唯一的。
7.根據權利要求1所述的方法,進ー步包括:接收用以生成所述代碼的集合的請求,并且進一歩接收與將要在其上打印所述代碼的產品相關聯的產品數據;響應于接收到驗證ー代碼是否是所生成代碼之ー的請求,確定一代碼是否是所生成的安全代碼之ー;以及提供確定所述代碼是否是所生成代碼之ー的結果,以及進一歩提供先前接收的產品數據的至少一部分。
8.根據權利要求7所述的方 法,其中與將要在其上打印所述代碼的所述產品相關聯的所述產品數據包括:所述產品的預期目的地。
9.根據權利要求7所述的方法,其中與將要在其上打印所述代碼的所述產品相關聯的所述產品數據包括以下中的一個或者多個:通用產品代碼UPC、產品描述、包裝尺寸、數量、或者產品或者包裝圖像。
10.根據權利要求7所述的方法,其中與將要在其上打印所述代碼的所述產品相關聯的所述產品數據包括以下一個或者多個:時間屬性、位置屬性、工作順序、批號、制造日期、最遲使用日期、操作員姓名或者制造エ廠。
11.根據權利要求7所述的方法,其中提供先前接收的產品數據的至少一部分是依賴于請求者的所標識位置。
12.根據權利要求10所述的方法,其中所述請求者的所標識位置是海關官員或者消費者之一。
13.根據權利要求1所述的方法,進ー步包括:響應于接收到用以驗證代碼的請求,記錄相關于所述代碼驗證請求的數據,所述數據包括以下至少ー個:請求者的身份、所述請求被發(fā)出的位置、因特網協(xié)議地址、或者請求驗證的時間。
14.根據權利要求13所述的方法,進ー步包括:分析相關于針對所述代碼的所述驗證請求的所述數據,以識別所述代碼的偽造或者產品轉移。
15.根據權利要求1所述的方法,進ー步包括:維護與特定代碼相關聯的、所接收的代碼驗證請求的數量的計數。
16.根據權利要求1所述的方法,進ー步包括:分析與特定代碼相關聯的、所接收的代碼驗證請求的圖案;以及報告與分析的結果相關聯的統(tǒng)計數據。
17.根據權利要求1所述的方法,進ー步包括:分析所接收代碼驗證請求的數目、定時、頻率、或位置中的ー個或者多個,以識別欺騙性活動或者產品轉移。
18.根據權利要求17所述的方法,進ー步包括:如果滿足與代碼驗證請求的分析相關聯的規(guī)則,則進行警告。
19.根據權利要求1所述的方法,其中:將以機器可讀圖形符號在產品上標記的代碼包括以下中的至少ー個:數據矩陣格式、PDF417或者QR代碼格式。
20.一種檢測產品轉移的方法,包括: 從客戶端接收所分配目的地以及生成安全代碼的請求; 與批次標識符相關聯地存儲所分配的目的地; 從請求者接收針對產品單元的安全代碼驗證請求,所述請求指定針對所述請求者的地理位置; 從所述安全代碼獲取所述批次標識符; 使用所述批次標識符來查找所分配的目的地;以及 將所述請求者的地理位置與所分配的目的地進行比較。
21.根據權利要求20所述的方法,進ー步包括:在接收所述安全代碼之前向所述客戶端發(fā)送所述批次標識符。
22.根據權利要求20所述的方法 , 其中將所述請求者的所述地理位置與所分配的目的地進行比較標識產品轉移的實例。
23.根據權利要求20所述的方法,進ー步包括:向所述請求者報告所述安全代碼是可信的。
24.根據權利要求23所述的方法,進ー步包括:向所述請求者提供產品數據。
25.根據權利要求24所述的方法,其中:所述產品數據包括所分配目的地。
26.根據權利要求24所述的方法,進ー步包括:利用所述安全代碼驗證請求來接收所述請求者的標識,以及其中向所述請求者提供所述產品數據包括基于所述標識選擇所述產品數據。
27.根據權利要求26所述的方法,其中:所述請求者的所述標識包括所述請求者的身份或者互聯網協(xié)議地址。
28.一種方法,包括: 從產品單元讀取經加密的安全代碼; 向主機傳輸驗證請求,所述驗證請求包括所述經加密的安全代碼; 從所述主機接收特定于所述単元的產品數據和真實性的指示。
29.根據權利要求28所述的方法,其中:所述產品數據包括:時間屬性、位置屬性、工作順序、批號、制造日期、最遲使用日期、最遲出售日期、操作員姓名或者制造エ廠。
30.根據權利要求28所述的方法,其中:所述驗證請求標識請求者的類型。
31.根據權利要求28所述的方法,其中:從所述單元讀取經加密的安全代碼包括:從粘附至所述單元的RFID標簽讀取所述經加密的安全代碼。
32.根據權利要求28所述的方法,其中:從所述單元讀取經加密的安全代碼包括:使用照相機捕獲所述經加密的安全代碼的圖像。
全文摘要
本申請涉及用于阻止產品偽造、轉移和盜版的方法和系統(tǒng)。在一個實施方式中,公開了一種方法,包括生成代碼的集合,其中每個代碼對于單元項目是唯一的,每個代碼包括檢查值用作代碼的子部分;以及響應于接收用以驗證一代碼的請求,將所接收代碼的檢查值與一值進行比較。在另一實施方式中,公開了一種檢測產品轉移的方法,包括從客戶端接收所分配目的地以及生成安全代碼的請求;與批次標識符相關聯地存儲所分配的目的地;從請求者接收針對產品單元的安全代碼驗證請求,請求指定針對請求者的地理位置;從安全代碼獲取批次標識符;使用批次標識符來查找所分配的目的地;以及將請求者的地理位置與所分配的目的地進行比較。
文檔編號G06Q30/00GK103093359SQ20121052979
公開日2013年5月8日 申請日期2006年2月3日 優(yōu)先權日2005年2月3日
發(fā)明者E·格蘭特, W·斯特林, M·塞爾夫 申請人:堯德品牌保護公司