專利名稱:用于電子設(shè)備的附件認(rèn)證的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電子設(shè)備,并且更具體地涉及接收附件設(shè)備的電子設(shè) 備,諸如媒體播放器。
背景技術(shù):
媒體播放器存儲可以在媒體播放器上顯示或播放的媒體資產(chǎn),諸
如音頻軌跡或相片。媒體播放器的一個例子是可從Cupertino, CA的 Apple Computer公司得到的iPod⑧媒體播放器。通常媒體播放器從主 計算機獲得其媒體資產(chǎn),主計算機起使得用戶能夠管理媒體資產(chǎn)的作 用。作為例子,主計算機可以執(zhí)行媒體管理應(yīng)用以便管理媒體資產(chǎn)。 媒體管理應(yīng)用的一個例子是Apple Computer z〉司出品的iTunes⑧。
媒體播放器典型地包括一個或多個可以用作與該媒體播放器間 的接口的連接器或端口。例如,連接器或端口使得媒體播放器能夠耦 合到主計算機,插入對接系統(tǒng)或接收附件設(shè)備。當(dāng)前有可以互連到媒 體播放器的許多不同類型的附件設(shè)備。例如,可以將遠(yuǎn)程控制器連接 到連接器或端口,以便允許用戶遠(yuǎn)程地控制媒體播放器。作為另一個 例子,汽車可以包括連接器,并且可以將媒體播放器插入該連接器, 從而汽車的媒體系統(tǒng)可以與該媒體播放器交互,從而允許在汽車內(nèi)播 放該媒體播放器上的媒體內(nèi)容。
當(dāng)前,只要使用兼容的連接器或端口,媒體播放器的連接器或端 口通常是自由使用的。因此,許多第三方已經(jīng)開發(fā)了用于其他制造商 的媒體播放器的附件設(shè)備。 一個困難在于媒體播放器的制造商不能控 制可以被連接到媒體播放器的各種不同的附件設(shè)備。這是成問題的, 因為第三方附件設(shè)備可能是劣質(zhì)的、易于出錯的、有破壞性的(例如, 資源泄露)、或甚至對媒體播放器本身是有損害的。另一個問題是未
經(jīng)媒體播放器的制造商授權(quán)的第三方附件設(shè)備可能會試圖以不適當(dāng)或 不希望的方式使用媒體播放器的特征。
因此,需要改進(jìn)的技術(shù),使得電子設(shè)備的制造商能夠控制可以與 他們的電子設(shè)備一起使用的附件設(shè)備的性質(zhì)和程度。
發(fā)明內(nèi)容
廣泛地講,本發(fā)明關(guān)于控制將附件設(shè)備用于電子設(shè)備的改進(jìn)的技 術(shù)。該改進(jìn)的技術(shù)可以使用密碼方法認(rèn)證電子設(shè)備,即,彼此互連和 通信的電子設(shè)備。
本發(fā)明的一個方面關(guān)于用于認(rèn)證電子設(shè)備(諸如附件設(shè)備)的技 術(shù)。本發(fā)明的另一個方面關(guān)于由或為電子設(shè)備(諸如主機設(shè)備)提供 軟件特征(例如,功能)。可以,例如,根據(jù)認(rèn)證的不同程度或等級
或根據(jù)制造商或產(chǎn)品不同地提供不同的電子設(shè)備。本發(fā)明的另 一個方
面關(guān)于使用附件(或適配器)將外部設(shè)備(例如,USBi殳備)轉(zhuǎn)換為 主機設(shè)備(例如,USB主機)。本發(fā)明的實施例可以與此處乂>開的這 些方面或其它方面中的一個或多個有關(guān)。
可以用各種方式實現(xiàn)本發(fā)明,包括作為方法、系統(tǒng)、設(shè)備、裝置 (包括圖形用戶接口 )或計算機可讀介質(zhì)來實現(xiàn)本發(fā)明。下面描述本 發(fā)明的若干實施例。
作為便攜電子設(shè)備,本發(fā)明的一個實施例至少包括媒體存儲設(shè) 備,其存儲一個或多個媒體項目的媒體內(nèi)容;媒體呈現(xiàn)模塊,其從媒
體存儲設(shè)備中檢索至少一個所述媒體項目的媒體內(nèi)容,并且使得為便 攜電子設(shè)備的用戶呈現(xiàn)該媒體內(nèi)容;認(rèn)證表,其存儲被授權(quán)耦合到便 攜電子設(shè)備并與便攜電子設(shè)備交互的各種附件設(shè)備的認(rèn)證信息;和認(rèn) 證模塊,其基于存儲在認(rèn)證表內(nèi)的認(rèn)證信息的至少一部分,確定是否 授權(quán)耦合到便攜電子設(shè)備的特定附件設(shè)備與便攜電子設(shè)備互操作。
作為用于便攜電子設(shè)備的附件設(shè)備,本發(fā)明的一個實施例至少包 括與便攜電子設(shè)備交互的輸入/輸出端口;認(rèn)證算法;與附件設(shè)備相 關(guān)聯(lián)的認(rèn)證密鑰;用于至少使用該認(rèn)證算法和認(rèn)證密鑰執(zhí)行認(rèn)證操作
的操作上連接到輸入/輸出端口的認(rèn)證控制器;執(zhí)行與附件設(shè)備相關(guān)聯(lián) 的操作的附件電路。
作為用于將附件設(shè)備連接到媒體播放器的連接器,本發(fā)明的一個 實施例至少包括連接器主體;附在連接器主體內(nèi)并且用于提供附件 設(shè)備和媒體播放器間的電連接的多個電觸點;和布置在連接器主體內(nèi) 并且提供允許附件設(shè)備被媒體播放器認(rèn)證的認(rèn)證密鑰的控制器。
作為授權(quán)將附件設(shè)備用于電子設(shè)備的方法,本發(fā)明的一個實施例 至少包括下列活動從附件設(shè)備接收設(shè)備標(biāo)識符;從附件設(shè)備接收認(rèn) 證值;基于認(rèn)證值確定附件設(shè)備是否可信;和當(dāng)確定附件設(shè)備可信時, 授權(quán)將附件設(shè)備用于電子設(shè)備。
作為授權(quán)將附件設(shè)備用于電子設(shè)備的方法,本發(fā)明的另一個實施 例至少包括下列活動檢測附件設(shè)備附接到電子設(shè)備;在檢測到附件 設(shè)備的附接后,向附件設(shè)備發(fā)送隨機數(shù);隨后從附件設(shè)備接收編碼值; 從附件設(shè)備接收設(shè)備標(biāo)識符;基于設(shè)備標(biāo)識符獲得密碼密鑰;使用該 密碼密鑰對編碼值解碼以便產(chǎn)生解碼值;確定該解碼值是否相應(yīng)于該 隨機數(shù);和當(dāng)確定解碼值相應(yīng)于該隨機數(shù)時,授權(quán)將附件設(shè)備用于電 子設(shè)備。
作為用于授權(quán)將附件設(shè)備用于電子設(shè)備的方法,本發(fā)明的另一個 實施例至少包括下列活動檢測附件設(shè)備附接到電子設(shè)備;在檢測到 附件設(shè)備的附接后,向附件設(shè)備發(fā)送至少包括一個隨機數(shù)的認(rèn)證請求; 隨后接收來自附件設(shè)備的認(rèn)證響應(yīng),該認(rèn)證響應(yīng)是對認(rèn)證請求的響應(yīng), 并且該認(rèn)證響應(yīng)至少包括附件設(shè)備的編碼值和設(shè)備標(biāo)識符;基于設(shè)備 標(biāo)識符獲得密碼密鑰;使用該密碼密鑰對該編碼值解碼以便產(chǎn)生解碼 值;和基于解碼值和隨機數(shù)間的相應(yīng)關(guān)系,授權(quán)將附件設(shè)備用于電子 設(shè)備。
作為用于授權(quán)將附件設(shè)備用于電子設(shè)備的方法,本發(fā)明的另一個 實施例至少包括下列活動從電子設(shè)備接收隨機數(shù);使用在附件設(shè)備 內(nèi)提供的密碼密鑰對隨機數(shù)編碼,從而產(chǎn)生編碼值;和向電子設(shè)備發(fā) 送編碼值和設(shè)備標(biāo)識符。作為控制媒體播放器和附件設(shè)備間的交互的方法,本發(fā)明的一個
實施例至少包括下列活動確定附件設(shè)備的分類;識別附件設(shè)備的授 權(quán)等級;和基于附件設(shè)備的分類和授權(quán)等級,選擇性地激活可以結(jié)合 該附件設(shè)備使用的媒體設(shè)備的特征。
作為媒體播放器系統(tǒng),本發(fā)明的一個實施例至少包括存儲媒體 內(nèi)容和支持多個預(yù)定功能的媒體播放器,以及能夠連接到媒體播放器 的附件設(shè)備。媒體播放器與附件設(shè)備交互,以便執(zhí)行認(rèn)證處理,并且 基于該認(rèn)證處理,選擇性地激活媒體播放器的特定功能,從而可以由 附件設(shè)備使用。
從下面結(jié)合以示例方式說明本發(fā)明的原理的附圖進(jìn)行的詳細(xì)描 述中,可以明了本發(fā)明的其他方面和優(yōu)點。
易于結(jié)合附圖從下面的詳細(xì)描述中理解本發(fā)明,其中相同的標(biāo)號 指代相同的結(jié)構(gòu)元件,并且其中
圖1A是根據(jù)本發(fā)明的一個實施例的附件認(rèn)證系統(tǒng)的方框圖; 圖1B是根據(jù)本發(fā)明的另 一個實施例的附件認(rèn)證系統(tǒng)的方框圖; 圖1C是根據(jù)本發(fā)明的另 一個實施例的附件認(rèn)證系統(tǒng)的方框圖; 圖2A是根據(jù)本發(fā)明的一個實施例的認(rèn)證控制器的方框圖; 圖2B是根據(jù)本發(fā)明的一個實施例的認(rèn)證管理器的方框圖; 圖3是根據(jù)本發(fā)明的一個實施例的認(rèn)證設(shè)備的方框圖; 圖4A是根據(jù)本發(fā)明的一個實施例的主機認(rèn)證處理的流程圖; 圖4B是根據(jù)本發(fā)明的一個實施例的附件認(rèn)證處理的流程圖; 圖5A和5B是根據(jù)本發(fā)明的一個實施例的主機設(shè)備處理的流程
圖6A和6B是根據(jù)本發(fā)明的一個實施例的附件設(shè)備處理的流程
圖6C是根據(jù)本發(fā)明的一個實施例的授權(quán)表的圖7A和7B是根據(jù)本發(fā)明的一個實施例的附件設(shè)備處理的流程
圖8A-8C是根據(jù)本發(fā)明的一個實施例的主機設(shè)備處理的流程
圖9A-9C是根據(jù)本發(fā)明的一個實施例的附件設(shè)備處理的流程
圖10A和10B是根據(jù)本發(fā)明的一個實施例的主機設(shè)備處理的流
程圖ll是根據(jù)本發(fā)明的一個實施例的媒體管理系統(tǒng)的方框圖; 圖12是根據(jù)本發(fā)明的一個實施例的媒體播放器的方框圖。
具體實施例方式
本發(fā)明關(guān)于控制將附件設(shè)備用于電子設(shè)備的改進(jìn)的技術(shù)。該改進(jìn) 的技術(shù)可以使用密碼方法認(rèn)證電子設(shè)備,即,彼此互連和通信的電子 設(shè)備。
該改進(jìn)的技術(shù)特別適用于可以接收附件設(shè)備的電子設(shè)備,諸如媒 體設(shè)備。媒體設(shè)備的一個例子是可以呈現(xiàn)(例如,播放)媒體項目(或 媒體資產(chǎn))的媒體播放器,諸如手持媒體播放器(例如,音樂播放器)。 媒體設(shè)備的附件的例子包括錄音機、FM收發(fā)機、外圍總線設(shè)備(例 如,F(xiàn)ireWire⑧或USB設(shè)備)、媒體設(shè)備(例如,媒體閱讀器、顯示 器、照相機等),電源(例如,電源適配器、電池包等),揚聲器(耳 機或揚聲器系統(tǒng)),遠(yuǎn)程控制設(shè)備,網(wǎng)絡(luò)設(shè)備或汽車集成單元。
本發(fā)明的一個方面關(guān)于用于認(rèn)證電子設(shè)備諸如附件設(shè)備的技術(shù)。 本發(fā)明的另一個方面關(guān)于由或為電子設(shè)備(例如,主機設(shè)備)提供軟 件特征(例如,功能)??梢?,例如,根據(jù)認(rèn)證的不同程度或等級或 根據(jù)制造商或產(chǎn)品不同地提供不同的電子設(shè)備。本發(fā)明的另 一個方面 關(guān)于使用附件(或適配器)將外圍設(shè)備(例如,USB設(shè)備)轉(zhuǎn)換為主 機設(shè)備(例如,USB主機)。本發(fā)明的實施例可以與此處/>開的這些 方面或其它方面中的一個或多個有關(guān)。
下面參考圖l-12討論本發(fā)明的實施例。然而,本領(lǐng)域的技術(shù)人
員易于理解,此處針對這些圖給出的詳細(xì)描述是出于示例的目的,因 為本發(fā)明延及這些有限的實施例之外。
圖1A是根據(jù)本發(fā)明的附件認(rèn)證系統(tǒng)100的方框圖。附件認(rèn)證系 統(tǒng)100包括移動計算設(shè)備102。移動計算設(shè)備102還可以稱為主機設(shè) 備。另外,移動計算設(shè)備102可以例如屬于媒體播放器、個人數(shù)字助 理或移動電話。移動計算設(shè)備102包括用于接收連接器的連接器端口 104。
附件認(rèn)證系統(tǒng)100還包括具有連接器108和連接器端口 110的認(rèn) 證設(shè)備106。認(rèn)證設(shè)備106可以附于移動計算設(shè)備102。具體地,當(dāng)將 認(rèn)證設(shè)備106附于移動計算設(shè)備102時,由移動計算設(shè)備102的連接 器端口 104接收認(rèn)證設(shè)備106的連接器108。當(dāng)將連接器108耦合到 連接器端口 104內(nèi)時,認(rèn)證設(shè)備106物理地和電子地連接到移動計算 設(shè)備102。
附件認(rèn)證系統(tǒng)100還包括附件設(shè)備112。當(dāng)附件設(shè)備112通過認(rèn) 證設(shè)備106與移動計算設(shè)備102互連時,附件設(shè)備112給移動計算設(shè) 備102提供某些功能。為了便于這種互連,附件設(shè)備112包括連接器 114和電纜116。電纜116將連接器114連接到附件設(shè)備112??梢詫?連接器114耦合到認(rèn)證設(shè)備106的連接器端口 110。當(dāng)進(jìn)行這種連接 時,附件設(shè)備112通過認(rèn)證設(shè)備106與移動計算設(shè)備102進(jìn)行電子通 信。
雖然附件認(rèn)證系統(tǒng)IOO包括連接器114和電纜116的端部,可以 將連接器114集成在附件設(shè)備112內(nèi)。換言之,在另一個實施例中, 不需要電纜116。
根據(jù)本發(fā)明的一個方面,認(rèn)證設(shè)備106起向移動計算i殳備102認(rèn) 證其自身的作用。認(rèn)為授權(quán)認(rèn)證的設(shè)備與移動計算設(shè)備102交互。另 外, 一旦被授權(quán),就可以控制認(rèn)證的設(shè)備106 (或附件設(shè)備102 )和移 動計算設(shè)備102之間的交互性質(zhì)和程度。因此, 一旦被授權(quán),移動計 算設(shè)備102可以認(rèn)為認(rèn)證設(shè)備106是可信任的合作方,允許其訪問移 動計算設(shè)備102的功能、特征或操作。在另一方面,如果移動計算設(shè)
備102確定認(rèn)證設(shè)備106不與可信任的合作方相關(guān)聯(lián),則移動計算設(shè) 備102可以阻止或限制與認(rèn)證設(shè)備106或附件設(shè)備112的交互。認(rèn)證 設(shè)備106本身可以被認(rèn)為是移動計算設(shè)備102的附件設(shè)備。
在一個實施例中,認(rèn)證設(shè)備106起總線接口適配器諸如USB或 FireWire⑧適配器的作用。在這種實施例中,認(rèn)證設(shè)備106起使得移 動計算設(shè)備102與總線主機設(shè)備(例如,USB或FireWire⑧主機)匹 配的作用。附件設(shè)備112有利地僅需作為總線外圍設(shè)備(例如,USB 或FireWire⑧設(shè)備)操作。
圖1B是根據(jù)本發(fā)明的另一個實施例的附件認(rèn)證系統(tǒng)150的方框 圖。附件認(rèn)證系統(tǒng)150包括具有連接器端口 154的移動計算設(shè)備152。 移動計算設(shè)備152還可以稱為主機設(shè)備。另外,移動計算設(shè)備152可 以例如屬于媒體播放器、個人數(shù)字助理或移動電話。
附件認(rèn)證系統(tǒng)150還包括附件設(shè)備156。附件設(shè)備156包括連接 器158和認(rèn)證設(shè)備160。在該實施例中,認(rèn)證設(shè)備160內(nèi)置于附件設(shè) 備156。可以通過將連接器158插入連接器端口 154,將附件設(shè)備156 耦合到移動計算設(shè)備152。 一旦建立這種連接,附件設(shè)備156被電子 地連接到移動計算設(shè)備152。然而,移動計算設(shè)備152可以與認(rèn)證設(shè) 備160交互,以便使得移動計算設(shè)備152能夠認(rèn)證附件設(shè)備156。當(dāng) 被認(rèn)證時,認(rèn)為授權(quán)附件設(shè)備156與移動計算設(shè)備152交互。 一旦被 授權(quán),就可以控制附件設(shè)備156和移動計算設(shè)備152之間的交互性質(zhì) 和程度。因此, 一旦被授權(quán),移動計算設(shè)備152可以認(rèn)為附件156是 可信任的合作方(或與可信任的合作方相關(guān)聯(lián)),允許其訪問移動計 算設(shè)備152的功能、特征或操作。在另一方面,如果移動計算設(shè)備152 確定附件設(shè)備156不是可信任的合作方(或不與可信任的合作方相關(guān) 聯(lián)),則移動計算設(shè)備152可以阻止或限制與附件設(shè)備156的交互。
圖1C是根據(jù)本發(fā)明的另一個實施例的附件認(rèn)證系統(tǒng)170的方框 圖。附件認(rèn)證系統(tǒng)170包括具有連接器端口 174的移動計算設(shè)備172。 移動計算設(shè)備172還可以稱為主機設(shè)備.移動計算設(shè)備172可以例如 屬于媒體播放器、個人數(shù)字助理或移動電話。附件認(rèn)證系統(tǒng)170還包
括附件設(shè)備176。附件設(shè)備176包括連接器178和認(rèn)證設(shè)備180。在該 實施例中,認(rèn)證設(shè)備180耦合到連接器178或與連接器178集成在一 起。認(rèn)證設(shè)備可以相對較小,并且從而耦合到連接器178或與連接器 178集成在一起。通過在連接器178內(nèi)提供認(rèn)證設(shè)備180,可以容易地 制造提供認(rèn)證功能的附件設(shè)備。
可以通過將連接器178插入連接器端口 174,將附件設(shè)備176耦 合到移動計算設(shè)備172。 一旦建立這種連接,附件設(shè)備176被電子地 連接到移動計算設(shè)備172。然而,移動計算設(shè)備172可以與認(rèn)證設(shè)備 180交互,以便使得移動計算設(shè)備172能夠認(rèn)證附件設(shè)備176。當(dāng)被認(rèn) 證時,認(rèn)為授權(quán)附件設(shè)備176與移動計算設(shè)備172交互。 一旦被授權(quán), 就可以控制附件設(shè)備176和移動計算設(shè)備172之間的交互性質(zhì)和程度。 因此, 一旦被授權(quán),移動計算設(shè)備172可以認(rèn)為附件176是可信任的 合作方(或與可信任的合作方相關(guān)聯(lián)),允許其訪問移動計算設(shè)備172 的功能、特征或操作。在另一方面,如果移動計算設(shè)備172確定附件 設(shè)備176不是可信任的合作方(或不與可信任的合作方相關(guān)聯(lián)),則 移動計算設(shè)備172可以阻止或限制與附件設(shè)備172的交互。
另外,雖然圖1A-1C涉及用于為移動計算設(shè)備認(rèn)證附件設(shè)備的 認(rèn)證設(shè)備,應(yīng)當(dāng)理解這種認(rèn)證設(shè)備可替換地可以用于為附件設(shè)備認(rèn)證 移動計算設(shè)備。在任何情況下,以安全的方式諸如使用密碼技術(shù)進(jìn)行 要執(zhí)行的認(rèn)證。密碼技術(shù)不僅主要起防止使用偽造的附件設(shè)備的作用, 而且使得"進(jìn)行哄騙(spoofing),,的機會減少了。在一個實施例中, 密碼技術(shù)使用公-私密鑰組形成有效的數(shù)字簽名.
圖2A是根據(jù)本發(fā)明的一個實施例的認(rèn)證控制器200的方框圖。 認(rèn)證控制器200包括處理器202、隨機訪問存儲器(RAM) 204、和 只讀存儲器(ROM) 206。 ROM206包括私鑰208和認(rèn)證算法210。 認(rèn)證控制器200還接收電源線212和通信總線(鏈路)214。例如,可 以由認(rèn)證控制器200的連接器,諸如,圖1A中所示的連接器108、圖 1B中所示的連接器158或圖1C中所示的連接器H8提供電源線212 和通信總線214。
處理器202典型地與移動計算設(shè)備交互(通過通信總線214), 以便認(rèn)證附件設(shè)備(或認(rèn)證設(shè)備)。在認(rèn)證過程中,處理器202使用 存儲在i^證控制器200內(nèi)的認(rèn)證算法210和私鑰208。認(rèn)證算法210 可以隨不同的實現(xiàn)而改變,并且適合的認(rèn)證算法是本領(lǐng)域的技術(shù)人員 已知的。
雖然圖2A中未示出,認(rèn)證控制器200或包括或利用認(rèn)證控制器 200的認(rèn)證設(shè)備或附件設(shè)備還可以包括設(shè)備標(biāo)識符和附加電路。^殳備 標(biāo)識符可以例如屬于產(chǎn)品標(biāo)識符和/或制造商標(biāo)識符。附加電路可以隨 實現(xiàn)而改變。當(dāng)附加電路在附件設(shè)備內(nèi)時,附加電路可以稱為附件電 路。
在一個實施例中,在單個集成電路(即,單個芯片)上實現(xiàn)認(rèn)證 控制器200。通過在單個集成電路上提供認(rèn)證控制器200,可以大體上 避免對私鑰208和認(rèn)證算法210的外部訪問。結(jié)果,認(rèn)證處理不僅在 密碼學(xué)上是安全的,而且由于受限的物理訪問還是物理安全的。
圖2B是根據(jù)本發(fā)明的一個實施例的認(rèn)證管理器250的方框圖。 認(rèn)證管理器250例如被提供在電子設(shè)備內(nèi),諸如圖1A中所示的移動 計算設(shè)備102、圖1B中所示的移動計算設(shè)備152或圖1C中所示的移 動計算設(shè)備172。在該實施例中,電子設(shè)備的認(rèn)證管理器250認(rèn)證附 件設(shè)備(或認(rèn)證設(shè)備)。
i人證管理器250包括認(rèn)證模塊252、授權(quán)表254和端口接口 256。 認(rèn)證模塊252操作以便評耦合接到端口接口 256的特定附件設(shè)備(或 認(rèn)證設(shè)備)是否是可信的,并且從而允許與該電子設(shè)備互操作。端口 接口 256可以給附件設(shè)備(或認(rèn)證設(shè)備)提供電源和通信總線258。 授權(quán)表254存儲由認(rèn)證模塊252使用以便評估某個附件設(shè)備(或認(rèn)證 設(shè)備)是否可信的認(rèn)證信息。如前所述,認(rèn)證管理器250被提供在可 被稱為主機設(shè)備的電子設(shè)備內(nèi)。
電子設(shè)備(或主機設(shè)備)典型地具有可以調(diào)用或利用的各種操作 特征。在一個實施例中,由認(rèn)證管理器250認(rèn)證的附件設(shè)備可以完全 訪問電子設(shè)備(或主機設(shè)備)上的所有可用特征。在另一個實施例中,授權(quán)表254可以控制電子設(shè)備或主機設(shè)備的特征對附件設(shè)備可用的方 式。作為一個例子,如果電子設(shè)備(或主機設(shè)備)提供可以利用的多 個不同特征,授權(quán)表254可以包含關(guān)于允許特定附件設(shè)備利用這些可 用特征中的哪一些的指示。例如,可以給授權(quán)分級或分類,它們中的 每一個具有不同的授權(quán)。授權(quán)還可以指明不同特征被授權(quán)使用的方式。 因此,以受限的方式授權(quán)使用特征。例如,授權(quán)在與電子設(shè)備間的慢 的通信接口 (例如,串行)上使用一個特征,并且不授權(quán)在與電子設(shè) 備間的快的通信接口 (例如,F(xiàn)ireWire⑧或USB)上使用。換言之, 在該例子中,僅授權(quán)在某些接口機構(gòu)上使用這些特征。
圖3是根據(jù)本發(fā)明的一個實施例的認(rèn)證設(shè)備300的方框圖。在該 實施例中,認(rèn)證設(shè)備300不僅包含用于其自身或耦合到其上的附件設(shè) 備的認(rèn)證的電路,而且包含用于由認(rèn)證設(shè)備300提供其他功能的附加 電路。具體地,認(rèn)證設(shè)備300設(shè)計為耦合到電子設(shè)備并且連接到附件 設(shè)備。如圖3中所示,認(rèn)證設(shè)備300包括包含存儲器304的控制器302。 作為例子,控制器302可以屬于圖2A中所示的認(rèn)證控制器200??刂?器302可以耦合到端口連接器306,端口連接器306又可以連接到電 子設(shè)備。端口連接器306可以通過電源線(Pin)從電子設(shè)備給控制器 302和升壓轉(zhuǎn)換器308提供電能。另外,控制器302可以借助于傳輸 和接收通信線(TX, RX)通過端口連接器306與電子設(shè)備通信。通 過這種通信,電子設(shè)備可以確定認(rèn)證設(shè)備300是否被授權(quán)與用于該電 子設(shè)備。如果電子設(shè)備確定認(rèn)證設(shè)備300被授權(quán)了,則控制器302可 以使用使能信數(shù)(EN)使能升壓轉(zhuǎn)換器208。 一旦被使能,在來自端 口連接器306的電源線(Pin )上接收輸入電壓的升壓轉(zhuǎn)換器308可以 在到USB連接器310的電源線(Pout)上輸出升壓輸出電壓。例如, 輸入電壓可以是3.3V并且升壓輸出電壓可以是5.0V。USB連接器310 還接收來自端口連接器306的一對差分?jǐn)?shù)據(jù)線(D+, D-),以便允 許電子設(shè)備和可以耦合到USB連接器310的附件設(shè)備間的數(shù)據(jù)傳輸。
在該實施例中,認(rèn)證設(shè)備300可以操作以便將電子設(shè)備轉(zhuǎn)換為主 機設(shè)備,諸如USB主機。典型地,電子設(shè)備是USB設(shè)備,而不是主
機設(shè)備,但是認(rèn)證設(shè)備300到電子設(shè)備的附加可以將電子設(shè)備轉(zhuǎn)換為 主機設(shè)備。主機設(shè)備可以是USB兼容的,從而可以將任何USB設(shè)備 連接到USB連接器310。在該情況下,可以通過認(rèn)證設(shè)備300將帶有 USB端口的任何附件連接到該電子設(shè)備。
可以使用本發(fā)明采用的認(rèn)證技術(shù),以便允許主機設(shè)備認(rèn)證附件設(shè) 備,或可以允許附件設(shè)備認(rèn)證主機設(shè)備。在認(rèn)證設(shè)備和主機設(shè)備之間 的耦合期間,可以在任何時刻啟動主機設(shè)備和附件設(shè)備間的認(rèn)證處理。 例如,可以在將附件設(shè)備連接到主機設(shè)備時、在第一次使用受限制的 特征時或周期地啟動認(rèn)證處理。
圖4A是根據(jù)本發(fā)明的一個實施例的認(rèn)證處理400的流程圖。由 例如主機設(shè)備執(zhí)行主機認(rèn)證處理400。
主機認(rèn)證處理400最初接收402與將要認(rèn)證的附件設(shè)備相關(guān)聯(lián)的 設(shè)備標(biāo)識符。另外,從附件設(shè)備接收404認(rèn)證值。此處,主機設(shè)備執(zhí) 行認(rèn)證處理;因此,附件設(shè)備將認(rèn)證值提供給主機設(shè)備。在一個實施 例中,在確定認(rèn)證值時,附件設(shè)備利用隨機數(shù)和私鑰??梢杂芍鳈C設(shè) 備將隨機數(shù)提供給附件設(shè)備,或可以從附件設(shè)備得到隨機數(shù)。
接著,主機認(rèn)證處理400基于認(rèn)證值和設(shè)備標(biāo)識符確定406附件 設(shè)備是否可信。然后判斷408基于在方框406做出的確定,確定附件 設(shè)備是否可信。當(dāng)判斷408確定附件設(shè)備已被確定為是可信的,則授 權(quán)410將附件設(shè)備用于主機設(shè)備。授權(quán)410使用的性質(zhì)可以根據(jù)實現(xiàn) 改變。例如,授權(quán)410的使用可以允許對附件設(shè)備的完全使用,或可 以允許附件設(shè)備的受限的使用。
在另一方面,當(dāng)判斷408確定附件設(shè)備不可信時,則旁路方框410 從而不授權(quán)將附件設(shè)備用于主機設(shè)備。在該情況下,由于附件設(shè)備未 被確定為是可信的,大體上限制或阻止將附件設(shè)備用于主機設(shè)備。在 方框410或旁路方框410之后,主機認(rèn)證處理400完成并且結(jié)束。
圖4B是根據(jù)本發(fā)明的一個實施例的附件認(rèn)證處理的流程圖。由 例如附件設(shè)備執(zhí)行附件認(rèn)證處理450。
附件認(rèn)證處理450向主機設(shè)備發(fā)送452與附件設(shè)備相關(guān)聯(lián)的私鑰
標(biāo)識符。主機設(shè)備使用私鑰標(biāo)識符獲得適當(dāng)?shù)乃借€,在產(chǎn)生發(fā)送給附 件設(shè)備的認(rèn)證值時主機設(shè)備使用該私鑰。附件設(shè)備從主機設(shè)備接收
454認(rèn)證值。
接著,附件認(rèn)證處理450基于認(rèn)證值和>^鑰確定456主機設(shè)備是 否可信。典型地,公鑰被在內(nèi)部提供給附件設(shè)備。然后判斷458確定 主機設(shè)備是否被確定為可信。當(dāng)判斷458確定主機設(shè)備已被認(rèn)為可信 時,則授權(quán)460將主機設(shè)備用于附件設(shè)備。授權(quán)460使用的性質(zhì)可以 根據(jù)實現(xiàn)改變。例如,授權(quán)460的使用可以允許對主機設(shè)備的完全使 用,或可以允許主機設(shè)備的受限的使用。
在另一方面,當(dāng)判斷458確定主機設(shè)備不可信時,則旁路方4匡 460,從而大體上限制或阻止將主機設(shè)備用于附件設(shè)備。在方框460 或旁路方框460之后,附件認(rèn)證處理450完成并且結(jié)束。
圖5A和5B是根據(jù)本發(fā)明的一個實施例的主機設(shè)備處理500的 流程圖。由電子設(shè)備,諸如,圖1A中所示的移動計算設(shè)備152、圖 1B中所示的移動計算設(shè)備152或移動計算設(shè)備172執(zhí)行主機設(shè)備處理 500。
主機設(shè)備處理500以判斷502開始,判斷502確定是否從附件i更 備接收到認(rèn)證信息。當(dāng)判斷502確定未接收到認(rèn)證信息時,主機設(shè)備 處理500等待對認(rèn)證信息的接收。 一旦判斷502確定已經(jīng)在主機設(shè)備 處接收到認(rèn)證信息,則主機設(shè)備處理500繼續(xù)。即,在主機設(shè)備處產(chǎn) 生504隨機數(shù)。典型地,在主機設(shè)備處隨機地產(chǎn)生504隨機數(shù),諸如 使用隨機數(shù)產(chǎn)生器。接著,將認(rèn)證請求發(fā)送506到附件設(shè)備。此處, 認(rèn)證請求至少包括隨機數(shù)。
然后判斷508確定是否從附件設(shè)備接收到認(rèn)證響應(yīng).當(dāng)判斷508 確定仍未接收到認(rèn)證響應(yīng)時,則主機設(shè)備處理500等待對這種認(rèn)證響 應(yīng)的接收。 一旦判斷508確定已經(jīng)接收到認(rèn)證響應(yīng),從認(rèn)證響應(yīng)中提 取510編碼數(shù)字和設(shè)備標(biāo)識符。
然后,使用該設(shè)備標(biāo)識符,可以獲得512公鑰。在一個實施例中, 主機設(shè)備包括分配給各個不同附件設(shè)備的多個公鑰。在這種實施例中,
設(shè)備標(biāo)識符可用于指定特定的附件設(shè)備,并且從而允許選擇這些公鑰
中適當(dāng)?shù)囊粋€。接著,使用公鑰對編碼數(shù)字進(jìn)行密碼解碼514,以便 產(chǎn)生解碼數(shù)字。然后將解碼數(shù)字與隨機數(shù)進(jìn)行比較516。換言之,將 從在認(rèn)證響應(yīng)中從附件設(shè)備接收到的編碼數(shù)字得出的解碼數(shù)字與以前 在認(rèn)證請求中發(fā)送給附件設(shè)備的隨機數(shù)進(jìn)行比較。然后判斷518確定 解碼數(shù)字是否與隨機數(shù)匹配。當(dāng)判斷518確定解碼數(shù)字不與隨機數(shù)匹 配時,可以可選擇地通知用戶該附件設(shè)備未被授權(quán)??梢酝ㄟ^視覺裝 置或音頻裝置實現(xiàn)這種通知。例如,視覺通知可以呈現(xiàn)在與主機設(shè)備 或附件設(shè)備相關(guān)聯(lián)的顯示設(shè)備上。
在另一方面,當(dāng)判斷518確定解碼數(shù)字不與隨機數(shù)匹配時,獲得 522與設(shè)備標(biāo)識符相關(guān)聯(lián)的授權(quán)的特征。然后,使能524對被授權(quán)特 征的使用。接著,判斷526可以確定是否從主機設(shè)備移去(或拆卸下) 附件設(shè)備。當(dāng)判斷526未移去附件設(shè)備時,則主機設(shè)備處理500可以 繼續(xù)允許對被授權(quán)特征的使用。然而, 一旦判斷526確定已經(jīng)移去附 件設(shè)備,則禁止528對主機設(shè)備的所有特征的使用。換言之,作為例 子,可以認(rèn)為在一個會話過程中使能對被授權(quán)特征的使用。只要附件 設(shè)備保持附于主機設(shè)備,則會話可以保持為激活。 一旦被拆卸下,則 會話結(jié)束并且后續(xù)的重新附加需要重新認(rèn)證。在操作528之后,以及 在操作520之后,主機設(shè)備處理500完成并且結(jié)束。
圖6A和6B是根據(jù)本發(fā)明的一個實施例的附件設(shè)備處理600的 流程圖。由附件設(shè)備,諸如,圖1A中所示的附件設(shè)備112、圖1B中 所示的附件設(shè)備156或圖1C中所示的附件設(shè)備176執(zhí)行附件設(shè)備處 理600。附件設(shè)備處理600代表圖5A和5B中所示的主機設(shè)備處理500 的配對處理。
附件設(shè)備處理600以判斷602開始,判斷602確定是否給附件設(shè) 備供電。當(dāng)判斷602確定未給附件設(shè)備供電時,附件設(shè)備處理600等 待可用電能。典型地, 一旦將附件設(shè)備連接到主機設(shè)備,就給附件設(shè) 備供電。因此,可替換地判斷602可以確定附件設(shè)備是否連接到了主 機設(shè)備。 一旦判斷602確定已給附件設(shè)備供電,可以將認(rèn)證信息發(fā)送604 給主機設(shè)備。在一個實施例中,認(rèn)證信息可以包括指示所支持的一個 或多個認(rèn)證版本的信息。然后判斷606確定是否接收到認(rèn)證請求。當(dāng) 判斷606確定未接收到認(rèn)證請求時,則附件設(shè)備處理600等待這種請 求。 一旦判斷606確定已經(jīng)接收到認(rèn)證請求,提取608在i人證請求中 提供的隨機數(shù)。從認(rèn)證設(shè)備獲得610私鑰。出于安全的原因,私鑰可 以存儲在認(rèn)證設(shè)備內(nèi)部,并且不能夠容易地從認(rèn)證設(shè)備的外部訪問。 接著,使用密鑰私鑰對該隨機數(shù)密碼編碼612,以便產(chǎn)生編碼數(shù)字。
此后,向主機設(shè)備發(fā)送614認(rèn)證響應(yīng)。此處,認(rèn)證響應(yīng)至少包括 該編碼數(shù)字和設(shè)備標(biāo)識符。在已經(jīng)發(fā)送614認(rèn)證響應(yīng)之后,判斷616 確定是否已經(jīng)授權(quán)對主機設(shè)備的特征的訪問??梢灾鲃拥鼗虮粍拥卮_ 定判斷616。例如,主機設(shè)備可以通知附件設(shè)備它已被授權(quán)訪問主機 設(shè)備的一個或多個特征。作為另一個例子,主機設(shè)備可以不通知附件 設(shè)備,而是允許附件設(shè)備訪問已授權(quán)的主機設(shè)備的一個或多個特征。 在任何情況下,當(dāng)判斷616確定未授權(quán)對主機設(shè)備上的某些特征的訪 問時,禁止附件設(shè)備的操作620,如果有的話,使用主機設(shè)備的某些 特征。實際上,在一個實施例中,主機設(shè)備可以阻止附件設(shè)備的任何 操作。作為例子,主機設(shè)備可以阻止與附件設(shè)備的通信和/或停止給附 件設(shè)備供電。
在另一方面,當(dāng)判斷616確定已經(jīng)授權(quán)對主機設(shè)備的某些特征的 訪問時,則可以根據(jù)授權(quán)的特征操作618附件設(shè)備。換言之,如果被 授權(quán),附件設(shè)備能夠與主機設(shè)備交互,以便利用由主機設(shè)備提供的某 些特征。
在操作618和620之后,判斷622確定是否移去了附件設(shè)備,即, 附件設(shè)備是否從主機設(shè)備斷開。當(dāng)判斷622確定附件設(shè)備保持連接或 附加于主機設(shè)備時,則適當(dāng)?shù)牟僮?18或620可以繼續(xù)。可替換地, 當(dāng)判斷622確定已經(jīng)移去了附件設(shè)備時,則不再授權(quán)附件設(shè)備與主機 設(shè)備交互,并且因此不再能夠利用以前授權(quán)的由主機設(shè)備支持的特征。 在該情況下,附件設(shè)備處理600結(jié)束。然而,通過再次執(zhí)行附件設(shè)備
處理600,可以隨后重新授權(quán)附件設(shè)備。
在附件設(shè)備處理600中,與認(rèn)證響應(yīng)一起提供設(shè)備標(biāo)識符。在可 替換的實施例中,可以不同地將設(shè)備標(biāo)識符提供給主機設(shè)備,諸如與 認(rèn)證信息一起提供。還可以單獨地將設(shè)備標(biāo)識符提供給主機設(shè)備。
圖6C是根據(jù)本發(fā)明的一個實施例的授權(quán)表650的圖。該授權(quán)表 適合于,例如,用作圖2B中所示的授權(quán)表254。 一般地,可以使用授 權(quán)表650確定針對給定附件設(shè)備的授權(quán)特征。授權(quán)表650包括設(shè)備標(biāo) 識符欄652">鑰欄654和授權(quán)特征欄656。授權(quán)表650將i更備標(biāo)識符、 公鑰和授權(quán)的特征關(guān)聯(lián)在一起。使用設(shè)備標(biāo)識符,主機設(shè)備可以確定 在確定是否可以認(rèn)證使用特定設(shè)備標(biāo)識符標(biāo)識的附件設(shè)備時將使用的 適當(dāng)?shù)墓€。在對附件設(shè)備的認(rèn)證成功的情況下,可以在授權(quán)特征欄 656中標(biāo)識出與設(shè)備標(biāo)識符相關(guān)聯(lián)的授權(quán)的特征。
根據(jù)本發(fā)明的一個方面,主機設(shè)備可以操作,以便認(rèn)證耦合到主 機設(shè)備的附件設(shè)備。允許能夠被認(rèn)證的那些附件設(shè)備在較大的程度上 與主機設(shè)備互操作。因此主機設(shè)備可以控制附件設(shè)備可以與主機設(shè)備 互操作的性質(zhì)和程度。例如,當(dāng)不能認(rèn)證附件設(shè)備時,主機設(shè)備可以 限制、約束或阻止附件設(shè)備與主機設(shè)備互操作??商鎿Q地,當(dāng)附件設(shè) 備被認(rèn)證時,主機設(shè)備可以允許與主機設(shè)備的較多的互操作。
圖7A和7B是根據(jù)本發(fā)明的一個實施例的附件設(shè)備處理700的 流程圖。圖8A-8C是根據(jù)本發(fā)明的一個實施例的主機設(shè)備處理800 的流程圖。在與主機設(shè)備的認(rèn)證處理過程中,由附件設(shè)備執(zhí)行附件設(shè) 備處理700。在與附件設(shè)備的認(rèn)證處理過程中,由主機設(shè)備執(zhí)行主機 設(shè)備處理800。主機設(shè)備處理800是附件設(shè)備處理700的配對處理。 換言之,在認(rèn)證處理中,在附件設(shè)備內(nèi)的主機設(shè)備間存在信息交換。 因此,圖7A和7B表示在認(rèn)證處理的一個實施例中,由附件設(shè)備執(zhí)行 的處理,并且圖8A-8C表示由主機設(shè)備執(zhí)行的處理。應(yīng)當(dāng)理解,雖 然在這些圖中示出的認(rèn)證處理被示出為大體上是順序的, 一般地,可 以認(rèn)為認(rèn)證處理是一種協(xié)議,附件設(shè)備和主機設(shè)備使用該協(xié)議交換不 僅用于認(rèn)證,而且用于后續(xù)操作的信息。在一個實施例中,可以認(rèn)為 這種協(xié)議大體上是并行的,諸如在客戶機-服務(wù)器或主-從實現(xiàn)中。
圖7A和7B是根據(jù)本發(fā)明的一個實施例的附件設(shè)備處理700的 流程圖。附件設(shè)備處理700開始于判斷702。判斷702確定附件設(shè)備 是否連接到主機設(shè)備。典型地,判斷702檢測附件設(shè)備借助于連接器 到主機設(shè)備的最近的連接。在任何情況下,當(dāng)判斷702確定附件設(shè)備 未連接到主機設(shè)備時,附件設(shè)備處理700可以有效地等待這種連接。 換言之,當(dāng)附件設(shè)備連接到主機設(shè)備時,可以認(rèn)為調(diào)用了附件設(shè)備處 理700。
一旦判斷702確定附件設(shè)備連接到了主機設(shè)備,附件設(shè)備處理 700繼續(xù)。當(dāng)附件設(shè)備處理700繼續(xù)時,將認(rèn)證控制信息從附件設(shè)備 發(fā)送704到主機設(shè)備。作為例子,認(rèn)證控制信息可以指明附件設(shè)備的 類型、是否支持認(rèn)證、何時認(rèn)證、和/或附件設(shè)備的功率要求。附件設(shè) 備的類型的特定例子是麥克風(fēng)、simple remote、 display remote、遠(yuǎn) 程用戶接口、 RF發(fā)射器和USB控制主機。在附件設(shè)備的通電初期或 響應(yīng)來自主機設(shè)備的命令或確認(rèn),清除706附件設(shè)備的認(rèn)證狀態(tài)。此 處,當(dāng)連接附件設(shè)備時,通過清除706認(rèn)證狀態(tài),附件設(shè)備可以知道 它必須,皮主機i殳備i人證。
接著,判斷710確定是否收到了設(shè)備認(rèn)證信息請求。此處,由主 機設(shè)備向附件設(shè)備發(fā)送設(shè)備認(rèn)證信息請求。設(shè)備認(rèn)證信息請求起請求 來自附件設(shè)備的某些信息的作用,主機設(shè)備在認(rèn)證處理過程中使用該 信息。當(dāng)判斷710確定仍未接收到設(shè)備認(rèn)證信息請求時,附件設(shè)備處 理700等待這種請求。 一旦判斷710確定已經(jīng)接收到設(shè)備認(rèn)證信息請 求,從附件設(shè)備獲得712設(shè)備認(rèn)證信息。作為例子,設(shè)備認(rèn)證信息可 以包括設(shè)備標(biāo)識符和版本指示器。設(shè)備標(biāo)識符可以屬于供應(yīng)商標(biāo)識符、 產(chǎn)品標(biāo)識符或兩者。版本指示器可以屬于支持的協(xié)議版本。然后,將 設(shè)備認(rèn)證信息發(fā)送714到主機設(shè)備。
然后判斷716確定是否從主機設(shè)備接收到認(rèn)證請求。此處,認(rèn)證 請求是來自主機設(shè)備以便提供包含用于認(rèn)證附件設(shè)備的數(shù)字簽名的認(rèn) 證響應(yīng)的請求。當(dāng)判斷716確定未接收到i人證請求時,附件設(shè)備處理
700等待這種請求。 一旦判斷716確定收到了認(rèn)證請求,則從認(rèn)證請 求中提取718主機隨機數(shù)。認(rèn)證請求至少包括在i人證處理中使用的主 機隨機數(shù)。
然后獲得720附件設(shè)備內(nèi)部的私鑰。然后可以至少使用主機隨機 數(shù)、私鑰和設(shè)備隨機數(shù)計算722設(shè)備數(shù)字簽名。在附件設(shè)備內(nèi)產(chǎn)生或 可得到設(shè)備隨機數(shù)。設(shè)備數(shù)字簽名是主機設(shè)備將用于認(rèn)證附件設(shè)備的 加密值。向主機設(shè)備發(fā)送724認(rèn)證響應(yīng)。這樣形成認(rèn)證響應(yīng),從而它 至少包括該設(shè)備數(shù)字簽名,
然后判斷726確定是否從主機設(shè)備收到設(shè)備認(rèn)證狀態(tài)。當(dāng)判斷 726確定未收到設(shè)備認(rèn)證狀態(tài)時,附件設(shè)備處理700等待這種信息。 一旦判斷726確定已經(jīng)收到設(shè)備認(rèn)證狀態(tài),可以將設(shè)備認(rèn)證狀態(tài)存儲 728在附件設(shè)備上。在方框728之后,附件設(shè)備處理700結(jié)束。
圖8A - 8C是根據(jù)本發(fā)明的一個實施例的主機設(shè)備處理800的流 程圖。主機設(shè)備處理800開始于判斷802,判斷802確定是否從附件 設(shè)備收到認(rèn)證控制信息。當(dāng)判斷802確定未收到i人證控制信息時,主 機設(shè)備處理800等待這種信息。 一旦判斷802確定已經(jīng)收到了認(rèn)證控 制信息,主機設(shè)備處理800繼續(xù)。換言之, 一旦收到認(rèn)證控制信息, 則有效地調(diào)用主機設(shè)備處理800。
當(dāng)主機設(shè)備處理800繼續(xù)時,可以重置(即,清除)804設(shè)備認(rèn) 證狀態(tài)。因此,認(rèn)為附件設(shè)備不可信,直到認(rèn)證處理能夠認(rèn)證附件i殳 備為止。該操作可能已經(jīng)自動地在主機設(shè)備處發(fā)生了,諸如當(dāng)從主機 設(shè)備斷開附件設(shè)備時。
然后判斷806基于認(rèn)證控制信息確定附件設(shè)備是否支持認(rèn)證。當(dāng) 判斷806確定附件設(shè)備不支持認(rèn)證時,主機設(shè)備處理800結(jié)束,而不 認(rèn)證附件設(shè)備。在該情況下,可以約束,甚至阻止附件設(shè)備與主機設(shè) 備互操作。
在另一方面,當(dāng)判斷806確定附件設(shè)備支持認(rèn)證時,主機設(shè)備處 理800繼續(xù)。此時,向附件設(shè)備發(fā)送808設(shè)備認(rèn)證信息請求。然后判 斷810確定是否收到設(shè)備認(rèn)證信息。當(dāng)判斷810確定未收到設(shè)備認(rèn)證
信息時,主機設(shè)備處理800等待接收這種信息。 一旦判斷810確定已 經(jīng)收到設(shè)備認(rèn)證信息,判斷812確定此時是否執(zhí)行認(rèn)證。此處應(yīng)當(dāng)理 解,主機設(shè)備處理800可以在將附件設(shè)備連接到主機設(shè)備時即刻就執(zhí) 行認(rèn)證,或可以推遲認(rèn)證直到稍后的時刻,諸如當(dāng)附件設(shè)備希望(例 如,第一次希望)使用僅對認(rèn)證的設(shè)備可用的主機設(shè)備的擴展特征時 周期地進(jìn)行。因此,當(dāng)判斷812確定不立刻需要認(rèn)證時,主機設(shè)備處 理800可以等待適合的時刻執(zhí)行認(rèn)證處理。 一旦判斷812確定應(yīng)當(dāng)執(zhí) 行認(rèn)證,則產(chǎn)生814主機隨機數(shù)。接著,向附件設(shè)備發(fā)送816認(rèn)證請 求。該認(rèn)證請求至少包括已經(jīng)產(chǎn)生814的主機隨機數(shù)。
然后判斷818確定是否從附件設(shè)備收到認(rèn)證響應(yīng)。當(dāng)判斷818確 定已經(jīng)收到認(rèn)證響應(yīng)時,從認(rèn)證響應(yīng)中提取820設(shè)備數(shù)字簽名。還獲 得822用于附件設(shè)備的公鑰。在一個實施例中,主機i殳備包括與不同 設(shè)備標(biāo)識符相關(guān)聯(lián)的多個公鑰。因此,來自附件設(shè)備的設(shè)備認(rèn)證信息 可以包括用于附件設(shè)備的設(shè)備標(biāo)識符。在獲得822用于附件設(shè)備的乂> 鑰時可以使用該i殳備標(biāo)識符。作為例子,可以使用i人證表,諸如圖6C 中所示的認(rèn)證表650獲得公鑰。
接著,使用公鑰驗證824設(shè)備數(shù)字簽名。在一個實施例中,數(shù)字 設(shè)備簽名的驗證824還使用主機隨機數(shù)。然后判斷826確定是否已經(jīng) 驗證了數(shù)字設(shè)備簽名。當(dāng)判斷826確定已經(jīng)驗證了數(shù)字設(shè)備簽名時, 認(rèn)為828附件設(shè)備可信??梢愿?30與附件設(shè)備相關(guān)聯(lián)的命令訪問 許可,從而主機設(shè)備允許附件設(shè)備使用被認(rèn)證的設(shè)備允許的那些命令。 在另一方面,當(dāng)判斷826確定未驗證數(shù)字設(shè)備簽名時,認(rèn)為832附件 設(shè)備不可信。在方框830和832之后,向附件設(shè)備發(fā)送834設(shè)備i^證 狀態(tài)。設(shè)備認(rèn)證狀態(tài)起通知附件設(shè)備主機設(shè)備是否已經(jīng)認(rèn)證該附件設(shè) 備的作用。
如果設(shè)備認(rèn)證狀態(tài)指出附件設(shè)備被認(rèn)為可信,則附件設(shè)備可以進(jìn) 而根據(jù)對使用的授權(quán)程度與主機設(shè)備交互。作為另一個例子,當(dāng)設(shè)備 認(rèn)證狀態(tài)指出附件設(shè)備被認(rèn)為不可信時,則可以約束,甚至阻止附件 設(shè)備與主機設(shè)備交互。在任何情況下,當(dāng)認(rèn)為附件設(shè)備可信時,將附
件設(shè)備用于主機設(shè)備的授權(quán)程度更大。
圖9A - 9C是根據(jù)本發(fā)明的一個實施例的附件設(shè)備處理900的流 程圖。圖IOA和IOB是根據(jù)本發(fā)明的一個實施例的主機設(shè)備處理1000 的流程圖。在認(rèn)證處理中當(dāng)試圖認(rèn)證主機設(shè)備時,由附件設(shè)備執(zhí)行附 件設(shè)備處理900。在關(guān)于附件設(shè)備的認(rèn)證處理中,由主機設(shè)備執(zhí)行主 機設(shè)備處理1000。主機設(shè)備處理1000是附件設(shè)備處理900的配對處 理。換言之,在認(rèn)證處理中,在附件設(shè)備內(nèi)的主機設(shè)備間存在信息交 換。因此,圖9A-9C表示在認(rèn)證處理的一個實施例中,由附件i殳備 執(zhí)行的處理,并且圖IOA和IOB表示由主機設(shè)備執(zhí)行的處理。應(yīng)當(dāng)理 解,雖然在這些圖中示出的認(rèn)證處理被示出為大體上是順序的,可以 認(rèn)為認(rèn)證處理是一種協(xié)議,附件設(shè)備和主機設(shè)備使用該協(xié)議交換不僅 用于認(rèn)證,而且用于后續(xù)操作的信息。在一個實施例中,可以認(rèn)為這 種協(xié)議大體上是并行的,諸如在客戶機-服務(wù)器或主-從實現(xiàn)中。
圖9A - 9C是根據(jù)本發(fā)明的一個實施例的附件設(shè)備處理900的流 程圖。當(dāng)試圖認(rèn)證與附件設(shè)備連接的主機設(shè)備時,由附件設(shè)備執(zhí)行附 件i更備處理900。
附件設(shè)備處理900開始于判斷902。判斷902確定附件設(shè)備是否 連接到主機設(shè)備。當(dāng)判斷902確定附件設(shè)備未連接到主機設(shè)備時,附 件設(shè)備處理900等待這種連接。換言之,當(dāng)附件設(shè)備連接到主機設(shè)備 時,有效地調(diào)用附件設(shè)備處理900。在一個實施例中, 一旦確定附件 設(shè)備剛剛新近連接到主機設(shè)備,則調(diào)用附件設(shè)備處理900。然而,在 其他實施例中,可以稍后(例如,推遲)執(zhí)行認(rèn)證處理。
一旦判斷902確定附件設(shè)備連接到了主機設(shè)備,則向主機設(shè)備發(fā) 送904認(rèn)證控制信息。然后判斷906確定是否確認(rèn)了認(rèn)證控制信息。 當(dāng)判斷906確定已經(jīng)確認(rèn)了認(rèn)證控制信息時,可以清除908附件設(shè)備 的認(rèn)證狀態(tài)。此處,當(dāng)連接主機設(shè)備時,通過清除908認(rèn)證狀態(tài),由 附件設(shè)備認(rèn)證。
接著向主機設(shè)備發(fā)送910主機認(rèn)證信息請求。然后判斷912確定 是否從主機設(shè)備收到主機認(rèn)證信息。當(dāng)判斷912確定未從主機設(shè)備收
到主機認(rèn)證信息時,附件設(shè)備處理900等待這種信息。
一旦判斷912確定收到了主機認(rèn)證信息,判斷914確定是否應(yīng)在 此時執(zhí)行認(rèn)證。此處,應(yīng)當(dāng)注意,可以立刻執(zhí)行i人證處理,諸如在檢 測到連接后立刻進(jìn)行,或可以推遲直到稍后的一個時刻為止,諸如當(dāng) 需要主機設(shè)備的命令或擴展功能時。在任何情況下,當(dāng)判斷914確定 此時不執(zhí)行認(rèn)證處理時,附件設(shè)備處理900可以等待適合的時刻執(zhí)行 認(rèn)證。
一旦判斷914確定應(yīng)當(dāng)執(zhí)行認(rèn)證,則產(chǎn)生916設(shè)備隨機數(shù)。然后, 向主機設(shè)備發(fā)918認(rèn)證請求。認(rèn)證請求通常至少包括設(shè)備隨機數(shù)和私 鑰數(shù)。私鑰數(shù)用于在主機設(shè)備處選擇私鑰。
接著,判斷920確定是否從主機設(shè)備收到認(rèn)證響應(yīng)。當(dāng)判斷920 確定未收到認(rèn)證響應(yīng)時,則附件設(shè)備處理卯0等待這種響應(yīng)。 一旦判 斷920確定已經(jīng)收到認(rèn)證響應(yīng),則從認(rèn)證響應(yīng)中提取922主機數(shù)字簽 名。另外,基于公鑰索引獲得924公鑰。在一個實施例中,將公鑰索 引與主機認(rèn)證信息一起提供給附件設(shè)備。在一個實施例中,使用公鑰 索引在附件設(shè)備處確定公鑰。例如,附件設(shè)備可以包括多個不同的公 鑰,并且可由公鑰索引標(biāo)識這些公鑰中將使用的適當(dāng)?shù)囊粋€。
然后,使用公鑰驗證926主機數(shù)字簽名。驗證926還使用設(shè)備隨 機數(shù)。之后,判斷928確定是否已經(jīng)驗證了主機數(shù)字簽名。當(dāng)判斷928 確定已經(jīng)驗證了主機數(shù)字簽名時,認(rèn)為930主機i殳備可信。從而,更 新932由該主機設(shè)備使用的命令訪問許可。例如,由于驗證了主機設(shè) 備,認(rèn)為至少在命令訪問許可的程度上,主機設(shè)備和附件設(shè)備間的交 互被授權(quán)了??商鎿Q地,當(dāng)判斷928確定未驗證主機設(shè)備時,認(rèn)為934 主機設(shè)備不可信。在方框932和934之后,可以將主機i^證狀態(tài)發(fā)送 936給主機設(shè)備。此處,主機認(rèn)證狀態(tài)向主機設(shè)備通知認(rèn)證處理的結(jié) 果。在方框936之后,附件設(shè)備處理900完成并且結(jié)束。
圖10A和10B是才艮據(jù)本發(fā)明的一個實施例的主機設(shè)備處理1000 的流程圖。在與附件設(shè)備交互的同時,在主機設(shè)備上執(zhí)行主機設(shè)備處 理1000。主機設(shè)備處理1000表示認(rèn)證處理中附件設(shè)備處理900的配
對處理。
主機設(shè)備處理1000開始于判斷1002,判斷1002確定是否從附件 設(shè)備收到認(rèn)證控制信息。當(dāng)判斷1002確定未收到認(rèn)證控制信息時,主 機設(shè)備處理1000等待這種信息。 一旦判斷1002確定已經(jīng)收到了認(rèn)證 控制信息,主機設(shè)備處理1000繼續(xù)。換言之, 一旦收到認(rèn)證控制信息, 則有效地調(diào)用主機設(shè)備處理1000。
當(dāng)主機設(shè)備處理1000繼續(xù)時,重置1004設(shè)備認(rèn)證狀態(tài),從而清 除它可能具有的任何以前的認(rèn)證狀態(tài)。然后判斷1006確定是否收到主 機認(rèn)證信息請求。當(dāng)判斷1006確定未收到主機認(rèn)證信息請求時,主機 設(shè)備處理1000等待這種請求。 一旦判斷1006確定已經(jīng)收到主機i人證 信息請求,在主機設(shè)備處獲得1008主機認(rèn)證信息。然后將主機認(rèn)證信 息發(fā)送1010到附件設(shè)備。在一個實施例中,主機認(rèn)證信息至少包括版 本信息和公鑰索引。
接著,判斷1012確定是否收到認(rèn)證請求。當(dāng)判斷1012確定未收 到認(rèn)證請求時,主機設(shè)備處理IOOO等待這種請求。 一旦判斷1012確 定已經(jīng)收到認(rèn)證請求,則從認(rèn)證請求中提取1014設(shè)備隨機數(shù)和私鑰 數(shù)。在該實施例中,應(yīng)當(dāng)理解,從附件設(shè)備收到的認(rèn)證請求至少包括 可由主機設(shè)備使用的設(shè)備隨機數(shù)和私鑰數(shù)。然后,基于私鑰數(shù)獲得 1016私鑰。此處,將獲得1016的私鑰在主機設(shè)備內(nèi)部,并且通過橫_ 用私鑰數(shù)標(biāo)識。
然后使用設(shè)備隨機數(shù)、私鑰和主機隨機數(shù)計算1018主機數(shù)字簽 名??梢栽谥鳈C設(shè)備處產(chǎn)生或可得到主機隨機數(shù)。然后主機設(shè)備處理 1000向附件設(shè)備發(fā)送1020認(rèn)證響應(yīng)。該認(rèn)證響應(yīng)至少包括主機數(shù)字 簽名。
之后,判斷1022確定是否收到了主機認(rèn)證狀態(tài)。當(dāng)判斷1022確 定未收到主機認(rèn)證狀態(tài)時,主機設(shè)備處理1000等待這種信息。 一旦判 斷1022確定已經(jīng)收到主機認(rèn)證狀態(tài),則將主機認(rèn)證狀態(tài)存儲1024在 主機設(shè)備處。此時,主機設(shè)備知道了它具有的關(guān)于附件設(shè)備的認(rèn)證狀 態(tài),并且從而可以操作。在方框1024之后,主機設(shè)備處理1000完成
并且結(jié)束。
根據(jù)本發(fā)明的另一個方面,電子設(shè)備或主機設(shè)備還可以連接主計 算機,諸如個人計算機。該個人計算機可以存儲、使用和管理媒體項 目。媒體項目的管理不僅可以針對主計算機,而且可以針對電子設(shè)備。
圖11是根據(jù)本發(fā)明的一個實施例的媒體管理系統(tǒng)1100的方框 圖。媒體管理系統(tǒng)1100包括主計算機1102和媒體播放器1104。主計 算機1102典型地是個人計算機。除了其他傳統(tǒng)組件之外,主計算機包 括管理模塊1106,管理模塊1106是軟件模塊。管理模塊1106提供對 不僅在主計算機1102上而且在媒體播放器1104上的媒體項目(和/ 或播放列表)的集中管理。更具體地,管理模塊1106管理存儲在與主 計算機1102相關(guān)聯(lián)的媒體存儲1108內(nèi)的媒體項目。管理模塊1106 還與媒體數(shù)據(jù)庫1110交互,以便在媒體存儲1108內(nèi)存儲與媒體項目
相關(guān)聯(lián)的媒體信息。
媒體信息與媒體項目的特性或?qū)傩杂嘘P(guān)。例如,在音頻或影音媒
體的情況下,媒體信息可以包括下面的一個或多個標(biāo)題、相集、軌 跡、演員、創(chuàng)作者和流派。媒體信息的這些類型特定于特定的媒體項 目。另外,媒體信息可以與媒體項目的質(zhì)量特性有關(guān)。媒體項目的質(zhì) 量特性的例子包括下面的一個或多個位速率、采樣速率、均衡器i殳 置、音量調(diào)整、開始/停止和整個時間。
另外,主計算機1102包括播放模塊1112。播放模塊1112是軟件 模塊,其可以用于播放存儲在媒體存儲1108內(nèi)的某些媒體項目。播放 模塊1112還可以顯示(在顯示屏上)或使用來自媒體數(shù)據(jù)庫1110的 媒體信息。典型地,感興趣的媒體信息相應(yīng)于將由播放模塊1H2播放 的媒體項目。
主計算機1102還包括通信模塊1114,其與媒體播放器1104內(nèi)的 相應(yīng)的通信模塊1116耦合。連接或鏈路1118可去除地耦合通信模塊 1114和1116。在一個實施例中,連接或鏈路1118是本領(lǐng)域公知的提 供數(shù)據(jù)總線諸如FIREWIRETM總線或USB總線的電纜。在另一個實 施例中,連接或鏈路1118是無線信道或通過無線網(wǎng)絡(luò)的連接。因此,取決于實現(xiàn),通信模塊1114和1116可以用有線或無線的方式通信。
媒體播放器1104還包括存儲媒體播放器1104內(nèi)的媒體項目的媒 體存儲1120??蛇x擇地,媒體存儲1120還可以存儲數(shù)據(jù),即,非媒 體項目存儲。通常通過連接或鏈路1118從主計算機1102接收存儲到 媒體存儲1120的媒體項目。更具體地,管理模塊1106將所有或某些 駐留在媒體存儲1108上的媒體項目在連接或鏈路1118上發(fā)送到媒體 播放器1104內(nèi)的媒體存儲1120。另外,可以將同樣從主計算機1102 傳遞到媒體播放器1104的媒體項目的相應(yīng)的媒體信息存儲在媒體數(shù) 據(jù)庫1122內(nèi)。就此而言,可以在連接或鏈路1118上將來自主計算機 1102內(nèi)的媒體數(shù)據(jù)庫1110的某些媒體信息發(fā)送到媒體播放器1104內(nèi) 的媒體數(shù)據(jù)庫1122。另外,可以由管理模塊1106將標(biāo)識某些媒體項 目的播放列表在連接或鏈路1118上發(fā)送到媒體存儲1120或媒體播放 器1104內(nèi)的媒體數(shù)據(jù)庫1122。
另外,媒體播放器1104包括耦合到媒體存儲1120和媒體數(shù)據(jù)庫 1122的播放模塊1124。播放模塊1124是軟件模塊,其可用于播放存 儲在媒體存儲1120內(nèi)的某些媒體項目。播放模塊1124還可以顯示(在 顯示屏上)或使用來自媒體數(shù)據(jù)庫1122的媒體信息。典型地,感興趣 的媒體信息相應(yīng)于將由播放模塊1124播放的媒體項目。
根據(jù)一個實施例,為了在媒體播放器1104上支持認(rèn)證處理,媒 體播放器1104還可以包括認(rèn)證模塊1126和認(rèn)證表1128。在一個實現(xiàn) 中,認(rèn)證模塊1126和認(rèn)證表1128可以分別相應(yīng)于上面參考圖2B描 述的認(rèn)證模塊252和認(rèn)證表254。
如前所述,附件設(shè)備可以耦合到媒體播放器。因此,圖11還示 出了能夠耦合到媒體播放器1104的附件設(shè)備1130。根據(jù)一個實施例, 附件設(shè)備1130還可以包括認(rèn)證設(shè)備1132。根據(jù)一個實施例,認(rèn)證設(shè) 備1132操作以便支持媒體播放器1104上的認(rèn)證處理。在一個實現(xiàn)中, 認(rèn)證設(shè)備1132可以相應(yīng)于上面參考圖2A描述的認(rèn)證控制器200。
在一個實施例中,媒體播放器1104具有有限的或沒有能力管理 媒體播放器1104上的媒體項目。然而,主計算機1102內(nèi)的管理模塊 1106可以間接地管理駐留在媒體播放器1104上的媒體項目。例如, 為了將媒體項目"添加"到媒體播放器1104,管理模塊1106起識別媒 體存儲1108中將要添加到媒體播放器1104的媒體項目,并且然后4吏 得識別出的媒體項目被傳遞到媒體播放器1104的作用。作為另 一個例 子,為了從媒體播放器1104"刪除"媒體項目,管理模塊1106起識別 將要從媒體存儲1108中刪除的媒體項目,并且然后使得從媒體播放器 1104刪除識別出的媒體項目的作用。作為另一個例子,如果在主計算 機1102處使用管理模塊1106進(jìn)行媒體項目的特性的改變(即,更改), 則這種特性也可以被延及到媒體播放器1104上的相應(yīng)的媒體項目。在 一個實現(xiàn)中,在媒體播放器1104上的媒體項目和主計算機1102上的 媒體項目的同步過程中,在批類處理中發(fā)生添加、刪除和/或改變。
在另一個實施例中,媒體播放器1104具有有限的或沒有能力管 理媒體播放器1104上的播放列表。然而,主計算機1102內(nèi)的管理模 塊1106通過對駐留在主計算機上的播放列表的管理,可以間接地管理 駐留在媒體播放器1104上的播放列表。就此而言,可以在主計算機 1102上執(zhí)行對播放列表的添加、刪除或改變,并且然后當(dāng)被傳遞到媒 體播放器1104時,延及媒體播放器1104。
如前所述,同步是一種媒體管理形式。前面在上面和在上面提及 的相關(guān)應(yīng)用中也討論了自動啟動同步的能力。然而,另外,可以限制 設(shè)備間的同步,從而在主計算機和媒體播放器不認(rèn)識彼此時防止自動 同步。
根據(jù)一個實施例,當(dāng)媒體播放器第一次連接到主計算機時(或甚 至更一般地,當(dāng)未出現(xiàn)匹配的標(biāo)識符時),詢問媒體播放器的用戶該 用戶是否希望將媒體播放器納入主計算機、分配給主計算機或相當(dāng)于 主計算機鎖定媒體播放器。當(dāng)媒體播放器的用戶選擇將媒體播放器納 入主計算機、分配給主計算機或相當(dāng)于主計算機鎖定媒體播放器時, 獲得偽隨機標(biāo)識符,并且將其存儲在媒體數(shù)據(jù)庫或主計算機和媒體播 放器兩者的文件內(nèi)。在一個實現(xiàn)中,標(biāo)識符是與主計算機或其管理模 塊相關(guān)聯(lián)(例如,主計算機或其管理模塊知道或產(chǎn)生的)標(biāo)識符,并
且將這種標(biāo)識符發(fā)送并且存儲在媒體播放器內(nèi)。在另一個實現(xiàn)中,標(biāo) 識符與媒體播放器相關(guān)聯(lián)(例如,媒體播放器知道或產(chǎn)生的),并且 將其發(fā)送并且存儲在文件或主計算機的媒體數(shù)據(jù)庫內(nèi)。
圖12是根據(jù)本發(fā)明的一個實施例的媒體播放器1200的方框圖。 媒體播放器1200包括與用于控制媒體播放器1200的整體操作的微處 理器或控制器有關(guān)的處理器1202。媒體播放器1200在文件系統(tǒng)1204 和緩存1206中存儲與媒體項目有關(guān)的媒體數(shù)據(jù)。文件系統(tǒng)1204典型 地是存儲設(shè)備。文件系統(tǒng)1204典型地為媒體播放器1200提供高容量 的存儲能力。例如,該存儲設(shè)備可以是基于半導(dǎo)體的存儲器,諸如 FLASH存儲器。文件系統(tǒng)1204不僅可以存儲媒體數(shù)據(jù),而且可以存 儲非媒體數(shù)據(jù)(例如,當(dāng)在數(shù)據(jù)模式中操作時)。然而,由于對文件 系統(tǒng)U04的訪問時間相對地慢,媒體播放器1200還可以包括緩存 1206。緩存1206是例如以半導(dǎo)體存儲器提供的隨機訪問存儲器 (RAM)。對緩存1206的相對訪問時間大體上比對文件系統(tǒng)1204的 短。然而,緩存1206不具有文件系統(tǒng)1204的大存儲容量。另外,文 件系統(tǒng)1204,當(dāng)激活時,比緩存1206消耗更多電能。當(dāng)媒體播放器 1200是由電池(未示出)供電的便攜媒體播放器時,電能消耗通常是 至關(guān)重要的。媒體播放器1200還包括RAM 1220和只讀存儲器(ROM ) 1222。 ROM 1222可以以非易失方式存儲將執(zhí)行的程序、工具或處理。 RAM 1220,諸如為緩存1206,提供易失的數(shù)據(jù)存儲。在一個實施例 中,可以由提供文件系統(tǒng)1204的存儲設(shè)備提供RAM 1220和ROM 1222。
媒體播放器1200還包括允許媒體播放器1200的用戶與媒體播放 器1200交互的用戶輸入設(shè)備1208。例如,用戶輸入i殳備1208可以采 取各種形式,諸如按鈕、鍵盤、撥數(shù)盤等。另外,媒體播放器1200 包括可以由處理器1202控制以便向用戶顯示信息的顯示器1210 (屏 幕顯示)。在觸摸屏的情況下,用戶輸入設(shè)備1208和顯示器1210還 可以組合在一起。數(shù)據(jù)總線1211可以便于至少文件系統(tǒng)1204、緩存 1206、處理器1202和CODEC1212間的數(shù)據(jù)傳輸。
在一個實施例中,媒體播放器1200起在文件系統(tǒng)1204內(nèi)存儲多 個媒體項目(例如,歌曲)的作用。當(dāng)用戶希望媒體播放器播放特定 的媒體項目時,在顯示器1210上顯示可得到的媒體項目的列表。然后, 使用用戶輸入設(shè)備1208,用戶可以選擇可得到的媒體項目中的一個。 在收到對特定媒體項目的選擇后,處理器1202向編碼器/解碼器 (CODEC ) 1212提供特定媒體項目的媒體數(shù)據(jù)(例如,聲音文件)。 然后CODEC 1212為揚聲器1214產(chǎn)生模擬輸出信數(shù)。揚聲器1214可 以是媒體播放器1200內(nèi)部的或媒體播放器1200外部的揚聲器。例如, 認(rèn)為連接到媒體播放器1200的耳機(headphone或earphone)是外 部揚聲器。
媒體播放器1200還包括耦合到數(shù)據(jù)鏈路1218的網(wǎng)絡(luò)/總線接口 1216。數(shù)據(jù)鏈路1218允許媒體播放器1200耦合到主計算機或附件i殳 備??梢栽谟芯€連接或無線連接上提供數(shù)據(jù)鏈路1218。在無線連接的 情況下,網(wǎng)絡(luò)/總線接口 1216可以包括無線收發(fā)器。
在一個實施例中,主計算機可以利用駐留在主計算機上的應(yīng)用, 以便允許使用播放列表(包括媒體設(shè)備列表)以及提供播放列表的管 理。 一種這樣的應(yīng)用是由Cupertino, CA的Apple Computer ^>司出 品的iTunes⑧版本4.2。
媒體項目(媒體資產(chǎn))可以與一種或多種不同類型的媒體內(nèi)容有 關(guān)。在一個實施例中,媒體項目是音頻軌跡。在另一個實施例中,媒 體項目是圖像(例如,相片)。然而,在其它實施例中,媒體項目可 以是音頻、圖形或視頻內(nèi)容的任何組合。
上面的討論提到了用于密碼方法以便認(rèn)證附件設(shè)備或主機設(shè)備 的隨機數(shù)。上面討論的密碼方法可以使用隨機數(shù)、公-私密鑰對和i人 證算法。隨機數(shù)還可以稱為隨機digest。公-私密鑰對和認(rèn)證算法可 以使用公-私密碼系統(tǒng),諸如公知的RSA算法或橢圓曲線密碼(ECC) 算法。使用ECC算法是有利的,ECC算法以與RSA實現(xiàn)的典型的較 大密鑰(例如,1024位)相比相對較小的密鑰(例如,160位),提 供減少的存儲器消耗。在提交于2005年2月3日的題目為"SMALL
MEMORY FOOTPRINT FAST ELLIPTIC ENCRPTION"的相關(guān)美
國專利申請No.: 11/_中描述了減少存儲器的ECC算法的例子,
通過引用將其結(jié)合在內(nèi)。
可以單獨或以任意組合使用本發(fā)明的各個方面、實施例、實現(xiàn)或特征。
本發(fā)明可以實現(xiàn)為軟件、硬件或硬件和軟件的組合。本發(fā)明還可 以表述為計算機可讀介質(zhì)上的計算機可讀代碼。計算機可讀介質(zhì)是可 以存儲數(shù)據(jù)的任意數(shù)據(jù)存儲設(shè)備,之后可以由計算機系統(tǒng)讀取該數(shù)據(jù)。 計算機可讀介質(zhì)的例子包括只讀存儲器、隨機訪問存儲器、CD-ROM、 DVD、磁帶、光學(xué)數(shù)據(jù)存儲設(shè)備和載波。計算機可讀介質(zhì)還可 以分布在聯(lián)網(wǎng)計算機系統(tǒng)上,從而以分布的方式存儲和執(zhí)行計算機可 讀代碼。
本發(fā)明的優(yōu)點有許多。不同的方面、實施例或?qū)崿F(xiàn)可以產(chǎn)生下面 的一個或多個優(yōu)點。本發(fā)明的一個優(yōu)點是可以控制對附件設(shè)備與主機 設(shè)備的交互。結(jié)果,電子設(shè)備可以將對它的某些或全部特征的使用僅 限于認(rèn)為被授權(quán)的附件設(shè)備。本發(fā)明的另一個優(yōu)點是提供管理被允許 用于主機設(shè)備的那些附件設(shè)備的質(zhì)量的能力。通過管理附件設(shè)備的質(zhì) 量,電子設(shè)備的操作不太可能被劣等的附件設(shè)備的附接所玷污。本發(fā) 明的另一個優(yōu)點是認(rèn)證處理可以基于制造商或設(shè)備控制對電子設(shè)備的 某些特征的訪問。
從給出的描述中可以明了本發(fā)明的許多特征和優(yōu)點,并且因此旨 在由所附權(quán)利要求覆蓋本發(fā)明的所有這些特征和優(yōu)點。另外,由于本 領(lǐng)域的技術(shù)人員容易想到許多修改和變更,本發(fā)明不應(yīng)被限制為示出 和描述的確切的構(gòu)造和操作。因此,可以采用所有適合的修改和等同 物,只要其落在本發(fā)明的范圍內(nèi)。
權(quán)利要求
1.一種便攜電子設(shè)備,包括媒體存儲設(shè)備,其存儲一個或多個媒體項目的媒體內(nèi)容;媒體呈現(xiàn)模塊,其從所述媒體存儲設(shè)備中檢索至少一個所述媒體項目的媒體內(nèi)容,并且使得將所述媒體內(nèi)容呈現(xiàn)給所述便攜電子設(shè)備的用戶;認(rèn)證表,其存儲被授權(quán)耦合到所述便攜電子設(shè)備并且與所述便攜電子設(shè)備交互的各種附件設(shè)備的認(rèn)證信息;和認(rèn)證模塊,其基于存儲在所述認(rèn)證表內(nèi)的所述認(rèn)證信息的至少一部分,確定是否授權(quán)耦合到所述便攜媒體設(shè)備的特定附件設(shè)備與所述便攜電子設(shè)備互操作。
2. 如權(quán)利要求1的便攜電子設(shè)備,其中當(dāng)所述認(rèn)證模塊確定不 授權(quán)所述特定附件設(shè)備進(jìn)行互操作時,所述便攜電子設(shè)備限制所述便 攜電子設(shè)備與所述特定附件設(shè)備的互操作性。
3. 如權(quán)利要求1的便攜電子設(shè)備,其中當(dāng)所述認(rèn)證模塊確定不 授權(quán)所述附件設(shè)備進(jìn)行互操作時,所述便攜電子^t備阻止所述^更攜電 子設(shè)備與所述附件設(shè)備的互操作性。
4. 如權(quán)利要求l的便攜電子設(shè)備,其中所述媒體呈現(xiàn)模塊包括計算機代碼,并且所述認(rèn)證模塊包括計算機代碼,并且其中所述便攜電子設(shè)備還包括處理器,該處理器執(zhí)行所述媒體呈 現(xiàn)模塊和所述認(rèn)證模塊的計算機代碼。
5. 如權(quán)利要求4的便攜電子設(shè)備,其中所述認(rèn)證模塊的計算機 代碼包括用于執(zhí)行認(rèn)證算法的計算機代碼。
6. 如權(quán)利要求1 -5中任意一個的便攜電子設(shè)備,其中所述認(rèn)證 信息至少包括指出所述各個附件設(shè)備中的每一個可以如何與所述便攜 電子設(shè)備互操作、和/或互操作的程度的認(rèn)證信息。
7. 如權(quán)利要求l-5中任意一個的便攜電子設(shè)備,其中所述認(rèn)證 信息至少包括用于所述各個附件設(shè)備中的每一個的認(rèn)證密鑰和設(shè)備標(biāo) 識符。
8. 如權(quán)利要求7的便攜電子設(shè)備,其中所述特定附件設(shè)備包括配對的認(rèn)證密鑰和設(shè)備標(biāo)識符,并且 其中所述認(rèn)證模塊還基于所述配對的認(rèn)證密鑰和設(shè)備標(biāo)識符,確 定是否授權(quán)所述附件設(shè)備與所述便攜電子設(shè)備互操作。
9. 如權(quán)利要求8的便攜電子設(shè)備,其中當(dāng)所述認(rèn)證模塊確定不 授權(quán)所述附件設(shè)備進(jìn)行互操作時,所述便攜電子設(shè)備限制所迷便攜電 子設(shè)備與所述特定附件設(shè)備的互操作性。
10. 如權(quán)利要求1-9中任意一個的便攜電子設(shè)備,其中所述便攜 電子設(shè)備是媒體播放器。
11. 如權(quán)利要求10的便攜電子設(shè)備,其中所述媒體項目是關(guān)于音 樂的,并且所述媒體播放器是音樂播放器。
12. —種用于便攜電子設(shè)備的附件設(shè)備,包括 輸入/輸出端口,用于與所述便攜電子設(shè)備交互; 認(rèn)證算法;與所述附件設(shè)備相關(guān)聯(lián)的認(rèn)證密鑰;認(rèn)證控制器,其操作地連接到所述輸入/輸出端口,用于至少使 用所述認(rèn)證算法和所述認(rèn)證密鑰執(zhí)行認(rèn)證操作;和 附件電路,、其執(zhí)行與所述附件設(shè)備相關(guān)聯(lián)的操作。
13. 如權(quán)利要求12的附件設(shè)備,其中所述認(rèn)證操作起向所述便攜 電子設(shè)備認(rèn)證所述附件設(shè)備的作用。
14. 如權(quán)利要求13的附件設(shè)備,其中所述附件設(shè)備還包括與所述附件設(shè)備相關(guān)聯(lián)的設(shè)備標(biāo)識符。
15. 如權(quán)利要求12的附件設(shè)備,其中至少所述認(rèn)證密鑰、所述認(rèn)證算法和所述認(rèn)證控制器在單個集成電路芯片內(nèi)。
16. 如權(quán)利要求12-15中任意一個的附件設(shè)備,其中所述認(rèn)證密鑰是私鑰,并且其中所述認(rèn)證控制器使用所述私鑰加密一個值。
17. 如權(quán)利要求16的附件設(shè)備,其中通過所述輸入/輸出端口將 所述加密值提供給所述便攜電子設(shè)備。
18. 如權(quán)利要求16的附件設(shè)備,其中所述加密值是數(shù)字簽名。
19. 如權(quán)利要求12-15中任意一個的附件設(shè)備,其中所述附件設(shè) 備是外圍適配器,并且其中所述附件電路至少包括升壓器,該升壓器用于接收第一電壓 并且輸出第二電壓,當(dāng)將所述附件設(shè)備連接到所述便攜電子設(shè)備時, 從所述便攜電子設(shè)備接收第 一 電壓,并且當(dāng)所述便攜電子設(shè)備已經(jīng)認(rèn) 證了所述附件設(shè)備時,輸出第二電壓。
20. 如權(quán)利要求12-15中任意一個的附件設(shè)備,其中所述附件設(shè) 備是用于所述便攜電子設(shè)備的外圍設(shè)備。
21. 如權(quán)利要求12-15中任意一個的附件設(shè)備,其中所述附件設(shè) 備是用于所述便攜電子設(shè)備的揚聲器系統(tǒng)或媒體設(shè)備。
22. 如權(quán)利要求12-15中任意一個的附件設(shè)備,其中所述^1攜電 子設(shè)備是能夠存儲和播放媒體項目的媒體播放器。
23. 如權(quán)利要求22的附件設(shè)備,其中所述媒體項目是關(guān)于音樂 的,并且所述媒體播放器是音樂播放器。
24. —種用于將附件設(shè)備連接到媒體播放器的連接器,包括 連接器主體;多個電觸點,其附于所述連接器主體內(nèi),并且起提供所述附件設(shè) 備和所述媒體播放器間的電連接的作用;和控制器,其布置在所述連接器主體內(nèi),并且提供允許所述媒體播 放器認(rèn)證所述附件設(shè)備的認(rèn)證密鑰。
25. 如權(quán)利要求24的連接器,其中當(dāng)所述控制器確定所述附件設(shè) 備可信時,所述控制器使得所述附件設(shè)備能夠使用所述媒體播放器的 至少一個特定功能。
26. —種用于授權(quán)將附件設(shè)備用于電子設(shè)備的方法,所述方法包括(a ) 從所述附件設(shè)備接收設(shè)備標(biāo)識符; (b) 從所述附件設(shè)備接收認(rèn)證值; (c) 基于所述認(rèn)證值確定所述附件設(shè)備是否可信;和(d) 當(dāng)所述確定(c)步驟確定所述附件設(shè)備可信時,授權(quán) 將所述附件設(shè)備用于所述電子設(shè)備。
27. 如權(quán)利要求26的方法,其中所述授權(quán)(d)步驟僅當(dāng)所述確 定(b)步驟確定所述附件設(shè)備被授權(quán)時,授權(quán)所述附件設(shè)備使用所 述電子設(shè)備的一個或多個特征。
28. 如權(quán)利要求27的方法,其中基于所述設(shè)備標(biāo)識符確定所述電 子設(shè)備的所述一個或多個特征。
29. 如權(quán)利要求27的方法,其中所述電子設(shè)備的所述一個或多個 特征是所述電子設(shè)備上可得到的命令或命令組。
30. 如權(quán)利要求27的方法,其中所述授權(quán)(d)步驟僅授權(quán)在某 些接口機構(gòu)上將所述電子設(shè)備的所述一個或多個特征用于所述附件設(shè) 備。
31. 如權(quán)利要求26的方法,其中所述認(rèn)證值是數(shù)字簽名。
32. 如權(quán)利要求26-31中任意一個的方法,其中所述方法還包括(e)當(dāng)從所述電子設(shè)備卸下所述附件設(shè)備時,隨后解除授 權(quán)將所述附件設(shè)備用于所述電子設(shè)備。
33. —種用于授權(quán)將附件設(shè)備用于電子設(shè)備的方法,所述方法包括(a) 檢測所述附件設(shè)備附接到所述電子設(shè)備;(b) 在所述檢測(a)步驟檢測到附接了所述附件設(shè)備后, 向所述附件設(shè)備發(fā)送隨機數(shù);(c) 隨后從所述附件設(shè)備接收編碼值; (d ) 從所述附件設(shè)備接收設(shè)備標(biāo)識符;(e) 基于所述設(shè)備標(biāo)識符獲得密碼密鑰;(f) 使用所述密碼密鑰解碼所述編碼值,以便產(chǎn)生解碼值;(g) 確定所述解碼值是否相應(yīng)于所述隨機數(shù);和(h) 當(dāng)所述確定(g)步驟指出所述解碼值相應(yīng)于所述隨機 數(shù)時,授權(quán)將所述附件設(shè)備用于所述電子設(shè)備。
34. 如權(quán)利要求33的方法,其中所述授權(quán)(h)步驟授權(quán)所述附 件設(shè)備使用所述電子設(shè)備的確定的一組特征。
35. 如權(quán)利要求34的方法,其中基于所述設(shè)備標(biāo)識符確定所述電 子設(shè)備的所述確定的一組特征。
36. 如權(quán)利要求35的方法,其中僅授權(quán)在某個接口機構(gòu)上使用所 述確定的一組特征中的至少一個。
37. 如權(quán)利要求33-36中任意一個的方法,其中所述方法還色括..(i)隨后確定是否從所述電子設(shè)備卸下了所述附件設(shè)備;和 (j)當(dāng)所述確定(i)步驟確定從所述電子設(shè)備卸下了所述附 件設(shè)備時,禁止將所迷附件設(shè)備用于所迷電子設(shè)備。
38. —種用于授權(quán)將附件設(shè)備用于電子設(shè)備的方法,所述方法包括(a ) 檢測所述附件設(shè)備附接到所述電子設(shè)備;(b) 在所述檢測(a)步驟檢測到所述附件設(shè)備的附接后, 向所述附件設(shè)備發(fā)送認(rèn)證請求,所述認(rèn)證請求至少包括隨機數(shù);(c) 隨后接收來自所述附件設(shè)備的認(rèn)證響應(yīng),所述i/v證響應(yīng) 是對所述認(rèn)證請求的響應(yīng),并且所述認(rèn)證響應(yīng)至少包括用于所述附件 設(shè)備的編碼值和設(shè)備標(biāo)識符;(d ) 基于所述設(shè)備標(biāo)識符獲得密碼密鑰;(e) 使用所迷密碼密鑰解碼所述編碼值,以便產(chǎn)生解碼值;和(f) 基于所述解碼值和所述隨機數(shù)間的對應(yīng),授權(quán)將所述附 件設(shè)備用于所述電子設(shè)備。
39. 如權(quán)利要求38的方法,其中所述授權(quán)(f)步驟包括 (fl)對所述解碼值和所述隨機數(shù)進(jìn)行比較;(f2)當(dāng)所述比較(fl)步驟指出所述解碼值匹配于所述隨機數(shù) 時,授權(quán)將所述附件設(shè)備用于所述電子設(shè)備。
40. 如權(quán)利要求38的方法,其中所述授權(quán)(g)步驟授權(quán)所迷附 件設(shè)備使用所述電子設(shè)備的確定的一組特征。
41. 如權(quán)利要求40的方法,其中僅授權(quán)在某個接口機構(gòu)上使用所 述確定的一組特征中的至少一個。
42. 如權(quán)利要求40的方法,其中基于所述設(shè)備標(biāo)識符確定所述電 子設(shè)備的所述確定的 一組特征。
43. 如權(quán)利要求40的方法,其中所述方法還包括(h)隨后確定是否從所述電子設(shè)備卸下了所述附件設(shè)備;和 (0當(dāng)所述確定(h)步驟確定從所述電子設(shè)備卸下了所述附件 設(shè)備時,禁止將所述附件設(shè)備用于所述電子設(shè)備。
44. 一種用于授權(quán)將附件設(shè)備用于電子設(shè)備的方法,所述方法包括(a ) 從所述電子設(shè)備接收隨機數(shù);(b) 至少使用在所述附件設(shè)備內(nèi)提供的密碼密鑰對所述隨 機數(shù)編碼,從而產(chǎn)生編碼值;和(c) 將所述編碼值和設(shè)備標(biāo)識符發(fā)送到所述電子i殳備。
45. 如權(quán)利要求44的方法,其中所述方法還包括(d) 如果所迷電子設(shè)備基于所述編碼值授權(quán)了所述附件設(shè)備, 則授權(quán)所述附件設(shè)備就所述電子設(shè)備的一個或多個特征與所述電子設(shè) 備操作。
46. 如權(quán)利要求44的方法,其中所述方法還包括(d)當(dāng)所述電子設(shè)備未授權(quán)所述附件設(shè)備時,使所述附件設(shè)備 以受限的方式與所述電子設(shè)備一起操作。
47. 如權(quán)利要求44的方法,其中所述電子設(shè)備是便攜電子設(shè)備。
48. 如權(quán)利要求44的方法,其中所述便攜電子設(shè)備是媒體播放器。
49. 一種用于控制媒體播放器和附件設(shè)備間的交互的方法,包括 確定所述附件設(shè)備的分類; 識別所述附件設(shè)備的授權(quán)等級;和 基于所述附件設(shè)備的分類和授權(quán)等級,選擇性地激活可以結(jié)合所 述附件設(shè)備使用的所述媒體設(shè)備的特征。
50. —種媒體播放器系統(tǒng),包括媒體播放器,其存儲媒體內(nèi)容,并且支持多個預(yù)定功能;和 附件設(shè)備,其能夠連接到所述媒體播放器, 其中所述媒體播放器和所述附件設(shè)備交互,以便執(zhí)行認(rèn)證處理, 其中,基于所述認(rèn)證處理,選擇性地激活所述媒體設(shè)備的特定功 能,從而可以由所述附件設(shè)備使用。
51. 如權(quán)利要求50的媒體播放器系統(tǒng),其中所述媒體處理給所述 媒體播放器提供密碼密鑰,并且所述媒體播放器使用所述密碼密鑰確 定所述附件設(shè)備的激活等級。
52. 如權(quán)利要求51的媒體播放器系統(tǒng),其中被激活的所述媒體設(shè) 備的所述特定功能是基于所述附件設(shè)備的授權(quán)等級的。
全文摘要
公開了控制將附件設(shè)備用于電子設(shè)備的改進(jìn)的技術(shù)。該改進(jìn)的技術(shù)可以使用密碼方法認(rèn)證電子設(shè)備,即,彼此互連和通信的電子設(shè)備。一個方面關(guān)于用于認(rèn)證電子設(shè)備(諸如附件設(shè)備)的技術(shù)。另一個方面關(guān)于由或為電子設(shè)備(例如,主機設(shè)備)提供軟件特征(例如,功能)??梢岳绺鶕?jù)認(rèn)證的不同程度或等級或根據(jù)制造商或產(chǎn)品不同地提供不同的電子設(shè)備。本發(fā)明的另一個方面關(guān)于使用附件(或適配器)將外圍設(shè)備(例如,USB設(shè)備)轉(zhuǎn)換為主機設(shè)備(例如,USB主機)。該改進(jìn)的技術(shù)特別適合于可以接收附件設(shè)備的電子設(shè)備,諸如媒體設(shè)備。媒體設(shè)備的一個例子是可以呈現(xiàn)(例如,播放)媒體項目(或媒體資產(chǎn))的媒體播放器,諸如手持媒體播放器(例如,音樂播放器)。
文檔編號G06F21/20GK101099157SQ200580046121
公開日2008年1月2日 申請日期2005年12月13日 優(yōu)先權(quán)日2005年1月7日
發(fā)明者喬納森·杰克·魯賓斯坦, 安東尼·M.·菲德爾, 杰?!.·多羅古斯克爾, 米特切爾·安德勒爾, 約翰·維斯雷·阿奇貝爾德 申請人:蘋果公司