專利名稱:近場通信芯片組通信接口和主處理器之間相互認(rèn)證的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種在包含發(fā)送及接收非接觸式數(shù)據(jù)的NFC (Near Field Communication,近場通信)接口電路的NFC系統(tǒng)或芯片組中認(rèn)證的方法。本發(fā)明具體涉及通過芯片組的NFC組件認(rèn)證芯片組的安全處理器。 "NFC組件"指連接到NFC接口電路的控制器(微控制器)。
背景技術(shù):
目前,NFC技術(shù)由名為NFC論壇(http:〃www.nfc-forum.org)所組織的工業(yè)協(xié)會開發(fā)。NFC技術(shù)源于RFID (射頻識別)技術(shù),使用可以具有不 同工作模式,也就是"讀取"模式、"卡仿真"模式和"裝置"模式(也稱為"裝 置-裝置"模式)的NFC組件。在"讀取"模式下,NFC組件作為標(biāo)準(zhǔn)的RFID 讀取器讀取或?qū)懭隦FID芯片(芯片卡或非接觸式標(biāo)簽)。該組件發(fā)出磁 場,通過調(diào)制磁場幅度發(fā)送數(shù)據(jù),并通過負(fù)載調(diào)制和感應(yīng)耦合接收數(shù)據(jù)。 在"仿真"模式下,申請人的EP1 327 222號專利已經(jīng)說明,NFC組件像異 頻雷達(dá)收發(fā)機(jī)一樣無源運(yùn)行,與另一讀取器或NFC組件對話,由作為RFID 芯片的其他讀取器得到。組件不發(fā)出任何磁場,通過解調(diào)其他讀取器發(fā)出 的磁場接收數(shù)據(jù),并通過調(diào)制其天線電路的阻抗(負(fù)載調(diào)制)發(fā)送數(shù)據(jù)。 在"裝置"模式下,組件必須與另一個位于相同工作模式的下NFC組件相 配,并且每個NFC組件交替進(jìn)入無源狀態(tài)(不發(fā)出場)接收數(shù)據(jù)和有源 狀態(tài)(發(fā)出場)發(fā)送數(shù)據(jù)。除了這三種工作模式之外(其它工作模式可以在未來設(shè)計),NFC組 件還可以執(zhí)行一些非接觸式通信協(xié)議,而且例如能夠根據(jù)ISO 14443-A協(xié) 議、ISO 14443-B協(xié)議、ISO 15693協(xié)議等交換數(shù)據(jù)。每個協(xié)議確立一個磁 場發(fā)射頻率, 一個調(diào)制磁場幅度以便在有源模式下發(fā)送數(shù)據(jù)的方法,以及
在無源模式下通過感應(yīng)耦合發(fā)送數(shù)據(jù)的負(fù)載調(diào)制方法。因而,NFC組件為多模式和多協(xié)議裝置。例如申請人銷售名為"微讀(MicroRead)"的NFC組件。由于其擴(kuò)展的通信能力,NFC組件可以集成在例如移動電話或PDA (個人數(shù)字助理)等便攜式裝置中。這樣一來,就產(chǎn)生了如圖l所示類型 的NFC芯片組,也就是包含NFC組件(標(biāo)記為"NFCR1")和至少一個第 一主處理器HP1的芯片組。"主處理器"指任何包含微處理器或微控制器、 并且連接至NFC組件端口的集成電路。在許多應(yīng)用中,NFC芯片組還包 含第二主處理器HP2,有時還包含第三主處理器。第一主處理器HP1可以是內(nèi)含NFC組件的裝置的主要處理器,第二 主處理器HP2可以是安全電路。主處理器HP1通常為非安全處理器,例 如移動電話的基帶電路(或無線電話電路)。主處理器HP2例如是SIM 卡(即存在于SIM卡中的微處理器)。因此,NFC組件的資源可被處理 器HP1、 HP2利用,使它們能夠管理非接觸式應(yīng)用。這種應(yīng)用示于圖2, 其表示裝有圖1中的NFC芯片組的移動電話30。以下可加以區(qū)分1) API型應(yīng)用移動電話30的NFC組件在讀取模式下讀取或?qū)懭?非接觸式集成電路CLCT。在這種情況下,移動電話被當(dāng)作RFID讀取器 使用。這類應(yīng)用可以是免費的,例如讀取嵌入公共汽車候車亭廣告中的廣 告數(shù)據(jù)。該應(yīng)用還可以是收費的,例如讀取訂戶預(yù)定的信息。如果服務(wù)是 免費的,API應(yīng)用的程序最好由處理器HP1保存和執(zhí)行,如果其為收費 的、需要訂戶識別,則最好由處理器HP2保存和執(zhí)行。因此,如圖1所示, 應(yīng)用API可以由處理器HP1或處理器HP2處理。2) AP2型應(yīng)用電話30的NFC組件處于卡仿真模式下,以通過標(biāo) 準(zhǔn)RD讀取器在付費或收費接入控制應(yīng)用(付費器,地鐵入口等等)中讀 取。于是移動電話30就當(dāng)作芯片卡使用。如圖1所示,由于接入服務(wù)需 要訂戶識別,所以AP2應(yīng)用的程序最好由安全處理器HP2保存和執(zhí)行,。3) AP3型應(yīng)用電話30的NFC組件處于"裝置"模式下,并與其他 裝置,例如集成在另一移動電話31或電腦32中的讀取器進(jìn)行對話。這類
應(yīng)用通常是免費的,并且能使數(shù)據(jù)包從一個裝置傳送到另一裝置(特別是 點到點的文件傳送)。如圖1所示,AP3應(yīng)用的程序最好由非安全處理器 HP1保存和執(zhí)行,如果安全處理器HP2是SIM卡處理器,非安全處理器 HP1的計算能力大于安全處理器HP2。圖3示意性表示NFC組件的架構(gòu)。組件包含發(fā)送/接收非接觸式數(shù)據(jù) 的裝有天線電路ACT的接口電路CLINT,連接至接口電路CLINT的硬連 線通信接口 INT1、 INT2,以及控制器NFCC。接口 INT1連接至主處理器 HP1,接口 INT2連接至主處理器HP2。所有這些組件形成一個NFC芯片組。因此,制造NFC芯片組需要建立各主處理器HP1、 HP2和NFC組件 之間的通信通路,以使主處理器能夠經(jīng)非接觸式數(shù)據(jù)傳輸通路發(fā)送數(shù)據(jù), 以及向各主處理器路由輸入數(shù)據(jù)流(經(jīng)非接觸式數(shù)據(jù)傳輸通路接收的數(shù) 據(jù))。然而,例如在上述的AP2型的某些應(yīng)用中,主處理器中的一個是安全 的。因此,對于安全處理器和NFC組件之間的通信通路來說,其自身最 好也是安全的,具體說是為了避免經(jīng)非接觸式傳輸通路傳輸?shù)拿孛軘?shù)據(jù)被 非授權(quán)裝置截獲或修改、甚至仿真的可能性。這樣,建立這樣的一個安全傳輸通路,從而共享共用的秘密數(shù)據(jù)或各 自的補(bǔ)充秘密數(shù)據(jù), 一般需要由NFC組件對主處理器認(rèn)證。一般說來,NFC芯片組制造商與安全處理器制造商和定制各個主處理 器的操作者不同。此外,NFC芯片組可能需要連接至不同的可互換的安全 處理器。因此,NFC控制器不能定制成存儲特定的安全主處理器的秘密 數(shù)據(jù)。發(fā)明內(nèi)容在一實施例中,NFC芯片組的NFC組件可以認(rèn)證安全處理器,使得 能在它們之間建立安全傳輸通路。 這可以通過提供一種NFC系統(tǒng)的安全主處理器和控制器之間的認(rèn)證方法而得以實現(xiàn),其中控制器連接至發(fā)送及接收非接觸式數(shù)據(jù)的NFC接口電路,該方法包含以下步驟將主處理器連接至控制器,以及核校由主處理器存儲的第一秘密數(shù)據(jù)和由控制器存儲的第二秘密數(shù)據(jù)之間存在預(yù) 先確定的關(guān)系。根據(jù)一實施例,該方法包含將第二秘密數(shù)據(jù)傳輸至控制器,并由控制 器存儲第二秘密數(shù)據(jù)的先行步驟。根據(jù)一實施例,控制器通過核校第一和第二秘密數(shù)據(jù)之間的關(guān)系來認(rèn) 證主處理器。根據(jù)一實施例,主處理器通過核校第一和第二秘密數(shù)據(jù)之間的關(guān)系來 認(rèn)證控制器。根據(jù)一實施例,該方法包含以下步驟,即如果控制器對主處理器認(rèn)證成功,控制器就將會話密鑰(session key)傳輸至主處理器,然后利用密 鑰將主處理器和控制器之間的數(shù)據(jù)交換譯成密碼。根據(jù)一實施例,該方法包含以下步驟一主處理器向控制器發(fā)送認(rèn)證請求,一控制器通過提供隨機(jī)數(shù)字應(yīng)答請求,—主處理器利用其作為密鑰(encipheringkey)存儲的第一秘密數(shù)據(jù) 通過加密函數(shù)將接收的隨機(jī)數(shù)字譯成密碼(以下簡稱譯碼),并將譯碼結(jié) 果傳輸至控制器,一控制器利用其作為密鑰存儲的第二秘密數(shù)據(jù)通過加密函數(shù)對接收 的譯碼結(jié)果進(jìn)行核校,如果核校執(zhí)行成功,則主處理器的認(rèn)證成功。根據(jù)一實施例,第一和第二秘密數(shù)據(jù)是相同的。根據(jù)一實施例,第一秘密數(shù)據(jù)為公共密鑰(public enciphering key), 第二秘密數(shù)據(jù)為通過不對稱加密關(guān)系連至第一秘密數(shù)據(jù)的個人密鑰 (private enciphering key)。
根據(jù)一實施例,該方法包含以下先行步驟提供以可移除的方式結(jié)合 有非接觸式組件的主處理器,其中該非接觸式組件保存要向控制器傳輸?shù)?第二秘密數(shù)據(jù),以及將主處理器連接至控制器,非接觸式組件將第二秘密 數(shù)據(jù)傳輸至控制器。根據(jù)一實施例,主處理器為將要從卡上移除的SIM卡集成電路,其集 成了保存要向控制器非接觸式傳輸?shù)牡诙孛軘?shù)據(jù)的非接觸式組件,NFC 系統(tǒng)為包含另一連接至控制器的主處理器的移動電話。根據(jù)一實施例,第二秘密數(shù)據(jù)通過光讀取轉(zhuǎn)變并隨之傳輸至控制器的 光代碼傳輸至控制器。根據(jù)一實施例,第二秘密數(shù)據(jù)通過鍵入傳輸至控制器的秘密數(shù)據(jù)的值 傳輸至控制器。本公開還涉及一種系統(tǒng),其包含連接至用于發(fā)送/接收NFC型非接觸 式數(shù)據(jù)的接口電路的控制器,以及用于將控制器連接至主處理器的裝置, 該控制器用于核校由主處理器存儲的第一秘密數(shù)據(jù)和由控制器存儲的第 二秘密數(shù)據(jù)之間存在預(yù)先確定的關(guān)系。根據(jù)一實施例,控制器在系統(tǒng)初始化時用于接收及存儲第二秘密數(shù)據(jù)。根據(jù)一實施例,控制器用于通過核校第一和第二秘密數(shù)據(jù)之間的關(guān)系 來認(rèn)證主處理器。根據(jù)一實施例,主處理器用于通過核校第一和第二秘密數(shù)據(jù)之間的關(guān) 系來認(rèn)證控制器。根據(jù)一實施例,控制器設(shè)置成如果控制器對主處理器認(rèn)證成功,就將 會話密鑰傳輸至主處理器,然后利用密鑰將主處理器和控制器之間的數(shù)據(jù) 交換譯成密碼。根據(jù)一實施例_主處理器用于向控制器發(fā)送認(rèn)證請求, 一控制器用于通過提供隨機(jī)數(shù)字應(yīng)答請求, 一主處理器用于利用其作為密鑰存儲的第一秘密數(shù)據(jù)通過加密函數(shù) 將接收的隨機(jī)數(shù)字譯成密碼,并將譯碼結(jié)果傳輸至控制器,以及一控制器用于利用其作為密鑰存儲的第二秘密數(shù)據(jù)通過加密函數(shù)對 接收的譯碼結(jié)果進(jìn)行核校,如果核校執(zhí)行成功,則主處理器的認(rèn)證成功。根據(jù)一實施例,主處理器以可移除的方式結(jié)合有非接觸式組件,其中 該非接觸式組件保存要向控制器非接觸式傳輸?shù)牡诙孛軘?shù)據(jù)。根據(jù)一實施例,主處理器為將要從智能卡上移除的SIM卡集成電路, 其集成了保存要向控制器非接觸式傳輸?shù)牡诙孛軘?shù)據(jù)的非接觸式組件, NFC系統(tǒng)為包含另一連接至控制器的主處理器的移動電話。根據(jù)一實施例,第二秘密數(shù)據(jù)通過光學(xué)讀取轉(zhuǎn)換并隨之傳輸至控制器 的光代碼傳輸至控制器。根據(jù)一實施例,第二秘密數(shù)據(jù)通過鍵入傳輸至控制器的秘密數(shù)據(jù)的值 傳輸至控制器。本公開還涉及一種智能卡,其包含-—能從智能卡上移除、并集成了保存第一秘密數(shù)據(jù)的安全處理器的 集成電路卡,以及一耦接到發(fā)送及接收非接觸式數(shù)據(jù)的NFC接口電路的非接觸式組件,其還保存要非接觸式傳輸?shù)牡诙孛軘?shù)據(jù),第二秘密數(shù)據(jù)通過預(yù)先確 定的關(guān)系連至第一秘密數(shù)據(jù)。根據(jù)一實施例,安全處理器用于通過核校第一和第二秘密數(shù)據(jù)之間的 關(guān)系來認(rèn)證控制器。根據(jù)一實施例,安全處理器設(shè)置成,如果其被控制器認(rèn)證成功,就接 收會話密鑰,然后利用密鑰將主處理器和控制器之間的數(shù)據(jù)交換譯成密碼。根據(jù)一實施例,安全處理器用于一向控制器發(fā)送認(rèn)證請求, 一接收隨機(jī)數(shù)字, 利用作為密鑰的第一秘密數(shù)據(jù)通過加密函數(shù)將接收的隨機(jī)數(shù)字譯成 密碼,并傳輸譯碼結(jié)果。
具體實施例的這些以及其它目的、優(yōu)點和特征將通過結(jié)合、但不限于 以下附圖,更加詳細(xì)地展現(xiàn)出來,其中一以上說明的圖1以方框的形式表示NFC芯片組和NFC芯片組可 以與之對話的非接觸式電路的傳統(tǒng)架構(gòu),一以上說明的圖2表示集成到移動電話中的NFC芯片組的各種應(yīng)用,一以上說明的圖3以方框的形式表示圖1的NFC芯片組中存在的 NFC組件的傳統(tǒng)架構(gòu),一圖4A至4C表示根據(jù)一實施例的能夠接收從裝有NFC組件的卡 中移除的可互換的安全主處理器的NFC芯片組,一圖5表示由NFC芯片組的NFC組件和安全主處理器執(zhí)行的認(rèn)證 次序,一圖6表示圖4A至4C中NFC芯片組中存在的NFC組件的硬件架 構(gòu)的實例,以及一圖7表示圖6中NFC組件的軟件架構(gòu)的實例。
具體實施方式
圖4A至4C示意性表示根據(jù)一實施例的認(rèn)證方法的執(zhí)行。該方法在 NFC芯片組中執(zhí)行,該芯片組包含以"NFCR2"標(biāo)記的NFC組件,第一主 處理器HP1,以及用于將組件NFCR2連接至第二主處理器HP2的連接裝 置C1。組件NFCR2包含與上述組件NFCR1相同的單元,具體說,包含 控制器NFCC和裝有天線電路ACT的用于發(fā)送展收非接觸式數(shù)據(jù)的接口 CLINT 。
連接裝置Cl包含例如用于與主處理器上形成的接觸墊相配合的接觸墊。可選擇地,主處理器與非接觸式通信接口電路耦接,以與控制器NFCC通信。
圖4A中,NFC芯片組并不包含第二主處理器,后者以可移除的方式 集成在智能卡l中。根據(jù)一實施例,集成有主處理器HP2的智能卡1包含非接觸式組件 CLC,該非接觸式組件包含與上述組件NFCR1中類似的單元。因此,組 件CLC具體包含控制器NFCC和裝有天線電路ACT的用于發(fā)送/接收非 接觸式數(shù)據(jù)的接口 CLINT,但無硬連線通信接口 INT1、 INT2。處理器HP2 可以從智能卡1中移除,以使其能夠插入芯片組中其通過連接裝置Cl連 接至組件NFCR2的地方。
處理器HP2和組件CLC之前已經(jīng)經(jīng)過定制,從而各自保存有秘密數(shù) 據(jù)K1、 K2。分別存儲在處理器HP2和組件NFCR2中的秘密數(shù)據(jù)K1、 K2 通過一種可進(jìn)行核校的關(guān)系互聯(lián)。該關(guān)系可以簡單地為相等關(guān)系或任何其 它關(guān)系,例如加密函數(shù)。因此,由主處理器存儲的數(shù)據(jù)Kl可以為私鑰(private key),由組件NFCR2存儲的數(shù)據(jù)K2為一對不對稱密鑰的公鑰(public key)。
主處理器HP1例如為內(nèi)含組件NFCR2的芯片組的主要處理器。組件 NFCR2和處理器HP2各包含安全處理器,即包含安全處理器的傳統(tǒng)加密 和認(rèn)證電路。處理器HP1不是安全的。芯片組還可以包含第三主處理器肥o
例如,芯片組由移動電話組成,處理器HP1為電話的主要處理器,處 理器HP2為SIM卡的芯片,處理器HP3為銀行卡芯片。如圖4A和4B所示,處理器HP2從集成有組件CLC的卡1中移除, 插入芯片組中其連接至組件NFCR2的地方。相應(yīng)地,芯片組初始化時組 件NFCR2處于讀取模式,在無源模式下尋求讀取NFC組件。當(dāng)組件CLC 置于芯片組附近時,組件NFCR2激或向其提供秘密數(shù)據(jù)K2的組件CLC。 數(shù)據(jù)K2由組件NFCR2存儲在例如EEPROM類型的非易失性存儲器中(圖 4C)。將主處理器HP2連接至組件NFCR2和每次初始化芯片組時,主處理 器都引發(fā)一個認(rèn)證次序。圖5即表示這種由安全主處理器HP2和組件 NFCR2的控制器NFCC執(zhí)行的認(rèn)證次序。在第一步驟S1中,處理器HP2向控制器NFCC發(fā)送認(rèn)證請求。在接 下來的步驟S2中,控制器NFCC通過提供隨機(jī)數(shù)字"Rnd Nb"和與NFC組 件有關(guān)的信息"NFCInfo."(例如序列號、制造日期、或者甚至軟件版本號) 應(yīng)答該請求。在接下來的步驟S3中,處理器HP2利用秘密數(shù)據(jù)Kl作為 密鑰將接收的隨機(jī)數(shù)字、以及可能還有其它接收的信息譯成密碼,并將譯 碼數(shù)據(jù)傳輸至控制器NFCC。在接下來的步驟S4中,控制器NFCC通過將秘密數(shù)據(jù)K2用作密鑰 的方式對接收的數(shù)據(jù)進(jìn)行解譯碼。如果解譯碼的數(shù)據(jù)與步驟S2中發(fā)送的 數(shù)據(jù)相對應(yīng),則秘密數(shù)據(jù)K1、 K2確實通過預(yù)先確定的關(guān)系相連,控制器 NFCC認(rèn)為處理器HP2己經(jīng)認(rèn)證。如果是這種情況,控制器NFCC就向處 理器HP2傳輸訊息,向其通報其已經(jīng)過認(rèn)證,并且含有會話密鑰SK。會 話密鑰SK例如為隨機(jī)數(shù)字。如果接收的譯碼信息通過數(shù)據(jù)K2的解譯碼不支持其傳輸至處理器 HP2的信息,則控制器NFCC認(rèn)為處理器HP2未經(jīng)認(rèn)證,拒絕與后者進(jìn) 行任何其它通信。如果處理器HP2已經(jīng)被認(rèn)證,在控制器NFCC和處理器HP2可以以 譯碼的形式,將會話密鑰SK用作對稱密鑰交換數(shù)據(jù),例如結(jié)構(gòu)和管理信 息(步驟S5和S6)。例如,可以將存儲在控制器NFCC的非易失性存儲 器中的路由表傳送至處理器HP2中,以用于另一NFC芯片組中(例如另 一移動電話)??蛇x擇地,還可以將存儲在控制器NFCC的非易失性存儲 器中的路由表傳送至組件CLC中,以用于另一NFC芯片組中。步驟S2中傳輸?shù)男畔⒁部梢杂煽刂破鱊FCC利用秘密數(shù)據(jù)K2譯碼, 譯碼結(jié)果與非譯碼信息一起傳輸。處理器HP2就可以利用秘密數(shù)據(jù)Kl對
譯碼結(jié)果進(jìn)行解譯碼,并核校所接收的信息和解譯碼結(jié)果之間的一致性。這樣,處理器HP2可以核??刂破鱊FCC是否具有與秘密數(shù)據(jù)Kl相應(yīng)的 秘密數(shù)據(jù)K2,從而對控制器NFCC進(jìn)行認(rèn)證。如果主處理器HP2未認(rèn)證 控制器NFC,則其拒絕與后者通信。如果安置在NFC芯片組中的處理器HP2被新的主處理器替換,新的 主處理器就不會具有會話密鑰SK,因此也就不會與控制器NFCC通信, 除非與新主處理器對應(yīng)的組件CLC是可用的,并且除非已經(jīng)通過啟動NFC 芯片組的初始化而開始執(zhí)行以上參照圖5所述的認(rèn)證程序。組件NFCR2的軟件和硬件架構(gòu)的實例圖6表示圖4A至4C所示的組件NFCR2的硬件架構(gòu)的一個實例,組 件NFCR2包含一已經(jīng)說明的控制器NFCC和接口 CLINT,一存儲器陣列,包含ROM型(read-only memory,只讀存儲器)程 序存儲器MEM1, RAM型(random access memory,隨機(jī)存取存儲器)數(shù) 據(jù)存儲器MEM2、以及能記錄秘密數(shù)據(jù)K2和會話密鑰SK的EEPROM型 電可擦可編程存儲器MEM3,一認(rèn)證及糾錯電路AUTHCT,包含DES (Data Encryption Standard, 數(shù)據(jù)加密標(biāo)準(zhǔn))禾BECC (Elliptic Curve Cryptography,橢圓曲線加密)算 法,或其它加密算法,—UART (Universal Asynchronous Receiving Transmitting,通用異步 收發(fā))型連接端口INT1,主處理器HPl連接于此,一 IS07816型連接端口 INT2,主處理器HP2連接于此(這里假設(shè)處 理器HP2為SIM卡),—SWP型(Single Wire Protocol,單線連接協(xié)議)連接端口 INT3, 其可以連接主處理器HP3,_聯(lián)接存儲器陣列、控制器NFCC、接口 CLINT以及端口 INT1、 INT2、 INT3的數(shù)據(jù)總線DTB以及地址總線ADB,以及
一能使控制器NFCC控制讀取和/或?qū)懭胍约敖尤脒@些不同原件的控制總線CTB。接口 CLINT和端口 INT1、 INT2、 INT3各有一個并行輸入的輸入緩 沖器BUF1和并行輸出的輸出緩沖器BUF2,它們分別經(jīng)數(shù)據(jù)總線和地址 總線可寫入和可讀取。因而主處理器HP1、 HP2、 HP3與控制器NFCC或 接口 CLINT之間形成路由指令的數(shù)據(jù)交換或數(shù)據(jù)幀由緩沖器BUF1 、BUF2 大小的數(shù)據(jù)塊執(zhí)行,由控制器NFCC調(diào)整速率。圖7表示組件NFCR2以及主處理器HP1、 HP2的軟件架構(gòu)的一個實 例。該軟件架構(gòu)包含多個用于系統(tǒng)NFC組件和主處理器的從最低水平 (data link layer,數(shù)據(jù)鏈路層)到最高水平(application layer,應(yīng)用層) 的軟件層。圖7所示的這些軟件層與根據(jù)一實施例的NFC系統(tǒng)的真實軟 件構(gòu)架相比是經(jīng)過簡單化的,但是對那些希望以此公開的方式實施該實施 例的所屬技術(shù)領(lǐng)域的技術(shù)人員來說已經(jīng)足夠了 。每個主處理器HP1、 HP2包含至少四個軟件層,按水平升序排列—管理硬件元件運(yùn)行的最低水平層HWML (Hardware Management Layer,硬件管理層),其使主處理器與控制器NFCC能夠交換數(shù)據(jù)。其 例如是用于處理器HPl的UART接口的管理層和用于處理器HP2的 IS07816接口的管理層。一管理通信端口 INT1 、 INT2、 INT3協(xié)議的INTPL (Interface Protocol Layer,接口協(xié)議層)層。其例如是用于處理器HPl的UART協(xié)議的管理 層和用于處理器HP2的IS07816協(xié)議的管理層。根據(jù)一實施例管理HCI協(xié)議,即管理通信通路創(chuàng)建的HCIL層。 該層位于實際上對其通透的INTPL和HWML層之上。一管理例如圖2所示的RFID應(yīng)用(讀取芯片卡或電子標(biāo)簽、仿真芯 片卡、在"裝置一裝置"模式下與外部處理器對話以交換數(shù)據(jù)等等)的高水 平應(yīng)用層APL。該層可以包含多種應(yīng)用程序,這些程序各自為安全的或非 安全的(根據(jù)處理器的內(nèi)部資源),各自使用一種類型的協(xié)議和一種接口
CLINT的操作模式。因此,該高水平層位于實際上對其通透的HWML、 INTPL層和HCIL層之上。以實質(zhì)上類似的方式,控制器NFCC包含以下軟件層一與主處理器中的HWML和INTPL層類型相同的兩HWML1和 INTPL層。出于簡化圖表的原因,這些層表示在處理器NFCC中,但是, 實際上其位于端口INT1禾[UNT2中,其被認(rèn)為是控制器的一部分,總線 ADB、 DTB、 CTB同樣。實際上,這里UART和7816協(xié)議的處理在端口 INT1、 INT2中執(zhí)行,這使得其輸入和輸出緩沖器BUF1、 BUF2對控制器 來說經(jīng)總線ADB、 DTB、 CTB可以利用。一另一低水平層HWML2,其可使控制器通過將數(shù)據(jù)幀或指令分解 成與緩沖器大小相同的數(shù)據(jù)塊,經(jīng)總線ADB、DTB、CTB寫入緩沖器BUF1 及讀取緩沖器BUF2。一 HCI-ADMIN-L層或HCI協(xié)議管理層,其與作為路由管理器的主 處理器HP1 、 HP2的HCIL層對話。一 CLINTCL (Contactless Interface Control Layer,非接觸式接口控制 層)層,其管理接口 CLINT并向其指示其必須要投入的模式以及要用于 在非接觸式通信通路中發(fā)送數(shù)據(jù)的協(xié)議。該層還在非接觸式數(shù)據(jù)接收模式 下控制接口CLINT,并循環(huán)請求其執(zhí)行模式掃描(讀取模式、仿真模式以 及裝置模式),并在每個模式下搜索輸入數(shù)據(jù)。這就意味著,接口 CLINT 以規(guī)則的間隔發(fā)射磁場,輪流檢測任何會出現(xiàn)在其輪詢范圍內(nèi)的非接觸式 卡或標(biāo)簽(或其它以非接觸方式工作的便攜式目標(biāo))。接口 CLINT還將 其自身以規(guī)則的間隔投入收聽模式("仿真"模式),以檢測有源模式的讀 取器是否在發(fā)送輪詢訊息。一可選擇的APL層,其自身可以管理應(yīng)用,就像主處理器一樣。實 際上,雖然至此還未進(jìn)行說明,但是應(yīng)用還可以由NFC組件自身管理。最后,接口 CLINT包含以下軟件層
一在控制器NFCC —側(cè),與控制器NFCC的HWML2層相當(dāng)?shù)?HWML低水平層,通過總線ADB、 DTB、 CTB管理數(shù)據(jù)緩沖器BUF1、 BUF2?!菇涌?CLINT與HCI協(xié)議兼容的HCIL層(如上所述)?!谔炀€電路ACT—側(cè),控制或處理施加到天線電路ACT上或由 其接收的電信號的CLPTL (Contactless Protocol Layer,非接觸式協(xié)議層) 和MCL (Mode Control Layer,模式控制層)。所屬技術(shù)領(lǐng)域的技術(shù)人員應(yīng)該理解,不同的可選實施例也是可行的。 因此,NFC芯片組可以包含單獨的主處理器和NFC組件,其中應(yīng)用的執(zhí) 行受到控制。此外,也可以應(yīng)用除參照圖5所述的認(rèn)證程序之外的其它認(rèn)證程序。 其它程序也可以用于核校主處理器HP2和組件NFCR2具有通過預(yù)先設(shè)定 的關(guān)系鏈接的秘密數(shù)據(jù)。另外,秘密數(shù)據(jù)K2除了非接觸式鏈接之外,還可以通過其它方式傳 輸?shù)浇M件NFCR2。因此,秘密數(shù)據(jù)可以通過光學(xué)讀取光代碼(例如條形 碼)或通過鍵入傳輸,獲取的秘密數(shù)據(jù)K2顯示在卡上,SIM卡(主處理 器HP2)從該卡移除。然后,連接至圖像傳感器或鍵盤以及控制器NFCC 的主處理器將獲取的秘密數(shù)據(jù)K2傳輸至控制器NFC。在光代碼的情況下, 處理器HP1還將光代碼進(jìn)行轉(zhuǎn)換,以獲得秘密數(shù)據(jù)K2。這些可選實施例 特別適合目前具有鍵盤并且通常也具有圖像傳感器的移動電話的架構(gòu)。
權(quán)利要求
1.一種在NFC系統(tǒng)的安全主處理器和控制器之間認(rèn)證的方法,其中控制器連接至發(fā)送及接收非接觸式數(shù)據(jù)的NFC接口電路,該方法包含將主處理器連接至控制器的步驟,以及核校由主處理器存儲的第一秘密數(shù)據(jù)和由控制器存儲的第二秘密數(shù)據(jù)之間存在預(yù)先確定的關(guān)系的步驟,以及將第二秘密數(shù)據(jù)傳輸至控制器,并由控制器存儲第二秘密數(shù)據(jù)的先行步驟。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,控制器通過核校第一和 第二秘密數(shù)據(jù)之間的關(guān)系來認(rèn)證主處理器。
3. 根據(jù)權(quán)利要求1或2所述的方法,其特征在于,主處理器通過核校 第一和第二秘密數(shù)據(jù)之間的關(guān)系來認(rèn)證控制器。
4. 根據(jù)權(quán)利要求1和2中的一項所述的方法,其特征在于包含以下步 驟,即如果控制器對主處理器認(rèn)證成功,控制器就將會話密鑰傳輸至主處 理器,然后利用密鑰將主處理器和控制器之間的數(shù)據(jù)交換譯成密碼。
5. 根據(jù)權(quán)利要求1和2中的一項所述的方法,其特征在于包含以下步驟主處理器向控制器發(fā)送認(rèn)證請求, 控制器通過提供隨機(jī)數(shù)字應(yīng)答請求,主處理器利用其作為密鑰存儲的第一秘密數(shù)據(jù)通過加密函數(shù)將接收 的隨機(jī)數(shù)字譯成密碼,并將譯碼結(jié)果傳輸至控制器,以及控制器利用其作為密鑰存儲的第二秘密數(shù)據(jù)通過加密函數(shù)對接收的 譯碼結(jié)果進(jìn)行核校,如果核校執(zhí)行成功,則主處理器的認(rèn)證成功。
6. 根據(jù)權(quán)利要求1和2中的一項所述的方法,其特征在于,第一和第二秘密數(shù)據(jù)是相同的。
7. 根據(jù)權(quán)利要求1和2中的一項所述的方法,其特征在于,第一秘密 數(shù)據(jù)為公共密鑰,第二秘密數(shù)據(jù)為通過不對稱加密關(guān)系連至第一秘密數(shù)據(jù) 的個人密鑰。
8. 根據(jù)權(quán)利要求1和2中的一項所述的方法,其特征在于包含以下先行步驟提供以可移除的方式結(jié)合有非接觸式組件的主處理器,其中該非 接觸式組件保存要向控制器傳輸?shù)牡诙孛軘?shù)據(jù),以及將主處理器連接至 控制器,非接觸式組件將第二秘密數(shù)據(jù)傳輸至控制器。
9. 根據(jù)權(quán)利要求8所述的方法,其特征在于,主處理器為將要從卡上 移除的SIM卡集成電路,其集成了保存要向控制器非接觸式傳輸?shù)牡诙?密數(shù)據(jù)的非接觸式組件,NFC系統(tǒng)為包含另一連接至控制器的主處理器的 移動電話。
10. 根據(jù)權(quán)利要求1和2中的一項所述的方法,其特征在于,第二秘 密數(shù)據(jù)通過光讀取轉(zhuǎn)變并隨之傳輸至控制器的光代碼傳輸至控制器。
11. 根據(jù)權(quán)利要求1和2中的一項所述的方法,其特征在于,第二秘 密數(shù)據(jù)通過鍵入傳輸至控制器的秘密數(shù)據(jù)的值傳輸至控制器。
12. —種系統(tǒng),其包含連接至用于發(fā)送/接收NFC型非接觸式數(shù)據(jù)的 接口電路的控制器,以及用于將控制器連接至主處理器的裝置,該控制器 用于核校由主處理器存儲的第一秘密數(shù)據(jù)和由控制器存儲的第二秘密數(shù) 據(jù)之間存在預(yù)先確定的關(guān)系,并在系統(tǒng)初始化時用于接收及存儲第二秘密數(shù)據(jù)。
13. 根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,控制器用于通過核校 第一和第二秘密數(shù)據(jù)之間的關(guān)系來認(rèn)證主處理器。
14. 根據(jù)權(quán)利要求12或13所述的系統(tǒng),其特征在于,主處理器用于 通過核校第一和第二秘密數(shù)據(jù)之間的關(guān)系來認(rèn)證控制器。
15. 根據(jù)權(quán)利要求12和13中的一項所述的系統(tǒng),其特征在于,控制 器設(shè)置成如果控制器對主處理器認(rèn)證成功,就將會話密鑰傳輸至主處理 器,然后利用密鑰將主處理器和控制器之間的數(shù)據(jù)交換譯成密碼。
16. 根據(jù)權(quán)利要求12和13中的一項所述的系統(tǒng),其特征在于 主處理器用于向控制器發(fā)送認(rèn)證請求,控制器用于通過提供隨機(jī)數(shù)字應(yīng)答請求, 主處理器用于利用其作為密鑰存儲的第一秘密數(shù)據(jù)通過加密函數(shù)將 接收的隨機(jī)數(shù)字譯成密碼,并將譯碼結(jié)果傳輸至控制器,以及控制器用于利用其作為密鑰存儲的第二秘密數(shù)據(jù)通過加密函數(shù)對接 收的譯碼結(jié)果進(jìn)行核校,如果核校執(zhí)行成功,則主處理器的認(rèn)證成功。
17. 根據(jù)權(quán)利要求12和13中的一項所述的系統(tǒng),其特征在于,第一和第二秘密數(shù)據(jù)是相同的。
18. 根據(jù)權(quán)利要求12和13中的一項所述的系統(tǒng),其特征在于,第一 秘密數(shù)據(jù)為公鑰,第二秘密數(shù)據(jù)為通過不對稱加密關(guān)系連至第一秘密數(shù)據(jù) 的私鑰。
19. 根據(jù)權(quán)利要求12和13中的一項所述的系統(tǒng),其特征在于,主處 理器以可移除的方式結(jié)合有非接觸式組件,其中該非接觸式組件保存要向 控制器非接觸式傳輸?shù)牡诙孛軘?shù)據(jù)。
20. 根據(jù)權(quán)利要求19所述的系統(tǒng),其特征在于,主處理器為將要從智 能卡上移除的SIM卡集成電路,其集成了保存要向控制器非接觸式傳輸?shù)?第二秘密數(shù)據(jù)的非接觸式組件,NFC系統(tǒng)為包含另一連接至控制器的主處 理器的移動電話。
21. 根據(jù)權(quán)利要求12和13中的一項所述的系統(tǒng),其特征在于,第二 秘密數(shù)據(jù)通過光學(xué)讀取轉(zhuǎn)換并隨之傳輸至控制器的光代碼傳輸至控制器。
22. 根據(jù)權(quán)利要求12和13中的一項所述的系統(tǒng),其特征在于,第二 秘密數(shù)據(jù)通過鍵入傳輸至控制器的秘密數(shù)據(jù)的值傳輸至控制器。
23. —種智能卡,其包含能從智能卡上移除、并集成了保存第一秘密數(shù)據(jù)的安全處理器的集成 電路卡,以及耦接到發(fā)送及接收非接觸式數(shù)據(jù)的NFC接口電路的非接觸式組件, 其還保存要非接觸式傳輸?shù)牡诙孛軘?shù)據(jù),第二秘密數(shù)據(jù)通過預(yù)先確定的 關(guān)系連至第一秘密數(shù)據(jù)。
24. 根據(jù)權(quán)利要求23所述的智能卡,其特征在于,安全處理器用于通 過核校第一和第二秘密數(shù)據(jù)之間的關(guān)系來認(rèn)證控制器。
25. 根據(jù)權(quán)利要求23或24所述的智能卡,其特征在于,安全處理器設(shè)置成,如果其被控制器認(rèn)證成功,就接收會話密鑰,然后利用密鑰將主 處理器和控制器之間的數(shù)據(jù)交換譯成密碼。
26. 根據(jù)權(quán)利要求23和24中的一項所述的智能卡,其特征在于,安 全處理器用于向控制器發(fā)送認(rèn)證請求,接收隨機(jī)數(shù)字,利用作為密鑰的第一秘密數(shù)據(jù)通過加密函數(shù)將接收的隨機(jī)數(shù)字譯成 密碼,并傳輸譯碼結(jié)果。
27. 根據(jù)權(quán)利要求23和24中的一項所述的智能卡,其特征在于,第 一和第二秘密數(shù)據(jù)是相同的。
28. 根據(jù)權(quán)利要求23和24中的一項所述的智能卡,其特征在于,第 一秘密數(shù)據(jù)為公鑰,第二秘密數(shù)據(jù)為通過不對稱加密關(guān)系連至第一秘密數(shù) 據(jù)的私鑰。
全文摘要
一種在NFC系統(tǒng)的安全主處理器和控制器之間認(rèn)證的方法,其中控制器裝有發(fā)送及接收非接觸式數(shù)據(jù)的NFC接口電路,該方法包含將主處理器連接至控制器的步驟,以及核校由主處理器存儲的第一秘密數(shù)據(jù)和由控制器存儲的第二秘密數(shù)據(jù)之間存在預(yù)先確定的關(guān)系的步驟。該方法還包含將第二秘密數(shù)據(jù)傳輸至控制器,并由控制器存儲第二秘密數(shù)據(jù)的先行步驟。主處理器可以以可移除的方式結(jié)合有非接觸式組件,該非接觸式組件保存非接觸式傳輸至控制器的第二秘密數(shù)據(jù)。
文檔編號G06K7/00GK101159008SQ20071016412
公開日2008年4月9日 申請日期2007年9月29日 優(yōu)先權(quán)日2006年10月5日
發(fā)明者布魯諾·查拉, 菲利浦·馬丁那伍 申請人:英賽康特雷斯公司