專利名稱:外圍設(shè)備認(rèn)證的制作方法
外圍設(shè)備認(rèn)證
背景技術(shù):
用戶通常裝飾他們的計(jì)算設(shè)備。臺(tái)式計(jì)算機(jī)可以被裝上各種外圍設(shè)備,諸如外部硬盤(pán)驅(qū)動(dòng)器或揚(yáng)聲器。平板計(jì)算機(jī)可以被裝上鼠標(biāo)或外置電池。智能手機(jī)可以被裝上底座、外部鍵盤(pán)或充電器。這僅是用戶利用外圍設(shè)備裝飾計(jì)算設(shè)備的多種方式中的幾個(gè)。然而,這些外圍設(shè)備可能損壞或無(wú)法充分利用主機(jī)計(jì)算設(shè)備。一些外圍設(shè)備設(shè)計(jì)不當(dāng),諸如過(guò)熱的電池或使其主機(jī)計(jì)算設(shè)備超載的充電器。還有其他外圍設(shè)備無(wú)法充分利用主機(jī)計(jì)算設(shè)備,或者與其進(jìn)行適當(dāng)?shù)慕换ィT如其用戶界面或服務(wù)。
參照下面的附圖描述用于外圍設(shè)備認(rèn)證的技術(shù)和裝置。在整個(gè)附圖中使用相同標(biāo)號(hào)表示相同特征和組件:圖1圖示可以實(shí)現(xiàn)用于外圍設(shè)備認(rèn)證的技術(shù)的示例環(huán)境。圖2圖示圖1圖示的通信介質(zhì)的示例,該示例是微型通用串行總線(USB)線。圖3圖示用于至少部分由主機(jī)設(shè)備執(zhí)行的外圍設(shè)備認(rèn)證的(一個(gè)或多個(gè))示例方法。圖4圖示用于至少部分由主機(jī)設(shè)備的外圍設(shè)備執(zhí)行的外圍設(shè)備認(rèn)證的(一個(gè)或多個(gè))示例方法。圖5圖示通過(guò)通用串行總線線通信的圖1的實(shí)體的示例。圖6圖示通過(guò)通用串行總線線通信的圖1的實(shí)體的示例。圖7圖示可以實(shí)現(xiàn)用于外圍設(shè)備認(rèn)證的技術(shù)的示例外圍設(shè)備的各種組件。
具體實(shí)施例方式主機(jī)計(jì)算設(shè)備通常不能在使用外圍設(shè)備之前認(rèn)證該外圍設(shè)備。這種不能認(rèn)證可能導(dǎo)致?lián)p壞或無(wú)法充分利用主機(jī)計(jì)算設(shè)備或外圍設(shè)備。本公開(kāi)描述了可以防止主機(jī)計(jì)算設(shè)備潛在地?fù)p壞外圍設(shè)備或者允許外圍設(shè)備被充分利用的用于外圍設(shè)備認(rèn)證的技術(shù)和裝置。下面的討論首先描述了操作環(huán)境,然后是在此環(huán)境中可以采用的技術(shù),最后是示例裝置。操作環(huán)境圖1圖示可以實(shí)現(xiàn)用于外圍設(shè)備認(rèn)證的技術(shù)的示例環(huán)境100。示例環(huán)境100包括主機(jī)設(shè)備102、通信介質(zhì)104和外圍設(shè)備106。主機(jī)設(shè)備102可以是或包括多種不同類型的計(jì)算設(shè)備,諸如智能電話、具有有限計(jì)算能力的手機(jī)、膝上型電腦、平板計(jì)算機(jī)或臺(tái)式計(jì)算機(jī)。主機(jī)設(shè)備102包括(一個(gè)或多個(gè))主機(jī)處理器108、主機(jī)計(jì)算機(jī)可讀介質(zhì)110 (主機(jī)介質(zhì)110)、有線主機(jī)端口 112和/或無(wú)線主機(jī)端口 114。主機(jī)介質(zhì)110包括認(rèn)證器116,認(rèn)證器116單獨(dú)或者與主機(jī)設(shè)備102的其他元件或外圍設(shè)備106結(jié)合來(lái)認(rèn)證外圍設(shè)備106。外圍設(shè)備106可以是能夠與主機(jī)設(shè)備102通信且向主機(jī)設(shè)備102提供服務(wù)的很多不同類型的設(shè)備之一。雖然可以設(shè)想到其他外圍設(shè)備,但是在此示出6個(gè)示例性外圍設(shè)備。這些示例性外圍設(shè)備包括無(wú)線耳機(jī)106-1、具有五管腳通用串行總線(USB)連接器的智能閃存驅(qū)動(dòng)器106-2、電池充電器106-3、底座106-4、鍵盤(pán)106-5和多功能打印機(jī)106-6。外圍設(shè)備106包括(一個(gè)或多個(gè))外圍設(shè)備處理器118、外圍設(shè)備計(jì)算機(jī)可讀介質(zhì)120(外圍設(shè)備介質(zhì)120)、有線外圍設(shè)備端口 122和/或無(wú)線外圍設(shè)備端口 124。外圍設(shè)備介質(zhì)120包括認(rèn)證模塊126。認(rèn)證模塊126被配置為確定對(duì)從主機(jī)設(shè)備102接收的詢問(wèn)的加密響應(yīng),該加密響應(yīng)指示外圍設(shè)備是可信的。通信介質(zhì)104提供有線或無(wú)線介質(zhì),通過(guò)該介質(zhì),主機(jī)設(shè)備102和外圍設(shè)備106可以進(jìn)行通信。示例包括從有線外圍設(shè)備端口 122到有線主機(jī)端口 112的有線介質(zhì)或者經(jīng)由無(wú)線外圍設(shè)備端口 124和無(wú)線主端口 114通信的無(wú)線連接的無(wú)線介質(zhì)。示例無(wú)線網(wǎng)絡(luò)包括個(gè)域網(wǎng)(PAN)、局域網(wǎng)(LAN)和廣域網(wǎng)(WAN)。圖2圖示通信介質(zhì)104的示例,該示例是微型通用串行總線(USB)線202。示例微型USB線202具有USB連接器,該USB連接器包括5條線路204:接地線路(GND) 206 ;標(biāo)識(shí)線路(ID) 208、第一數(shù)據(jù)線路(D+/-)210 ;第二數(shù)據(jù)線路(D+/-) 212和電源線路(VBUS) 214。下面闡述可以使用微型USB線202的方式。示例技術(shù)下面的討論描述了用于外圍設(shè)備認(rèn)證的技術(shù),其中,在多種情況下,使得能夠更加安全或者更加充分地利用主機(jī)設(shè)備或外圍設(shè)備??梢岳们笆霏h(huán)境實(shí)現(xiàn)這些技術(shù),諸如圖1的認(rèn)證器116和認(rèn)證模塊126。這些技術(shù)包括圖3和圖4中圖示的示例性方法,所述示例性方法被示出為由一個(gè)或多個(gè)實(shí)體執(zhí)行的操作。描述這些方法框的順序不意在解釋為限制性的,而是可以按照任何順序組合任何數(shù)量的描述方法框或組合描述方法框的組合,以實(shí)現(xiàn)所述方法,或者可替換方法,所述方法框包括圖3和圖4中繪制的那些。圖3圖示用于至少部分由主機(jī)設(shè)備執(zhí)行的外圍設(shè)備認(rèn)證的(一個(gè)或多個(gè))示例方法 300。在框320,主機(jī)設(shè)備從外圍設(shè)備讀取或接收信息。此信息可以指示外圍設(shè)備的類型(諸如充電器類型或底座類型)或者外圍設(shè)備的標(biāo)識(shí)符。此信息可以是對(duì)于物理或無(wú)線連接的響應(yīng),諸如微型USB線202或無(wú)線通信。認(rèn)為有讀取或接收此信息的三種示例性方式。在第一種示例中,無(wú)線耳機(jī)106-1從無(wú)線外圍設(shè)備端口 124按照個(gè)域網(wǎng)(WPAN)協(xié)議發(fā)射信號(hào),該信號(hào)由主機(jī)設(shè)備102通過(guò)無(wú)線主端口 114接收。在第二種示例中,主機(jī)設(shè)備102通過(guò)微型USB線202的數(shù)據(jù)線路210和/或212從充電器106-3接收經(jīng)由有線外圍設(shè)備端口 122發(fā)射的信息,主機(jī)設(shè)備102在有線主機(jī)端口 112接收該信息。在此第二種示例中,根據(jù)USB協(xié)議通過(guò)(一個(gè)或多個(gè))數(shù)據(jù)線路210和/或212接收信息,這允許使用半雙工差分信令在D+線路210和D-線路212上進(jìn)行數(shù)據(jù)的傳輸。在半雙工差分信息中,兩個(gè)數(shù)據(jù)線路210和212同時(shí)發(fā)射或同時(shí)接收。在第三種示例中,主機(jī)設(shè)備102使用有線主機(jī)端口 112在連接到外圍設(shè)備端口 122的微型USB線202的ID線路208上讀取電阻。在此第三種示例中,主機(jī)設(shè)備102的認(rèn)證器116通過(guò)確定該ID線路208以及因此的外圍設(shè)備106的電路具有與特定類型外圍設(shè)備一致的電阻而主動(dòng)與外圍設(shè)備106接合。也可以通過(guò)(一個(gè)或多個(gè))數(shù)據(jù)線路210和/或212讀取或接收其他信息,包括下面闡述的詳細(xì)示例。在框304,主機(jī)設(shè)備基于從外圍設(shè)備接收的信息確定是否能夠認(rèn)證外圍設(shè)備。如果能夠認(rèn)證,則(一個(gè)或多個(gè))方法300沿“是”路徑進(jìn)行到框306。如果不能認(rèn)證,則(一個(gè)或多個(gè))方法300沿“否”路徑進(jìn)行到框314。主機(jī)設(shè)備102可以基于外圍設(shè)備的類型或者標(biāo)識(shí)符或僅指示外圍設(shè)備106可能可信的信息來(lái)作出該確定,該信息可以是找到的ID線路208的電阻(例如,200k ohms)。主機(jī)設(shè)備102可以使用認(rèn)證器116和/或電阻分壓器、模擬-數(shù)字轉(zhuǎn)換器,和/或窗口比較器來(lái)確定ID線路208上的電阻,僅列出一些。主機(jī)設(shè)備102通過(guò)認(rèn)證器116可以將該標(biāo)識(shí)符與已知可信的標(biāo)識(shí)符的數(shù)據(jù)庫(kù)進(jìn)行比較。當(dāng)外圍設(shè)備是之前已知為特定屬性的設(shè)備(或一類設(shè)備)時(shí),可以將外圍設(shè)備認(rèn)證為或確定為可能可信,該屬性通常是不被認(rèn)為是可能破壞主機(jī)設(shè)備102的屬性或者被設(shè)計(jì)為與主機(jī)設(shè)備102 —起起作用的屬性。在一些實(shí)施例,可信的外圍設(shè)備是包括能夠成功對(duì)加密詢問(wèn)作出響應(yīng)的認(rèn)證模塊的外圍設(shè)備,所述認(rèn)證模塊諸如認(rèn)證模塊126。在框306,主機(jī)配置數(shù)據(jù)線路以執(zhí)行認(rèn)證協(xié)議。認(rèn)證器116可以配置主機(jī)設(shè)備102 (連接到圖2的數(shù)據(jù)線路210和212)和外圍設(shè)備106的一個(gè)或兩個(gè)數(shù)據(jù)線路,例如,并且使用這些數(shù)據(jù)線路執(zhí)行認(rèn)證協(xié)議。例如,通過(guò)施加在ID線路208上的電壓水平(或偏置ID線路208的電壓水平)使硬件開(kāi)關(guān)在外圍設(shè)備106激活,認(rèn)證器116可以配置外圍設(shè)備106的這些數(shù)據(jù)線路。在一些情況下,認(rèn)證器116配置用于異步接收和發(fā)射的數(shù)據(jù)線路(例如,遵循通用異步接收機(jī)/發(fā)射機(jī)(UART)協(xié)議),諸如在認(rèn)證模塊126已知或推測(cè)被配置用于UART信令的情況下。更詳細(xì)地,UART協(xié)議使用非差分信令,諸如一行用于發(fā)射數(shù)據(jù),另一行用于接收數(shù)據(jù),并且取決于實(shí)現(xiàn)UART協(xié)議可以實(shí)現(xiàn)全雙工或半雙工數(shù)據(jù)傳輸。這不同于使用差分信令的USB協(xié)議,諸如使用兩個(gè)數(shù)據(jù)線路發(fā)射或者使用兩個(gè)數(shù)據(jù)線路接收(在不同時(shí)間),并且僅能夠支持半雙工數(shù)據(jù)傳輸。對(duì)于UART協(xié)議,這兩個(gè)線路的使用是可選的,在圖5的虛線510示出。取決于實(shí)現(xiàn),UART協(xié)議可以僅使用單個(gè)線路來(lái)執(zhí)行半雙工數(shù)據(jù)傳輸(例如,使用單線認(rèn)證協(xié)議)。如圖5所示,認(rèn)證器116可以使用控制器,在此控制器512,能夠?qū)㈤_(kāi)關(guān)513從在514示出第一電阻Rl的第一位置(例如,使得能夠進(jìn)行USB信令配置的位置)切換到在516示出的第二電阻R2。這種到電阻R2的切換在ID線路208上產(chǎn)生差電壓,比較器506感測(cè)到此差電壓,然后使開(kāi)關(guān)502將數(shù)據(jù)線路210和/或212從服務(wù)模塊508 (在此示例中使用USB信令)配置到認(rèn)證模塊126 (在此示例中使用UART信令)。下面更加詳細(xì)闡述認(rèn)證器116配置數(shù)據(jù)線路的方式。對(duì)于無(wú)線通信,認(rèn)證器116與外圍設(shè)備106進(jìn)行通信以有效于在主機(jī)設(shè)備102和外圍設(shè)備106處配置數(shù)據(jù)和控制線路用于無(wú)線通信(例如,利用無(wú)線頭戴式耳機(jī)106-1)且遵循網(wǎng)絡(luò)協(xié)議(例如,在射頻通信(RFCOMM)串行端口連接下外圍設(shè)備106建立的)。注意到,在框306之前,通常先配置這些數(shù)據(jù)線路,用于一個(gè)外圍設(shè)備(例如,具有存儲(chǔ)器和電源的音樂(lè)播放設(shè)備)在一些實(shí)施例中可以執(zhí)行的服務(wù)而不是認(rèn)證,諸如音頻或視頻,讀取和寫(xiě)入數(shù)據(jù)和電力控制。如上所述,在一些實(shí)施例中,此在先配置使用與認(rèn)證配置(例如,UART信令)不同的信令方案(例如,USB信令)。
在框308,使用認(rèn)證配置的數(shù)據(jù)線路來(lái)執(zhí)行認(rèn)證協(xié)議,以確定外圍設(shè)備是否可信??梢允褂酶鞣N認(rèn)證方式。在此進(jìn)行的示例中,在框302接收到的信息包括標(biāo)識(shí)符,響應(yīng)于該標(biāo)識(shí)符,認(rèn)證器116確定標(biāo)識(shí)符是否與可信標(biāo)識(shí)符集合中的一個(gè)匹配,并且響應(yīng)于匹配,通過(guò)認(rèn)證配置的數(shù)據(jù)線路來(lái)詢問(wèn)外圍設(shè)備106。所述可信標(biāo)識(shí)符集合是主機(jī)設(shè)備102可訪問(wèn)的,諸如通過(guò)被存儲(chǔ)在主介質(zhì)110中。如果信息不包括標(biāo)識(shí)符,則認(rèn)證器116可以通過(guò)認(rèn)證配置的數(shù)據(jù)線路或以其他方式從外圍設(shè)備請(qǐng)求標(biāo)識(shí)符,并且進(jìn)行詢問(wèn)-響應(yīng)形式的認(rèn)證。注意到,在框302接收到的標(biāo)識(shí)符和可信標(biāo)識(shí)符集合可以是唯一的和/或加密安全的,盡管對(duì)此沒(méi)有要求。在一個(gè)實(shí)施例中,認(rèn)證器116通過(guò)在認(rèn)證配置的數(shù)據(jù)線路上發(fā)送隨機(jī)數(shù)來(lái)詢問(wèn)外圍設(shè)備106。作為響應(yīng),外圍設(shè)備計(jì)算具有秘密密鑰的響應(yīng)且返回此響應(yīng)。替代地,外圍設(shè)備106可以使用查找表來(lái)選擇對(duì)詢問(wèn)的響應(yīng)。認(rèn)證器116接收該響應(yīng),將其與期望響應(yīng)進(jìn)行比較,并且如果他們匹配,則確定外圍設(shè)備106可信。這樣,認(rèn)證器116和/或外圍設(shè)備106 (例如,使用認(rèn)證模塊126)可以執(zhí)行一個(gè)或多個(gè)加密算法。響應(yīng)于外圍設(shè)備提供期望響應(yīng),“是”路徑從框310進(jìn)行到框312,或者響應(yīng)于由于對(duì)詢問(wèn)的不期望響應(yīng)而導(dǎo)致外圍設(shè)備沒(méi)有被認(rèn)證,“否”路徑從框310進(jìn)行到框314。在框312,主機(jī)配置該認(rèn)證配置的數(shù)據(jù)線路以充分使用。認(rèn)證配置的數(shù)據(jù)線路的此重新配置取決于各種因素,諸如主機(jī)設(shè)備102或外圍設(shè)備106對(duì)外圍設(shè)備106和/或主機(jī)設(shè)備102的功能和服務(wù)是否具有控制。然而,至少,認(rèn)證器116將這些數(shù)據(jù)線路從認(rèn)證模塊斷開(kāi),將這些數(shù)據(jù)線路建立到外圍設(shè)備106的服務(wù)模塊(例如,控制器或服務(wù)供應(yīng)商)。認(rèn)證器116可以通過(guò)ID線路208或數(shù)據(jù)線路210或212之一,諸如通過(guò)向線路208、210或212之一傳遞電壓,將這些數(shù)據(jù)線路從認(rèn)證切換到服務(wù)。繼續(xù)參照?qǐng)D5的示例,在確認(rèn)認(rèn)證了外圍設(shè)備106之后,控制器512從516示出的ID線路208具有電阻R2的第二位置切換回到514示出的ID線路208具有電阻Rl的第一位置。因此,控制器512從數(shù)據(jù)線路210和212的認(rèn)證配置(在此,使用UART信令的認(rèn)證模塊126)切換到服務(wù)配置(使用USB信令的服務(wù)模塊508)。然而,在一些實(shí)施例中,認(rèn)證器116切換到數(shù)據(jù)線路210和/或212的第三配置,而不是回到服務(wù)模塊508 (未示出)。認(rèn)證器116也可以以主機(jī)設(shè)備102可以與外圍設(shè)備106行動(dòng)和互動(dòng)的方式來(lái)配置??紤]主機(jī)設(shè)備102是通過(guò)微型USB線202物理連接到電池充電器106-3的智能電話的情況。在這樣的情況下,認(rèn)證器116配置數(shù)據(jù)線路,以接受從電池充電器106-3可用的任何充電服務(wù)。認(rèn)證器116也可以配置主機(jī)設(shè)備102,以響應(yīng)于確定外圍設(shè)備106可信而自動(dòng)啟動(dòng)軟件應(yīng)用。示例包括:用于認(rèn)證的電池充電器106-3的用戶界面,其示出電池圖標(biāo)和完成充電處理需要的時(shí)間;用于認(rèn)證的車(chē)底座的映射應(yīng)用;用于認(rèn)證的單聲道(立體聲)揚(yáng)聲器或耳機(jī)外圍設(shè)備(例如,無(wú)線頭戴式耳機(jī)106-1)的電話應(yīng)用;用于認(rèn)證的智能閃存驅(qū)動(dòng)器106-2的文件管理應(yīng)用;用于認(rèn)證的底座106-4(具有揚(yáng)聲器)的音頻媒體播放應(yīng)用;用于在主機(jī)設(shè)備102的觸摸屏上打字的觸摸屏用戶界面的去除,諸如當(dāng)主機(jī)設(shè)備102是平板計(jì)算機(jī)且用于認(rèn)證的鍵盤(pán)106-5外圍設(shè)備;以及用于認(rèn)證的多功能打印機(jī)106-6的打印機(jī)用戶接口和打印機(jī)驅(qū)動(dòng)器應(yīng)用。這些僅是認(rèn)證器116響應(yīng)于確定外圍設(shè)備106是可信的而可以配置主機(jī)設(shè)備102的許多方式中的一些方式。
在框314,主機(jī)設(shè)備將認(rèn)證配置的數(shù)據(jù)線路重新配置成受限或不使用。認(rèn)證器116可以阻止使用數(shù)據(jù)線路,從而停止與外圍設(shè)備106的通信,諸如當(dāng)外圍設(shè)備沒(méi)有被認(rèn)證時(shí)。然而,在一些情況下,認(rèn)證器116將數(shù)據(jù)線路配置成受限使用,盡管這取決于外圍設(shè)備106的類型以及主機(jī)設(shè)備或外圍設(shè)備是否維護(hù)外圍設(shè)備的控制。例如,即使在外圍設(shè)備不可信時(shí),認(rèn)證器116也可以建立這些數(shù)據(jù)線路以使外圍設(shè)備106的組件(在此,能夠提供充電的組件)活動(dòng),但是將限制外圍設(shè)備106的服務(wù)或主機(jī)設(shè)備102的服務(wù)。在這樣的情況下,認(rèn)證器116可以放棄自動(dòng)啟動(dòng)應(yīng)用程序或者拒絕外圍設(shè)備106的一些服務(wù)。例如,假設(shè)電池充電器106-3沒(méi)有被認(rèn)證。還假設(shè)主機(jī)設(shè)備102控制來(lái)自電池充電器106-3的充電。認(rèn)證器116斷開(kāi)認(rèn)證配置數(shù)據(jù)線路與認(rèn)證程序的連接,并且建立這些數(shù)據(jù)線路以使電池充電器106-3的組件活動(dòng),其中,主機(jī)設(shè)備102將電池充電器106-3的服務(wù)限制到涓流充電且不允許快速充電。主機(jī)設(shè)備102還可以將總充電限制到特定量,諸如足夠進(jìn)行緊急呼叫的充電。圖4圖示至少部分由主機(jī)設(shè)備的外圍設(shè)備執(zhí)行的外圍設(shè)備認(rèn)證的(一個(gè)或多個(gè))示例方法400。描述這些方法框的順序不意在解釋為限制性的,而是可以按照任何順序組合任何數(shù)目的描述方法框或組合描述方法框的組合,以實(shí)現(xiàn)所述方法,或者可替換方法。在框402,經(jīng)由通用串行總線連接器的標(biāo)識(shí)線路,使信息可用于主機(jī)設(shè)備,該信息指示主機(jī)設(shè)備的外圍設(shè)備能夠認(rèn)證。從圖3中的主機(jī)設(shè)備角度注意到,此信息包括外圍設(shè)備106的類型或標(biāo)識(shí)符,以及潛在可信性的簡(jiǎn)單指示,諸如外圍設(shè)備106指示(包括被動(dòng)地)其包括認(rèn)證模塊。當(dāng)該信息是外圍設(shè)備的類型或潛在可信性的簡(jiǎn)單指示時(shí),認(rèn)證模塊126可以通過(guò)設(shè)置或增加圖2的標(biāo)識(shí)線路208上的電阻來(lái)使此信息可用。然而,外圍設(shè)備106的類型或標(biāo)示符也可以在通過(guò)(一個(gè)或多個(gè))數(shù)據(jù)線路210或212的處理中稍后提供,諸如通過(guò)框404之后的認(rèn)證配置的數(shù)據(jù)線路。在框404,外圍設(shè)備經(jīng)由標(biāo)識(shí)線路從主機(jī)設(shè)備接收認(rèn)證命令,認(rèn)證命令有效于配置外圍設(shè)備以確定對(duì)認(rèn)證詢問(wèn)的加密響應(yīng)。此認(rèn)證命令可以諸如通過(guò)施加到ID線路208上的電壓水平來(lái)提供指令或使外圍設(shè)備106改變。在下面的圖5和圖6中描述了兩個(gè)示例。圖5圖示通過(guò)具有5條線路(GND線路未示出)的通用串行總線連接器進(jìn)行通信的主機(jī)設(shè)備102和外圍設(shè)備106的示例。外圍設(shè)備106具有配置開(kāi)關(guān)502、標(biāo)識(shí)線路電阻504、電壓比較器506、至少一個(gè)服務(wù)模塊508和認(rèn)證模塊126,通過(guò)服務(wù)模塊508,可以提供、訪問(wèn)或控制外圍設(shè)備服務(wù)。配置開(kāi)關(guān)502被配置成,在此示例中,通過(guò)響應(yīng)于標(biāo)識(shí)線路208上的電壓而切換數(shù)據(jù)線路210和212在外圍設(shè)備106的認(rèn)證模式和外圍設(shè)備106的使用模式之間切換。對(duì)于此進(jìn)行的示例,主機(jī)設(shè)備102在標(biāo)識(shí)線路208上產(chǎn)生電壓,有效于克服標(biāo)識(shí)線路電阻504,這使得電壓比較器506將數(shù)據(jù)線路210和212連接從服務(wù)模塊508切換到認(rèn)證模塊126 (使用開(kāi)關(guān)502)。圖5還示出VBUS線路214,認(rèn)證模塊126可以從VBUS線路214接收足以對(duì)認(rèn)證詢問(wèn)作出響應(yīng)的電力。VBUS線路214在外圍設(shè)備106不具有電源或者當(dāng)前沒(méi)有足夠的電力來(lái)操作認(rèn)證模塊126的情況下供電。這樣,認(rèn)證命令完成電路,從而允許認(rèn)證模塊126對(duì)認(rèn)證詢問(wèn)作出響應(yīng)。圖6圖示主機(jī)設(shè)備102和外圍設(shè)備106的示例,在此示出通過(guò)USB連接602通信。外圍設(shè)備106具有運(yùn)算放大比較器604,運(yùn)算放大比較器604能夠(基于主機(jī)設(shè)備102設(shè)置的電壓)控制復(fù)用器606,以有效于配置數(shù)據(jù)線路210、212到服務(wù)模塊508或認(rèn)證模塊126。如所示,在這些示例中,主機(jī)微控制器608通過(guò)經(jīng)過(guò)各種電阻的ID線路208且使用主機(jī)開(kāi)關(guān)610來(lái)控制運(yùn)算放大比較器604的動(dòng)作。此主機(jī)開(kāi)關(guān)610通過(guò)調(diào)整ID線路208上主機(jī)102中的上拉電阻、612示出的第一電阻Rl和614示出的第二電阻R2來(lái)控制運(yùn)算放大比較器604,其受到外圍設(shè)備106中616示出的電阻R3的影響(ID線路208通過(guò)電阻R3經(jīng)由接地線路206接地)。在這種情況下注意到,主機(jī)設(shè)備102也使用主機(jī)微控制器608通過(guò)主機(jī)復(fù)用器618來(lái)控制數(shù)據(jù)線路210、212的使用,以有效于使用主機(jī)設(shè)備102的元件,S卩,USB模塊620、認(rèn)證器116、通用異步接收機(jī)/發(fā)射機(jī)(UART)模塊622和/或其他使用模塊624。在主機(jī)102和外圍設(shè)備106的這些不例中,主機(jī)微控制器608執(zhí)行上述屬于認(rèn)證器116的部分操作。在主機(jī)微控制器608通過(guò)主機(jī)復(fù)用器618將UART模塊622連接到數(shù)據(jù)線路210、212之后,認(rèn)證器116通過(guò)UART模塊622上的串行通信來(lái)執(zhí)行認(rèn)證協(xié)議。如果認(rèn)證器116確定外圍設(shè)備是可信的,則主機(jī)微控制器608將數(shù)據(jù)線路210、212從認(rèn)證切換到服務(wù)。在這樣的情況下,主機(jī)微控制器608通過(guò)主機(jī)復(fù)用器618和復(fù)用器606將USB模塊620或其他使用模塊624連接到服務(wù)模塊508。這樣,主機(jī)設(shè)備102可以使用外圍設(shè)備106的服務(wù)。返回圖4,在框406,外圍設(shè)備經(jīng)由USB線的數(shù)據(jù)線路從主機(jī)設(shè)備接收認(rèn)證詢問(wèn)。如上所述,可以通過(guò)認(rèn)證配置的數(shù)據(jù)線路210和212從主機(jī)設(shè)備102的認(rèn)證器116接收認(rèn)證詢問(wèn)。在一些情況下,在框404之后但在框406之前,外圍設(shè)備使得通過(guò)認(rèn)證配置的數(shù)據(jù)線路標(biāo)識(shí)符對(duì)主機(jī)設(shè)備可用。在這樣的情況下,認(rèn)證詢問(wèn)和響應(yīng)可以基于此標(biāo)識(shí)符。例如,假設(shè)認(rèn)證詢問(wèn)是可以基于或可以不基于提供的標(biāo)識(shí)符的大隨機(jī)數(shù)。
在框408,確定對(duì)認(rèn)證詢問(wèn)的加密響應(yīng)。盡管可以使用其他方式的認(rèn)證,但是,在此示例中,外圍設(shè)備106的認(rèn)證模塊126基于在框406接收到的大隨機(jī)數(shù)而使用秘密密鑰計(jì)算響應(yīng)。在框410,經(jīng)由USB連接器的數(shù)據(jù)線路使用UART信令將加密響應(yīng)通信到主機(jī)設(shè)備。如上所述,主機(jī)設(shè)備102的認(rèn)證器116可以接收加密響應(yīng),將其與期望響應(yīng)進(jìn)行比較,并且如果匹配,則認(rèn)證外圍設(shè)備106。在替代實(shí)施例中,認(rèn)證詢問(wèn)和響應(yīng)分別包括對(duì)于安全存儲(chǔ)在外圍設(shè)備106 (例如,在認(rèn)證模塊126中)的標(biāo)識(shí)符的請(qǐng)求以及具有該標(biāo)識(shí)符的響應(yīng)。在此示例中,框408的確定可以僅在查找表或其他數(shù)據(jù)結(jié)構(gòu)中尋找此標(biāo)識(shí)符,在框410,經(jīng)由認(rèn)證配置的數(shù)據(jù)線路來(lái)通信此標(biāo)識(shí)符。主機(jī)設(shè)備102的認(rèn)證器116可以接收此標(biāo)識(shí)符,將其與對(duì)外圍設(shè)備106期望的一個(gè)或多個(gè)可信標(biāo)識(shí)符進(jìn)行比較,并且如果找到匹配,則認(rèn)證外圍設(shè)備106。在框412,經(jīng)由USB線的標(biāo)識(shí)線路從主機(jī)設(shè)備接收使用命令,使用命令有效于配置外圍設(shè)備使用。當(dāng)外圍設(shè)備106從主機(jī)設(shè)備102接收到此使用命令時(shí),該使用命令影響外圍設(shè)備106提供的服務(wù)和功能。然而,如上所述,主機(jī)設(shè)備102還可以基于外圍設(shè)備106的認(rèn)證來(lái)提供或限制主機(jī)設(shè)備102的各種應(yīng)用和服務(wù)??紤]外圍設(shè)備106是主機(jī)設(shè)備102認(rèn)證的智能閃存驅(qū)動(dòng)器106_2的情況。在這樣的情況下,使用命令使得認(rèn)證配置的數(shù)據(jù)線路從認(rèn)證模塊126斷開(kāi)且耦合到服務(wù)模塊508,以向閃速存儲(chǔ)器發(fā)送數(shù)據(jù)和從閃速存儲(chǔ)器接收數(shù)據(jù)。在替代情況下,智能閃存驅(qū)動(dòng)器106-2沒(méi)有被認(rèn)證,外圍設(shè)備106不能接收此使用命令,而是向主機(jī)設(shè)備102輸入U(xiǎn)SB數(shù)據(jù)的數(shù)據(jù)線路被阻擋,但是允許從主機(jī)設(shè)備102輸出USB數(shù)據(jù),以有效于允許對(duì)智能閃存驅(qū)動(dòng)器106-2的只寫(xiě)能力。如果當(dāng)外圍設(shè)備106沒(méi)有被認(rèn)證時(shí),數(shù)據(jù)線路被切換以使用服務(wù),則主機(jī)設(shè)備102可以限制外圍設(shè)備106的功能(盡管沒(méi)有直接阻擋數(shù)據(jù)線路)。在其他情況下,主機(jī)設(shè)備102可以完全阻擋到外圍設(shè)備106的數(shù)據(jù)通信以及來(lái)自外圍設(shè)備106的數(shù)據(jù)通信。如上所述,認(rèn)證器116可以限制主機(jī)設(shè)備102的功能和服務(wù),而不管認(rèn)證器116是否限制外圍設(shè)備106。盡管在上述多種示例中描述了兩種模式,但是也可以預(yù)想其他模式。例如,圖5的比較器506具有兩個(gè)輸出,從而能夠進(jìn)行三種模式,諸如除了上述USB數(shù)據(jù)和認(rèn)證模式之外的模擬音頻模式。示例外圍設(shè)備圖7圖示示例外圍設(shè)備700的各種組件,可以在硬件、固件和/或軟件中實(shí)現(xiàn)外圍設(shè)備700,或者如參照之前的圖1-6中的任何一個(gè)來(lái)實(shí)現(xiàn)外圍設(shè)備認(rèn)證所描述的。示例外圍設(shè)備700可以實(shí)現(xiàn)在固定或移動(dòng)設(shè)備中,所述固定或移動(dòng)設(shè)備可以是媒體設(shè)備、計(jì)算機(jī)設(shè)備、電視機(jī)頂盒、視頻處理和/或渲染設(shè)備、家電設(shè)備(例如,封閉和密封的計(jì)算資源,諸如一些數(shù)字視頻記錄器或全球定位衛(wèi)星設(shè)備)、游戲設(shè)備、電子設(shè)備、車(chē)輛、工作站、WLAN對(duì)等設(shè)備/客戶端站和/或可以通過(guò)有線或無(wú)線通信介質(zhì)與主機(jī)設(shè)備通信的任何其他類型設(shè)備。圖1在106示出這些的一些示例。不例外圍設(shè)備700可以與電子電路、微處理器、存儲(chǔ)器、輸入-輸出(I/O)邏輯控制、通信接口和組件、運(yùn)行整個(gè)設(shè)備所需要的其他硬件、固件和/或軟件集成。示例外圍設(shè)備700還可以包括集成數(shù)據(jù)總線(未示出),該集成數(shù)據(jù)總線耦合外圍設(shè)備的各種組件,用于組件之間的數(shù)據(jù)通信。示例外圍設(shè)備700包括各種組件,諸如輸入-輸出(I/O)邏輯控制702(例如,包括電子電路)和微處理器704 (例如,微控制器或數(shù)字信號(hào)處理器的任何一個(gè))。不例外圍設(shè)備700還包括存儲(chǔ)器706,存儲(chǔ)器706可以是任何類型的隨機(jī)存取存儲(chǔ)器(RAM)、低延遲非易失性存儲(chǔ)器(例如,閃速存儲(chǔ)器)、只讀存儲(chǔ)器(ROM)和/或其他適當(dāng)?shù)碾姅?shù)據(jù)儲(chǔ)存。示例外圍設(shè)備700還包括各種固件和/或軟件,諸如操作系統(tǒng)708,操作系統(tǒng)708可以是存儲(chǔ)器706維護(hù)的且由微處理器704執(zhí)行的計(jì)算機(jī)可執(zhí)行指令。示例外圍設(shè)備700還可以包括其他各種通信接口和組件,無(wú)線LAN(WLAN)或無(wú)線PAN(WPAN)組件、其他組件、固件和/或軟件。示例外圍設(shè)備700包括配置開(kāi)關(guān)502、服務(wù)模塊508和認(rèn)證模塊126。參照?qǐng)D1、5和/或6所示的相應(yīng)組件描述了這些組件及其功能的示例。示例外圍設(shè)備700中的認(rèn)證模塊126可以獨(dú)立地或者與其他實(shí)體組合被實(shí)現(xiàn)為存儲(chǔ)器706維護(hù)的且由微處理器704執(zhí)行的計(jì)算機(jī)可執(zhí)行指令,以實(shí)現(xiàn)在此描述的各種實(shí)施例和/或特征。認(rèn)證模塊126也可以與外圍設(shè)備的其他實(shí)體集成在一起,諸如與配置開(kāi)關(guān)501集成。替代地,或附加地,認(rèn)證模塊126和其他組件可以被實(shí)現(xiàn)為結(jié)合I/O邏輯控制702和/或示例外圍設(shè)備700的其他信號(hào)處理和控制電路實(shí)現(xiàn)的硬件、固件、固定邏輯電路或其任何組合。盡管已經(jīng)以特定于結(jié)構(gòu)和/或方法動(dòng)作的語(yǔ)言描述了本發(fā)明,但是所附權(quán)利要求限定的發(fā)明不一定限于描述的特定特征或動(dòng)作。而是,作為實(shí)現(xiàn)要求保護(hù)的發(fā)明的示例形式公開(kāi)特定特征和動(dòng)作。
權(quán)利要求
1.一種方法,包括: 基于從與主機(jī)設(shè)備通信的外圍設(shè)備讀取或接收到的信息,確定所述外圍設(shè)備能夠認(rèn)證; 配置數(shù)據(jù)線路,以執(zhí)行認(rèn)證協(xié)議; 使用有效于認(rèn)證所述外圍設(shè)備的認(rèn)證配置的數(shù)據(jù)線路來(lái)執(zhí)行所述認(rèn)證協(xié)議;以及 響應(yīng)于所述外圍設(shè)備被認(rèn)證,配置所述認(rèn)證配置的數(shù)據(jù)線路用于充分使用,或者 響應(yīng)于所述外圍設(shè)備沒(méi)有被認(rèn)證,配置所述認(rèn)證配置的數(shù)據(jù)線路用于限制使用或不使用。
2.如權(quán)利要求1所述的方法, 其中,在配置所述數(shù)據(jù)線路以執(zhí)行所述認(rèn)證協(xié)議之前,所述數(shù)據(jù)線路被配置用于差分信令; 其中,配置所述數(shù)據(jù)線路以執(zhí)行所述認(rèn)證協(xié)議的步驟配置所述數(shù)據(jù)線路用于非差分信令;以及 其中,配置所述認(rèn)證配置的數(shù)據(jù)線路用于充分使用的步驟配置所述數(shù)據(jù)線路返回到所述差分信令。
3.如權(quán)利要求2所述的方法,其中,所述非差分信令是UART協(xié)議的一部分,并且所述差分信令是USB協(xié)議的一部分。
4.如權(quán)利要求1所述的方法,其中,經(jīng)由具有5條或更多條線路的通用串行總線連接器的標(biāo)識(shí)線路,從所述外圍設(shè)備讀取所述信息。
5.如權(quán)利要求4所述的方法,還包括: 確定所述標(biāo)識(shí)線路具有與能夠認(rèn)證的所述外圍設(shè)備一致的電阻,用于確定所述外圍設(shè)備能夠認(rèn)證的所述信息是所述標(biāo)識(shí)線路上的電阻值。
6.如權(quán)利要求4所述的方法,進(jìn)一步包括:配置所述5條或更多條線路的電源線路,所述配置有效于從所述外圍設(shè)備接收電力或向所述外圍設(shè)備發(fā)射電力。
7.如權(quán)利要求1所述的方法,其中,配置所述數(shù)據(jù)線路以執(zhí)行所述認(rèn)證協(xié)議的步驟包括:配置所述主機(jī)設(shè)備,以使用所述認(rèn)證配置的數(shù)據(jù)線路來(lái)執(zhí)行單線認(rèn)證協(xié)議。
8.如權(quán)利要求1所述的方法,其中,所述信息是從所述外圍設(shè)備讀取的并且所述信息標(biāo)識(shí)所述外圍設(shè)備的類型,并且所述類型指示所述外圍設(shè)備能夠認(rèn)證。
9.如權(quán)利要求1所述的方法,其中,通過(guò)所述認(rèn)證配置的數(shù)據(jù)線路,從所述外圍設(shè)備讀取或接收所述外圍設(shè)備的類型,所述類型影響所述認(rèn)證協(xié)議或所述充分使用或限制使用。
10.如權(quán)利要求1所述的方法,進(jìn)一步包括: 響應(yīng)于所述外圍設(shè)備線路被認(rèn)證,啟動(dòng)軟件應(yīng)用。
11.如權(quán)利要求1所述的方法,其中,執(zhí)行所述認(rèn)證協(xié)議包括: 從所述外圍設(shè)備請(qǐng)求標(biāo)識(shí)符; 從所述外圍設(shè)備接收所述標(biāo)識(shí)符; 確定所述標(biāo)識(shí)符是否與可信標(biāo)識(shí)符集合中的一個(gè)匹配;以及 響應(yīng)于所述標(biāo)識(shí)符與所 述可信標(biāo)識(shí)符集合中的一個(gè)匹配,通過(guò)所述認(rèn)證配置的數(shù)據(jù)線路來(lái)詢問(wèn)所述外圍設(shè)備。
12.—種方法,包括:經(jīng)由通用串行總線USB連接器的標(biāo)識(shí)線路,使信息對(duì)主機(jī)設(shè)備可用,所述信息指示所述主機(jī)設(shè)備的外圍設(shè)備能夠認(rèn)證; 經(jīng)由所述標(biāo)識(shí)線路,從所述主機(jī)設(shè)備接收認(rèn)證命令,所述認(rèn)證命令有效于配置所述外圍設(shè)備,以確定對(duì)認(rèn)證詢問(wèn)的加密響應(yīng); 經(jīng)由所述USB連接器的數(shù)據(jù)線路,從所述主機(jī)設(shè)備接收所述認(rèn)證詢問(wèn); 經(jīng)由所述USB連接器的所述數(shù)據(jù)線路,向所述主機(jī)設(shè)備通信所述加密響應(yīng);以及經(jīng)由所述USB連接器的所述標(biāo)識(shí)線路,從所述主機(jī)設(shè)備接收使用命令,所述使用命令有效于配置所述外圍設(shè)備用于使用。
13.如權(quán)利要求12 所述的方法, 其中,在經(jīng)由通用串行總線USB連接器的數(shù)據(jù)線路從所述主機(jī)設(shè)備接收所述認(rèn)證詢問(wèn)之前,所述數(shù)據(jù)線路被配置用于USB協(xié)議; 其中,在經(jīng)由所述USB連接器的數(shù)據(jù)線路從所述主機(jī)設(shè)備接收所述認(rèn)證詢問(wèn)和經(jīng)由所述USB連接器的所述數(shù)據(jù)線路向所述主機(jī)設(shè)備通信所述加密響應(yīng)期間,所述數(shù)據(jù)線路被配置用于通用異步接收機(jī)/發(fā)射機(jī)UART協(xié)議;以及 其中,在經(jīng)由所述USB連接器的所述標(biāo)識(shí)線路從所述主機(jī)設(shè)備接收所述使用命令之后,將所述數(shù)據(jù)線路重新配置用于所述USB協(xié)議。
14.如權(quán)利要求12所述的方法,其中,使信息對(duì)所述主機(jī)設(shè)備可用的步驟包括: 增加所述標(biāo)識(shí)線路上的電阻。
15.如權(quán)利要求12所述的方法,其中,所述信息標(biāo)識(shí)外圍設(shè)備的類別。
16.如權(quán)利要求12所述的方法,其中,所述認(rèn)證命令閉合所述外圍設(shè)備中的開(kāi)關(guān),以完成電路,所述電路包括所述USB連接器的所述數(shù)據(jù)線路和所述外圍設(shè)備的認(rèn)證模塊,所述認(rèn)證模塊用于確定對(duì)所述認(rèn)證詢問(wèn)的所述加密響應(yīng)。
17.如權(quán)利要求16所述的方法, 其中,所述認(rèn)證命令進(jìn)一步有效于從服務(wù)模塊斷開(kāi)所述數(shù)據(jù)線路, 其中,所述使用命令從所述認(rèn)證模塊斷開(kāi)所述數(shù)據(jù)線路并且將所述數(shù)據(jù)線路連接到所述服務(wù)模塊。
18.—種主機(jī)設(shè)備的外圍設(shè)備,所述外圍設(shè)備包括: 配置開(kāi)關(guān),所述配置開(kāi)關(guān)被配置成:響應(yīng)于經(jīng)由通用串行總線USB連接器的標(biāo)識(shí)線路接收到的命令而切換所述USB連接器的一個(gè)或多個(gè)數(shù)據(jù)線路,所述一個(gè)或多個(gè)數(shù)據(jù)線路被配置成在所述外圍設(shè)備的認(rèn)證模塊與所述外圍設(shè)備的服務(wù)模塊之間切換, 其中,所述認(rèn)證模塊被配置成:確定對(duì)經(jīng)由所述一個(gè)或多個(gè)數(shù)據(jù)線路從所述主機(jī)設(shè)備接收到的詢問(wèn)的加密響應(yīng),所述加密響應(yīng)能用于認(rèn)證所述外圍設(shè)備。
19.如權(quán)利要求18所述的外圍設(shè)備,進(jìn)一步包括: 五管腳USB端口,所述五管腳USB端口通信地耦合到所述標(biāo)識(shí)線路、所述一個(gè)或多個(gè)數(shù)據(jù)線路中的兩個(gè)數(shù)據(jù)線路、電源線路和接地線路。
20.如權(quán)利要求18所述的外圍設(shè)備,進(jìn)一步包括: 電阻元件,所述電阻元件耦合到所述標(biāo)識(shí)線路,所述電阻元件被配置成能被確定為所述標(biāo)識(shí)線路上的電阻。
全文摘要
本文檔描述了外圍設(shè)備認(rèn)證的技術(shù)(300,400)和裝置(100,500,600,700)。技術(shù)(300,400)和裝置(100,500,600,700)可以配置數(shù)據(jù)線路(306),用于主機(jī)設(shè)備(102)和外圍設(shè)備(106)之間的認(rèn)證,使用這些配置的數(shù)據(jù)線路認(rèn)證(308,310)外圍設(shè)備(106),然后重新配置(312,314)數(shù)據(jù)線路的使用。
文檔編號(hào)G06F21/70GK103221962SQ201180056054
公開(kāi)日2013年7月24日 申請(qǐng)日期2011年10月31日 優(yōu)先權(quán)日2010年11月22日
發(fā)明者伊爾凡·納西爾, 弗朗西斯·P·布克, 桑賈伊·古普塔, 羅伯特·M·約翰遜 申請(qǐng)人:摩托羅拉移動(dòng)有限責(zé)任公司