專利名稱::具有特許存儲器的設(shè)備及其應(yīng)用的制作方法具有4^午,器的i殳"^^^其應(yīng)用相關(guān)專利的交叉引用基于35USC§119,此專利申請要求臨時申請日為2008年9月5日,臨時序號為61/094^541,且標(biāo)題為"SecureMethodsforSystemonaChipCryptographicKeyAccessandStorage"的臨時H^的專利申請的^jy5L^M頁域本發(fā)明總體上涉及包括,器的i殳備,更M而言,涉及對設(shè)備內(nèi)的,器的"^訪問。背景凈沐"~^分人推動著使DVD的浮M內(nèi)容(和/或^、數(shù)字格i^fW其它有版城者所有權(quán)的信息)免it^Mt權(quán)"fM(例如,^t減制、分發(fā)等)的危險的愿望,這些人認(rèn)為M的^^只產(chǎn)權(quán)價值^^者毫無價值。因而,為翁:字4言息創(chuàng)建^系統(tǒng)與企圖破壞它們的,繁^J'司的戰(zhàn)—i^。絲戰(zhàn)斗因在:HS殳備上實現(xiàn)電f"i殳4^性的絲(例如,財DVD功能的計算機(jī))而加劇,并且因為將^LM處3Sf更件實現(xiàn)為獨(dú)立的芯片上系統(tǒng)(SOC)設(shè)"進(jìn)一步加劇。在許多情況下,所述^W處^^更件SOCMM的,系a"H^f端用戶寫入他們自己的應(yīng)用禾I^,這:t^M用戶的應(yīng)用禾i^可以共享與安全系^f目同的處理器和絲器空間。這使得^^辦易受攻擊。為了斷氐受攻擊的可能性,視頻處理硬件需要被P艮制為只沐ft特別預(yù)定類型的密碼處理(cryptographic)標(biāo)準(zhǔn)(例如,BD、DTCP、CPRM、電纜卡(CableCard)等)的一個或多個的i午可禾;fr密密鑰。通常,這^N!Sj^應(yīng)用禾l/H示準(zhǔn)包括廢棄(revocation)機(jī)制,借此,如^^密密鑰值被公布于眾,那么泄密的i殳備的^^功育^^棄,并且使該設(shè)備不能工作。同樣地,非常希望的是,把秘密密鑰按照它們無法被設(shè)備固^H方問的方式4MW(以i^i^棄)。這-*1通過將秘密密鑰^#在一次性可編程(OTP),器中來實現(xiàn)的。雖然^fMOTP,器已經(jīng)成為^^處理設(shè)備內(nèi)存^^密密鑰的主要機(jī)制,但是它不是一種萬無一失的方式。例如,當(dāng)多個密碼處理客戶端(cryptographicclientalgorithm)(例如,用于l^fti;^(口RSA、TSD、1394、DMA等的特定密碼處理算法的硬件塊)可能向OTP,H^"步地發(fā)出讀或?qū)懻埱蟛^斤述請求不是最小單元(atomic)時,會出現(xiàn)務(wù)H1問題。另外,由于與OTP賴器相關(guān)聯(lián)的豐嫂,較大密鑰值^aij分為較小的塊,這些較小的塊具有強(qiáng)加于每塊之上的特定讀/寫細(xì)'J。由此,必須把寸密碼處^戶端的宏級限制向下關(guān)^J4^戶^^1^|#-~#^^訪問。作為一^#定的示例,RSA算法能夠執(zhí)行2048位RSA運(yùn)算,這要^^密鑰存^i殳備中讀取64位塊32次,以便組合指數(shù)。如果密鑰被意圖用作2048位指數(shù),那么每個64位塊的讀取必須與密鑰的希望用itf目關(guān)耽即,這些塊必須具有用于指示哪個密碼處S^戶端^^i情問與較大密鑰相關(guān)聯(lián)的特定塊的屬性。另一個務(wù)t問題在于密碼處理強(qiáng)度^^^于使用大的密鑰(例如,對于RSA而言,高達(dá)2048位,或者對于某些AES模式來說256位)。然而,如果由較為薄弱的密碼處S^戶端使用大的密鑰,每次一個64位塊,那么所述大的密鑰一次^l皮攻擊64位(或者更少)。攻擊大密鑰的又一種方iUj用0來重寫部分密鑰,然后,利用弱化的密鑰^^分來IMffl定的辦。每當(dāng)部分密鑰被以這種方煩壞時,^^P分能夠被確定出,狄因為部分密鑰jH^'J是已知的。更進(jìn)一步講,某些密碼處3S^戶端財以各級強(qiáng)度^ff^的能力;例如,所述RSA可以&置為可變大小模改,而3DES能夠l^^為DES操怍'黑客能夠^MJ這些辦來^M亍較弱的辦,并且由此利用已,的辦來攻擊大密鑰,甚至,某些密碼處^^戶端^^^^辦中的控制字(CW)和初始向量(IV)。當(dāng)已知明文和CW時,在^ft中通過將CW用作IV,可以攻擊妙系統(tǒng)的完整性,這會用來揭示CW值。##密碼處理#^完塾性的另一重要方面是控制密碼處理辦結(jié)果的目的地。例如,從SOC輸出的內(nèi)^4保留在SOC內(nèi)的內(nèi)斜目比,^臨更大的風(fēng)險。攻擊的又一種模式I6H^J密鑰、CW或者IV輛密內(nèi)容,而不^口密內(nèi)容。例如,可能打算加密內(nèi)容,然而黑客可能^^密鑰^^fUMf密內(nèi)容。除黑客的W^卜,^內(nèi)容信息的^^ias^:到來自;^t權(quán)公共^^的風(fēng)險。例如,如果被惹怒的雇員在互聯(lián)網(wǎng)上公布密鑰的算法和位置,那么所述算法的妙性就喪失了。照此,妙系統(tǒng)的風(fēng)險不僅錄自于夕Np人員對算法妙性的破壞,而JU^自于內(nèi)部人員對妙系統(tǒng)完整f生的故意損害。因此,存樹至少部分iL^Ji述妙問題中的一個或多個^4^殳脅系結(jié)構(gòu)的需要。圖l是^^本發(fā)明的^M圖形顯TfH殳備的示奮船匡圖2是^、本發(fā)明的設(shè)備的實施例的示奮魁匡圖3是^M本發(fā)明的設(shè)備的另一實施例的示奮^匡圖4是^、本發(fā)明用f"i方問密鑰(cryptographickey)的方法的實施例的邏輯圖5^!^im^^發(fā)明的請求的示例的圖;圖6是^m本發(fā)明的MJ,J的示例的圖;圖7是^f^、本發(fā)明用于處^t密鑰的^t訪問請求的方法的實施例的邏輯圖8是^R本發(fā)明用于處3^t密鑰的寫入訪問請求的方法的實施例的邏輯圖9是^^本發(fā)明用于解樹密鑰的請求的方法的實施例的邏輯圖10pi^^4^發(fā)明的一次性可編禾i^器的示例的圖ii是^4^L明的設(shè)4^i另一實施例的示奮魁匡圖12是>^、本發(fā)明用預(yù)問#^4#器的方法的實施例的邏輯圖13是^本發(fā)明用于處*沐問#*^器的#^請求的方法的實施例的i^輯圖14是^^本發(fā)明用于處3g^訪問^^U^器的寫入請求的方法的實施例的邏輯圖15是<^^本發(fā)明用于解#^訪問#^4#器的請求的方法的實施例的邏輯圖;以及圖16;IJ^本發(fā)明的一次性可編禾14^器的另一個示例的圖。M實施方式圖l是^LM圖形顯^i殳備10的一個實施例的示奮l^f匡圖,所迷^j^圖形顯^i殳備10包括處M^莫塊12、^器開關(guān)14、^#器16、圖形處^^莫塊18、圖形賴器20、石她和/或閃存22以及輸A/輸出(k))接口24和26。io接口24和26中的^-^h^別包括io寄存器28和30。應(yīng)注意的是,所述視頻圖形顯^H殳備10可以是計^^幾、膝上型計^^幾、dvd播放器、便攜i(Jt字^M艦頻播放器等,并且可以^多個io接口24和26。jW^卜應(yīng)注意的是,^-"io接口24和26均可包括多個io寄存器28和30。所皿i^fe12可以是#處理設(shè)備或者是多個處理設(shè)備。這種處理設(shè)備可以是A狄理器、微控制器、數(shù)字信號處理器、微型計#^幾、中M理單元、現(xiàn)場可編程門陣列、可編禾IiE輯l^f牛、狀態(tài)機(jī)、邏輯電路、;j^以電路、數(shù)字電備。;it^^可以"才:關(guān)聯(lián)的賴器和/i^元件,;^^器和"儲元件可以是單個絲器設(shè)備、多個賴器設(shè)備和/或處i^鉄的^A^電路。這種,器設(shè)"^可以;I7、讀M器、隨^4l^m器、易失'&^器、非易失'l^Ht器、靜態(tài)^Ht器、動'^#器、閃存、高速緩沖糊器和/^^數(shù)割言息的^^T設(shè)備。應(yīng)注意的是,當(dāng)所狄^^:經(jīng)由狀態(tài)機(jī)、才對以電路、數(shù)字電路和/或邏輯電路來實織一個或多個功能時,用于^W"應(yīng)的辦指令的機(jī)器和/iU^^t^可^A^電路內(nèi)部或者可以位于電路夕MP,所述電路^^狀態(tài)機(jī)、模擬電路、數(shù)字電路和/或邏輯電路。jH^卜應(yīng)注意的是,所述^ft元件M對應(yīng)于圖1-16中示出的至少某些步^^/或功能的硬編^^/或,指令,并且所狄a^W植些硬編嚇i^指令。在一個辦示例中,10接口中的一個或多個^lt指令以顯^W文件。所述鄉(xiāng)文件可以來自dvd,可以^H^^:和/或閃存中,M星^:^^收,財^L頂盒接J^^/或來自^f可其它鄉(xiāng)內(nèi)^lt據(jù)源。應(yīng)注意的是,io接口24和/或26的一個或多個可以^j^斤述浮艦文件。^^特定的加密辦以及由一個或多個標(biāo)準(zhǔn)規(guī)定的一個或多個密鑰勤。密所述文件。^j)^例子中,所i^t3^鉄12協(xié)調(diào)^yvi^ft器16、^:和/或閃存22、IO接口24和/或26和/或其它源中X^W文件的檢索。加密的浮tt文件可以包^f見頻數(shù)據(jù)、,數(shù)據(jù)、視頻圖形數(shù)"^Vil^求"^^的任何其它類型的數(shù)據(jù)。所i^t^f莫塊12喚起密碼處m^戶端算法(例如,RSA、DES等)并JLM^^存儲位置(例如,^i午賴器(privilegedmemory))中檢索密鑰。下面將參考圖2-16中的一個或多個^M^^斤述^b^^位置。所i^t^^莫夾i2^^J密碼處^:戶端算法和密鑰勒捧密e^密的數(shù)提,以產(chǎn)生解密的數(shù)據(jù)。解密的數(shù)據(jù)被提條圖形處3^執(zhí)18。4頓圖形處^f狹18可以是艦圖形卡、艦圖形引擎、S頓圖形處理器、其組^V或用于呈S^見頻數(shù)提的任何其它設(shè)備。^h例子中,圖形處S^莫塊18把解密的數(shù)據(jù)轉(zhuǎn)M視頻數(shù)據(jù)并且將^##在圖形賴器20中以供后續(xù)顯示。所述^j頃圖形顯T^i殳備10具有三類的^"^器訪問。最^的類別允if訪問系^4#器(例如,^4#器16和/i^嫂和/或閃存22)并JUL許經(jīng)由IO接口24和26訪問IO設(shè)備;允許訪問圖形務(wù)賭器20(例如,幀緩沖器);并JJLilH方問安^"^t位置'下一級的^^沐問允i情問系^t器并iUi午經(jīng)由10接口24和26訪問IO設(shè)備。第三訪問^Uci情問系M/fW器。圖2是設(shè)備的一個實施例的示奮魁匡圖,所述設(shè)備包括硬件(HW)部分32(例如,處3^莫塊12、絲器開關(guān)14、圖形處^f莫塊18、10接口24和26等)以及軟件(SW)部分34,所ii^W分34被^^在系M/W器(例如,^#器16和/il^:和/或閃存22)中。所^:W^34^fe""個或多個辦系統(tǒng)(OS)36、應(yīng)用編程接口(API)部》38、應(yīng)用程序麵^40以及^i鉤分(privilegedsection)42,所ii^^分34可以存儲在設(shè)備的^器(例如,設(shè)備10的J^ft器16、圖形絲器20、石M/閃存22和/或IO寄存器28和30)中。特許^#器部分42可以在設(shè)備的,器中和/或在一次性可編考1##器中。圖3是設(shè)備的另一個實施例的示奮魁匡圖,所述設(shè)備^"硬^W分(HW)32以及軟4W分(SW)34,扭匕實施例中,所ii^ft^分34^fe應(yīng)用禾J^部分40、操作系統(tǒng)36以及4Ht^42。所迷應(yīng)用程序部一40^t多個用戶應(yīng)用程序60、多個系統(tǒng)應(yīng)用私宇62以及多個密碼處S^戶端應(yīng)用^56-58。多個密碼處理應(yīng)用禾聘^itAES(預(yù);^口密標(biāo)準(zhǔn),advancedencryptionstandard)、DES(數(shù)據(jù)加密標(biāo)準(zhǔn),dataencryptionstandard)、3DES、MuIti-2加密、DVB(數(shù)字視頻廣4番,digitalvideobroadcasting),C2(柳杉密碼,ciyptomeriacipher)、CSS(內(nèi)^4t亂系統(tǒng),contentscramblesystem)、MDMI(HDCP)、1394(M6)、RSA、ECC(橢圓曲線密碼,ellipticalcurvecryptography)、Register(寄存器)、其<沐變形、其^f可進(jìn)一步的彪^v或^^r新的加密標(biāo)^Mi者技術(shù)的中兩個或更多個。所述^i午員器部分42可以<^1)一個或多^-"次性可編程(OTP),器、RAM和/或ROM來實現(xiàn)。所述OTP,器可用^4^密鑰的默認(rèn)集和細(xì)'J集部分52。密鑰存儲部分50把一個或多個密碼處^:戶端的一個或多個密鑰,在OTPM器、RAM和/或ROM中。所述密鑰^"部分50可以包括^4^:,其中一個或多個塊M密鑰。規(guī)測集部分52存儲用于訪問密鑰,部分50的類測。將參照圖^16中的至少某些圖來^碎細(xì)iiM笛述^t細(xì)'J。圖3的設(shè)備還包:^f中^+狹54,所述仲^=莫塊54可以是操怍系統(tǒng)36的一部分,可^t在^i午賴器42中,和/或可以是獨(dú)立的才狹(例如,獨(dú)立的狀態(tài)機(jī)、獨(dú)立的處理器等)。無論^置4W可,所述仲^^^:都基于所述MJij^^協(xié)調(diào)對密鑰^fW分50的訪問。4^、此方式,訪問請求必須來自授權(quán)的固件組件(例如,真正的密碼處S^戶端),并JL/斤述請求必須^M如規(guī)則集中描繪的、基^Sfr絲的身份的特;t^式。如果組(例如,^^權(quán)的請絲(例如,固件正由黑^M5U或者無效的請求方式),那么仲^=狹54將拒^;斤述請求,忽略所述請絲者響應(yīng)于所述請銶微城據(jù)。iMI該實施方式,^4Ui實現(xiàn)了硬件系統(tǒng)的^H!i以及軟件系統(tǒng)的靈活性。例如,通it^用^^OTP:JM^^用i^問密鑰的7:K夂'I^W'J,J^Jii^t了軟件系統(tǒng)的易受攻擊性,并JUEi^Jiigit了對于單一標(biāo)準(zhǔn)^^硬絲單一功能的多更件系統(tǒng)的不靈活性。圖4^預(yù)問密鑰的方法的一個實施例的邏輯圖,所財法從步驟70開始,^Hi密碼處S^戶端發(fā)出對多個密鑰中的一個密鑰的訪問請求。所迷請求應(yīng)該^E特定的檔^式,所i4^"式^^/寫指示、至少""^分密鑰的34iJ:、密碼處理結(jié)果的源或者目的地以及對應(yīng)于密碼處理功能的密碼處理算法的標(biāo)識(如f^斤述源接近目的地并且密鑰絲內(nèi)容是密鑰/CW或者IV的話)。然后,所迷方法進(jìn)行到步驟72,jrt^t,密鑰^!"^仲^^鉄54確定密鑰訪問請求是否有效。例如,如果所述請求不;Ut自授權(quán)實體(例如,實現(xiàn)#密碼處^^戶端的功能的固件),那么仲^^^將指示所述請求無效。照此,黑客^^訪問密鑰絲部分的企圖將M并且將失敗,如圖步驟76所示那樣。然而,如絲步驟74,所述請^^皮確^7有效,那么所i^法繼續(xù)步驟78,其中所述仲^^^^譯對密鑰的訪問請求以便產(chǎn)生解譯后的請求。這些將參照圖9^>#細(xì)^所#法繼續(xù)步驟80,其中仲^^^于解譯昏的請求訪問細(xì)'j集M器以便檢索所MO!'J集的細(xì)'j。將參照圖6描m則的示例。所i^T法繼續(xù)步驟82,其中所述仲^t^L許按照規(guī)則對密鑰進(jìn)行沐問。應(yīng)注意的是,所im則集同樣可以指示所述訪問^^Mj'j是;NityL許的,并包括拒絕請求、忽略請,1Ul者提供隨才;^:據(jù)。所ii^法繼續(xù)步驟84,其中當(dāng)允許訪問密鑰時,密碼處^1戶端關(guān)于至少""^分密鑰執(zhí)行密碼處理功能以便產(chǎn)生密碼處理結(jié)果。圖5是請求90的一個示例的圖,所述請求90包M/寫(R/W)指示92、地址96、源97、目的地98、密碼處理算法標(biāo)識IOO(例如,密碼處S^戶端的ID)以及密鑰類型。如果R/W指示92是寫入請求,那么所ii請,^iE將包;fe待寫的數(shù)據(jù)94(例如,密鑰、代碼字或者初始向量)。所iti^止部分96指示x位(例如,64位)的塊的^地址。源部分97指示密碼處S1^果的啟動禾J^(initiator),而目的地部分98指示密碼處^果#^1送的#。有效的源和目的地包括系M^4^器、密鑰,部分、IO寄存器和/或圖形務(wù)賭器。使用的密碼處理算法可以被識別為ANY、NONE、AES、DES、3DES、Multi-2、DVB、C2、CSS、MDMI(HDCP)、1394(M6)、RSA、ECC和/或Register,在一個實施例中,可以4^I接i^y!'J。例如,當(dāng)特定的客戶端啟動加密操作時,細(xì),J4W分確定密鑰^fW分中什么樣的密鑰塊可以被訪問。通^fi文進(jìn),所mj9忡還包括其它的位,借此,當(dāng)實^^斤im^時,確定密鑰##^可以被訪問的順序。進(jìn)一步增加p艮制的話,M^塊的特狄列。進(jìn)一步減少限制的話,^e^的;賂訪問密鑰^^且。圖6;^!'集中的"H4iy!,J101的示例的圖。所ii^J!'J101包括算、輛分103、源和目的地粉105以及內(nèi)容部分107。所述算^1^103識別被授條由^C請4^/或?qū)懭胝埱髞碓L問密鑰^fW洲有效算法'對于給定的算法和請求而言,目的地部分105指示此算法可以發(fā)送其密碼處理結(jié)果的一個或多個有效目的地。所述內(nèi)容部分107識別有效的密鑰類型(例如,密鑰、控制字和/或初始向量)。在一個實施例中,規(guī)測^Ht部分52包含與密鑰^#^關(guān)聯(lián)的位掩碼用于細(xì)'J的位映象如下字段讀算法參見算法列表寫算法參見算法列表目的地110b=FB101b=SYS,/IO011b=Key_Store000b=無輸出內(nèi)M型lbCW或Key(密鑰)Ob=IV源110b=FB101b=SYS,/IO011b=Key—Store000b=膽出接近0=無限制,l-必須是接近的注意如果算'^ANY,那么位沐.."15}是=^忽略的柳'。<table>tableseeoriginaldocumentpage15</column></row><table>扭匕實施例中,細(xì)'J^于指示密鑰^W分中對應(yīng)的塊(例如,64位)可以:M^T被沐問的位(例如,16)的組。作為默認(rèn),由于OTP中的所有^^認(rèn)為0,因此具有未初始4誠則的塊提供了不受限制的訪問(即,沒有限制)。li^i^則而言它向某些密碼處3Sl:戶端提供了把密碼處理操怍的結(jié)果寫回密鑰^W分50的能力。如果安全系統(tǒng)利用密鑰階棒(keyladder)(例如,密鑰解密e^。密的密鑰,然后^e^斤得到的解密密鑰用于后續(xù)密鑰,M操怍的最終產(chǎn)品,那么這可食fe^有用的。^bsr嫂下,利用用&醉密內(nèi)容的密鑰,在到i^斤述,^一級的情況下,^^接m0'J絲強(qiáng)在推導(dǎo)密鑰時將遵守的特定力,(即,第1密鑰必須接^1級,第1級必須接錄2級等等)。應(yīng)注意的是,所述接m^的字^^過l位,以指示接近的位置的范閨(例如,以5位;jM^供32個接近的位置)。例如,除了結(jié)絲者允i1^寫入下一(即,接近)位置的辦,所mS!'J具有額外的位,射&該額外的位;Ul于定義將結(jié)果寫A^續(xù)N塊(即,多個接近的位置)的許可。當(dāng)處理多流系統(tǒng)時,這才軒故增加了靈活性,在所述多流系統(tǒng)中,4M相同的附弟來計算多個最終密鑰。圖7是用于處一密鑰的"^l訪問請求的方法的一個實施例的邏輯圖,所財法從步驟110開始,其中,所述密鑰4#仲^^^確定對密鑰的^^請求是否有效。Jt^ft可以通過確定請求方是否被授^j^情4UsL者按照所iiMJ'jIUMiW亍。在步驟112,如果確定出所述請求無效,那么所i^法繼續(xù)步驟114,其中所述仲^^^返回一個隨才;ul然后,所述方法繼續(xù)步驟U6,其中所述仲^^f吏密碼處^:戶端可以訪問隨才;l!l如果請》林效,那么所^法繼續(xù)步驟U8,其中所述仲^fcfc^少"^分密鑰提供給密碼處^^戶端。例如,密鑰可以^t在多個塊中,并JL^斤述仲^^:響應(yīng)于"HS貪求向密碼處m^戶端提供某些或者所有的塊。所述方法繼續(xù)步驟120,其中所述密碼處m^戶端利用至少"^分密鑰對內(nèi)容數(shù)據(jù)IM亍密碼處理算法,以產(chǎn)生加密數(shù)據(jù)或者解密數(shù)據(jù)。應(yīng)注意的是,在一個實施例中,盡管密碼處i^:戶端可以產(chǎn)生多^fr求并jLiyf^分密鑰,但它通常^MffM整個密鑰進(jìn)行密碼處理鰣。圖8是用于處^t密鑰的寫入訪問請求的方法的一個實施例的邏輯圖,所財法從步驟122開始,其中所迷仲^^確定對密鑰的寫入請求是否有效。iH^t可以按照復(fù)則集中的則'J來^^亍。在步驟124,如果確定出所述請求無效,那么所i^r法繼續(xù)步驟126,其中,所述請^線(例如,不給出響應(yīng),忽略所述請求)或者提^4t^狀態(tài)。然而,如^^斤述請絲效,那么所^法繼續(xù)步驟128,其中,對于至少一部分密鑰,所述仲^^^使密碼處^^戶端可以訪問密鑰^^4^器中的一塊<4#器。所妙法繼續(xù)步驟130,其中所述密碼處3S^戶^W亍密碼處理功能,以便M少-"^分密鑰寫Ait塊,器。圖9;UD于解樹密鑰的請求的方法的一個實施例的邏輯圖,所妙法從步驟140開始,其中所述仲^fefl^對密鑰的訪問請求來伊^密碼處理算法的類型。例如,密碼處理算法可以^^M類型類。作為一^Mt定的示例,第一種類型可以^ANY、DES、DVB、C2、CSS、M6、Multi國2、HDCP、Register(寄存器);第^ft類型可以包括AES、3DES、ECC;第三種類型可以包括RSA;而第四種類型可以^NONE。16在步驟142,所i^法才娥密碼處理算法的類型是否處于多個分類類型中的一種類型而分支。如果為否,那么所i^法繼續(xù)步驟146,其中所述請,1^皮拒絕,然而,如^;斤述類型處于一個種類中,那么所妙法繼續(xù)步驟144,其中所述仲^f狹對應(yīng)于用來訪問所述密鑰的分類類型來建立44限。例如,如果算法={ANY,DES,DVB,C2,CSS,M6,Multi-2,HDCP,Register},那么可以以64位為界(ona64bitsboundary)訪問密鑰^HP^;如絲^(AES,3DES,ECC},那么可以以128位為界(ona128biteboundary)訪問密鑰^WP^;如果算法={RSA},那么可以以1024位為界(ona1024biteboundary)訪問密鑰^W分,而如果算'^(NONE),那么不能以^f可為界來訪問密鑰^f^分。圖10是一次性可編禾J^ft器150的一個示例的圖,所述一次性可編禾l^ft器150包括OTP接口152以及與密鑰,部分50相關(guān)聯(lián)的多個寄存器。在一個實施例中,OTP區(qū)域(16K位)用來記錄各自被組織為64位的256塊的Key(密鑰)、CW和IV以及^t其它值。存在OTP編程接口,其對應(yīng)于—且寄存器,所述寄存器允絲樹于特定的OTP塊^^寫入64位。對于每個塊,均有2位的關(guān)聯(lián)OTP,器(即,讀鎖定位(ReadLockOutBite){0,...255}以及寫鎖定位(WriteLockOutBite){0....255})。it些^JW人為-0(工廠;IW人)并JL可以^^b禾呈為-l一次,一旦該^f皮iM為l,那么它^WX法被重新編程為a-0。當(dāng)對應(yīng)的讀鎖定位Wa=0被設(shè)置為3=1,那么相關(guān)聯(lián)的64位OTP塊就法再經(jīng)由寄存恭接口被讀隊當(dāng)對應(yīng)的寫鎖定Ma-O被iU為a-l,那么相關(guān)聯(lián)的64位OTP塊g法再經(jīng)由寄存驗口被寫入'狄獄到硬^i殳備中的秘密m^斤需的重要互鎖。包括X^方案<table>tableseeoriginaldocumentpage17</column></row><table>應(yīng)注意的是,即便設(shè)置了OTP塊的讀寫鎖定位,該塊仍可由石更^i殳備內(nèi)的密碼處3S^戶^f捐(即,H/W塊可以^^l密鑰^iiM^f亍密碼處理辦,但是值的本身不^f緣露)。在步驟50把密鑰從OTP初次寫入密鑰^^W^I間,副本可以利用模糊函數(shù)。例如,^JU包tof稱^^^i制絲(OP[n)的函數(shù)和重艦函數(shù)(即,(j—卩1—U)來使將要寫入OTP(即,OTP[il)的64位的塊(即,塊[j)模糊。所述^^函數(shù)h()可以如下來定50OTP[i=HKB[xOP(yBlock[z在OTP和密鑰^#部分之間實施的對應(yīng)的逆才^#月函數(shù)h"(yf^l如下的模糊函數(shù).KeyStore[z=OTP[iOP-1[yHKB[x應(yīng)注意的是,h()劃op(J1—[i映射,而h-i()AliopUl)IJ映射,這^^未著BlockQ和HKB[]中的*是不同的,即,如果黑客已經(jīng)訪問Block#HKB值,那么所iif^^f主;^不)ft應(yīng)的。才繊密鑰塊可以是寫入OTP的一個或多個塊中的64位模式。才魏密鑰塊可以默iA^0x0...0,并且可以相對于芯片來唯-""^程、i^目對于客戶唯一地編程、或相對于產(chǎn)品唯一絲程,或者可以默iU/0x0...0。另夕卜,才繊密鑰塊應(yīng)該具有相似數(shù)目的0和1(+/-10%)(即,非通常值)以便確^f^^lMt的安全。所i^繊函數(shù)可用來確保"^密鑰開發(fā)的密鑰,加載階段的務(wù)^。它提#^妙的方式缺密鑰^/^OTP絲器中。這樹故提供了4重要的操作^^機(jī)制,所述^^機(jī)制用于確保OTP內(nèi)的密碼處理值的妙,并JL^工廠環(huán)嫂下提f定的^H^f孝.圖ll是^fe硬飾分(HW)32和軟轉(zhuǎn)分(SW)34的設(shè)備的另一個實施例的示奮船匡圖。扭匕實施例中,所述軟飾分34^"應(yīng)用禾踏部分40、操怍系統(tǒng)36和^i樹分42。所迷應(yīng)用程序部分40包括多個用戶應(yīng)用程序60和多個系統(tǒng)應(yīng)用程序62???^J一個或多^h-"次性可編禾l^器來實現(xiàn)的^i午員器部分42包M許數(shù),分160和細(xì)'J集部分1622。所述^i午數(shù)才樹分160^ft具有4^H^t并且不^皮設(shè)備的用戶或者,j:訪問的數(shù)據(jù)。這種數(shù)據(jù)包括一個或多個密碼處^!戶端的一個或多個密鑰、其它設(shè)^^#性等等。所述^i午數(shù),分160可以包括#塊,其中,一個或多個塊^f^i午數(shù)據(jù)元素。細(xì)'J集部分162存儲用,問4^i午數(shù),分160的細(xì),J。圖11的設(shè)備還包括仲^^:54,所述仲^^缺54可以是辦系統(tǒng)36的一部分,可以被"4^在^i午賴器42中,和/或可以是單獨(dú)的才缺(例如,獨(dú)立的狀態(tài)機(jī)、獨(dú)立的處理器等)。無論^:置^i可,所述仲^^^:都基于所iiMJ,J集來協(xié)調(diào)對4ti午數(shù),分160的訪問。依照jtbT式,訪問請求必須來自授權(quán)的固件組件(例如,真正的密碼處S^戶端、,系統(tǒng)固件功能、其它設(shè)4^功能等),并J^斤述請求必須^e^!J!'J集中描^1、基i^fr^T的身^特定方式。如果組(例如,^M^的請,M(例如,固件正由黑^MVJ或者無效的i貪求方式),那么仲,塊54將拒絕所述請求,忽略所述請,1Ul者響應(yīng)于所述請綠供隨械據(jù)。圖12;^f^沐問輛許,器的方法的實施例的邏輯圖,所ii^法從步驟164開始,其中,仲^^^W至少""^Nri午數(shù)據(jù)的訪問請求。所財法繼續(xù)步驟165,其中仲^^于解譯后的請求來訪問細(xì)'』集絲器以便齡所述規(guī)則集的翔U!'。應(yīng)注意的是,所5iMJ'j集的MJ'J包^i只別一個或多個有效算法的算'輛分,i尸^有效目的地的目的地部分以及識別有效4^i午數(shù)據(jù)類型的內(nèi)容粉。所i^r法繼續(xù)步驟166,其中所述仲^fe確^^斤述請求是否有效。這可以通it^iSfr求方^fr求類型訪問細(xì)'JIUMM亍(例如,^fri午數(shù)4t^/或?qū)懭?^數(shù)據(jù))。另外,所述仲^^^可以^E請求的格式,以便確絲^t^/寫指示、至少^P^i午數(shù)據(jù)的^kJt止以及有關(guān)^i午數(shù)^f^J的指示。如^it些檢查中的任何一項失敗,那么所述請束lfc^L^:的,并J^斤財法經(jīng)由步驟168進(jìn)^i'J步驟170,在步驟170中,所述請求狄然而,如^/斤述請,M效,那么所ii^法繼續(xù)步驟172,其中,所述仲^fe^譯所述請求以便產(chǎn)生解譯后的請求。將參照圖15來^口詳細(xì)^U笛ii^^t程。所財法繼續(xù)步驟176,其中所述仲^t^L許按照^J!'J對至少""^^i午數(shù)^^t^問。圖13是用于處理訪問祠許,器的讀取請求的方法的實施例的邏輯圖,所i^法從步驟180開始,其中,所述仲^^^確;^斤述"1請求是否有效。這可以通過訪問來自規(guī)則集中的適當(dāng)細(xì)'J來"i^亍。所^法才娥所述請求是否有效而在步驟182分支。如果為否,則所ii^法繼續(xù)步驟184,其中所述仲^^狹產(chǎn)生一隨才i所i^法繼續(xù)步驟186,其中所述仲^j^fe輸出所iiJtWt作為至少-"^^i午數(shù)據(jù)。當(dāng)讀^C請j^f效時,所i^法繼續(xù)步驟188,其中所述仲^^輸出至少""^^i午數(shù)據(jù)'圖14A^I于處理訪問^i午賴器的寫入請求的方法的實施例的邏輯圖,所ii^r法從步驟l卯開始,其中,所述仲^fe確;^斤述寫入請求是否有效。這可以通過沐問來自規(guī)則集中的適當(dāng)細(xì)'J來^^亍。所^r法才娥所述請求是否有效而在步驟192分支。如果為否,則在步驟194,所迷請^l^她狄,當(dāng)所述寫入i^M效時,所ii^法繼續(xù)步驟196,其中對于至少""^^i午數(shù)據(jù),所述仲^^^吏得可以訪問^i午,器中一塊,器。圖15;M于解樹^i午糊器訪問請求的方法的實施例的邏輯圖,所^法從步驟200開始,其中所述仲^^才娥所述請求來"i尸^算法的類型(例如,系統(tǒng)級應(yīng)用禾呈序、操怍系統(tǒng)功能、密碼處理算^)。所it^r法繼續(xù)步驟202,范圍內(nèi):當(dāng)不是時,所^':繼'續(xù)步驟2o:,其中所述請^fet&^當(dāng)算法的類型處于多個分類類型中的一^^類類型中時,所述方法繼續(xù)步驟204,其中所述仲^^fet^t應(yīng)于所述分類類型的柳艮。例如,第一類可以每次訪問4H午,器的一個塊,第4可以萄,次訪問4^午^#器的x個塊^'圖16是一個或多—次性可編禾1##器210的另一個示例的圖,所述一次性可編禾1#^器210包##1午數(shù)樹分1600、OTP接口212和多^^存器21冬216。在一個實施例中,OTP區(qū)域(16K位)用來ie^各自,射且織為64位的256個塊的密鑰(Key)、CW和IV以;5L^t其它值。^^在OTP編^^接口,其對應(yīng)于^^且寄存器,所述寄存器Ai^:樹特定的OTP塊"i^iL寫入64位。對于每個塊,均有2位的關(guān)聯(lián)OTP糊器(即,讀鎖定位{0,.《255}以及寫鎖定位{0...255})'這些#^認(rèn)為=0(工廠默"i人)并且可以#姚程為=l一次。一旦20該^^^為=1,那么它就r^hl無法凈皮重新編程為a-0。當(dāng)對應(yīng)的讀鎖定ma-0被設(shè)置為a=1,那么相關(guān)聯(lián)的64位OTP塊駄法再經(jīng)由寄存H^接口被讀隊當(dāng)對應(yīng)的寫鎖定4i^a-0被iM為a-l,那么相關(guān)聯(lián)的64位OTP塊mt法再經(jīng)由寄存驗口被寫入。進(jìn)一步的實施例可以包括用于加密/解密的附加的多位字段,所述字段用于指^i否要求密碼處^^戶^Wf^密絲解密辦(例如,ANY(任意)=00,Enciypt(加密)=10,Decrypt(解密)=01,NONE(無)=11)。最少限制狀態(tài)是00(^程狀態(tài)),而最多限制狀態(tài)是11(無)。另一個實施例可以包括將讀和寫算法字段的大小從4位增加至6位,以便指定64個不同的算法,這#^故將允許添加更多的算法。在另一個實施例中,可以^^]影^l功能,通過把一個根密鑰加載到密鑰存儲部分中,然后4賺所述根計算密鑰lW的其它部^f密鑰而不是在OTPi^呈的連續(xù)步驟期間將它們?nèi)考虞d,來斷W真充密鑰^W分所需的一次編程(OTP)的步驟的數(shù)目。以這種方式,可以免除某些OTP步驟。在又一個實施例中,可以^^)重復(fù)功育M^t冗余。例如,所述OTP塊包樹,J用MJ'J^i殳備中某些MJ'J絲的指示符,以指示是否將要重復(fù)該細(xì)'J從而將其加載至密鑰賴,中的其它位置。同樣,這樹狄除了對密鑰絲階梯中^Hi置具有OTP步驟的需要。^ii一步的實施例中,可以使用加密/解密則"具體來講,可以把一對位添加到^HW'j,其用于表示所ii^戶端可以加密并JU醉密(00),客戶端可以4Wt加密和解密之一(l,O)和(O,l),并JL^示所il^戶端可以復(fù)制、^可以加密或者解密,密鑰^^中另"HMi置的結(jié)果??梢匀鏹tk^H吏用的那才羊,術(shù)i^"ij^上"和'大約"為其對應(yīng)的術(shù)if^/或項目之間的相對性提供了行業(yè)絲的敘艮。這種行業(yè)絲的敘艮的范圍從小于百分^L一到百^^u十,并JL^應(yīng)但是不局限于;^Hi、M電i^工藝變4匕、溫度變化、上#下降時間和/或熱噪聲.這種項目之間的相對性的范圍從百分^X的差別到數(shù)量級的差別。w卜,可以如jH^^/H^的那樣,術(shù)譯'M^至"和/或'嚇合,包括項目之間的直#^^/或項目之間經(jīng)由介入項目(例如,項目包括斜局限于組件、元件、電路和/il^)的間#^,其中,對于間^^來說,介入項目不更改信號信息,但是可以調(diào)整其電流電平、電壓電平和/或功率電平。進(jìn)一步講,可以如》狄所^^的那樣,推論出的齡(即,一個元艦過推斷身^^至另一個元件)包括兩個項目之間的直接和間^M^,方式與"齡至"相同。更進(jìn)一步講,可以如oW^t所^^的那樣,術(shù)語"可辦用于,,指示一項目包括電源連接、輸入、輸出等的一個或多個,當(dāng),^L活時,用于^/f亍一個或多個其對應(yīng)的功能,并JLii可以包括與一個或多個^項目的推論出的輪^。再進(jìn)一步講,可以:i^k^^K吏用的那才羊,術(shù)語"關(guān)聯(lián)于"包^f蟲立項目的直接和/或間4H^,和/或一個項目^A^另一個項目內(nèi)。正如jH^t^H賴的那樣,術(shù)"it"有利地Jt^"指示兩個或更多項目、信號等之間的t嫩,提供所期望的關(guān)系。例如,當(dāng)所期望的關(guān)系是信號1具有比信號2更大的幅度時,那么當(dāng)信號1的幅度大于信號2的幅度或者當(dāng)信號2的幅度小于信號1的幅度時,可以實賄利地比較。以上已經(jīng)^ft助用于示出^f沐定功育^5L其關(guān)系的方法步述了本發(fā)明。艦,為便于描述,已^t這些功肯她建塊和方法步驟的界PM^序列進(jìn)行了刻意地P艮定。只要適當(dāng)^f亍所指定的功育沐關(guān)系,就可以定義^f諷l^序列。以上L經(jīng)借助功肯械"塊描述了本發(fā)明,所述功肯幽建^1于示出了某些重J^力能的^f亍。為便于描述,已經(jīng)將這些功負(fù)械建塊的界I^ii行了刻意地限定,可以定義^f戈的釈艮,只要適當(dāng)?shù)?M亍某些重要的功能即可??桃缘?,此處已經(jīng)刻意地限定了流程圖中的方框,以便示出某些重要的功能,對于使用而言,^f呈圖方框的聊lbfp序列食fe夠另外限定,并且仍^W亍某些重要的功能。由此,功肯誠建才I^流程圖方框兩者的這種^"R限定均在請求^的發(fā)明的范圍^|##之內(nèi)。本領(lǐng)域"fit^MCA員還將意識到的是,此處,功肯誠建塊以及其他示例性塊、^^^a件可以如所示出的那才羊來實施,或者通it分立的組件、專用M電路、^ftit當(dāng)軟件的處理器等或期壬意組^實現(xiàn),2權(quán)利要求1.一種設(shè)備,包括密鑰存儲存儲器,可操作用于存儲多個密鑰;規(guī)則集存儲器,可操作用于存儲訪問所述多個密鑰中的至少某些密鑰的規(guī)則集;多個密碼處理客戶端,其中所述多個密碼處理客戶端中的一個密碼處理客戶端可操作用于發(fā)出訪問所述多個密鑰中的一個密鑰的請求;并且當(dāng)允許訪問該密鑰時,執(zhí)行關(guān)于至少一部分密鑰的密碼處理功能以便產(chǎn)生密碼處理結(jié)果;以及密鑰存儲仲裁模塊,可操作用于解譯訪問密鑰的請求以便產(chǎn)生解譯后的請求;基于所述解譯后的請求訪問所述規(guī)則集存儲器以便檢索規(guī)則集中的一個規(guī)則;并且允許按照所述規(guī)則訪問密鑰。2.:H5U'J要求1所述的設(shè)備,其中訪問密鑰的請求包拾讀/寫指示;至少^P分密鑰的J4M:;密碼處S^果的目的地;以及對應(yīng)于所述密碼處理功能的密碼處理算法的標(biāo)識。3.:H3U,漆求2所述的設(shè)備,還包括,當(dāng)訪問密鑰的請求包絲指示時所述密鑰^^仲^^^還可IMt用于確定^^鑰的請求是否有歡當(dāng)"W^鑰的請求i^t時,產(chǎn)生隨才A^t;使得密碼處m^戶端能夠訪問隨Mt;并且當(dāng)棘密鑰的請絲效時,向密碼處^^戶^^供至少一^分密鑰;并且所述密碼處3S^戶端還可辦用于當(dāng)棘密鑰的請,討效時,利用至少"^分密鑰對內(nèi)^:據(jù)^U亍密碼處理算法,以便產(chǎn)生加密數(shù)據(jù)或者解密數(shù)據(jù),其中密碼處3^果包紛0密數(shù)據(jù)或者解密數(shù)據(jù)。4.矛J^求2所述的設(shè)備,還包括,當(dāng)訪問密鑰的請求包括寫指示時所述密鑰4#仲^^^還可#^用于確定寫入密鑰的請求是否有效;當(dāng)寫入密鑰的請求無效時,使其默她短;當(dāng)寫入密鑰的請,討效時,對于至少"-^分密鑰,使得密碼處^1戶端能夠訪問密鑰4^M器中一塊員器;并且所述密碼處S^戶端還可,用于當(dāng)寫入密鑰的請,W效時,^f亍密碼處理功能以便將至少一部分密鑰寫A^該塊M器中,5.:H^,J^求2所述的設(shè)備,還包括,當(dāng)訪問密鑰的請求包括寫指示時所述密碼處^^戶端還可辦用于當(dāng)寫入密鑰的請,討效時,利用^f月函數(shù),分密鑰寫入該塊,器中。6.怯求1所述的設(shè)備,還包拾.所述密鑰^f^m器還可操怍用于務(wù)賭多個控制字和多個初始向量;所述密碼處姊戶端還可鰣用于發(fā)出訪問所述多個控制字中的一個控制字或者所述多個初始向量中的一個初始向量的"^"求;以及當(dāng)允{情問所述控制字或者初始向量時,齡關(guān)于所述控制字或者初始向量的至少^分的另一密碼處理功能以便產(chǎn)生另一密碼處理結(jié)^;并且所述密鑰^t仲^feE可,用于確定訪問所述控制字或;^^始向量的請求是否有歡當(dāng)訪問所縱制字或者初始向量的請,W效時,解賴問所迷控制字或者初始向量的請求,以^U^生另一個解i^后的誚"求;基于所述另一個解譯后的請求訪問所mi9'J集M器以便^^0!'J集中的另一^0!'j;并且允許按照所述另一^HO!'J對所述控制字或者初始向量進(jìn)^^問。7.J樹'J要求1所述的設(shè)備,還包拾所述密鑰^ft仲^t^可^ft用于通過如下方式iM^譯訪問密鑰的請求,以^更產(chǎn)生解譯后的請求才財務(wù)方問密鑰的請求識別密碼處理算法的類型;當(dāng)密碼處理算法的類型處于多種分類類型中的一種分類類型中時,對應(yīng)于訪問密鑰的^^類類型^iL^M^;并且當(dāng)密碼處理算法的類型沒有處于所述多種分類類型中的一種分類類型中時,拒麟密鑰的訪問。8.J^怯求1所述的設(shè)備,還包拾所述密鑰絲絲器包括第一次性可編禾W^器微;并且所mi條絲器包括第二一次性可編禾^m器微'9.:N3U'J^求1所述的設(shè)備,其中所iiMJ'J集中的所im^^:用于識別一個或多個有效密碼處理算法的算^p分,用于識別有效目的地的目的地部^;以及用于i尸^有效密鑰類型的內(nèi)容部分。10.:N5UN要求1所迷的設(shè)備,其中所述密鑰^"絲器^fe多^^存器,以及一次性可編程(OTP)接口,其中所述OTP接口和多個寄存l^f更于進(jìn)行至少"^P分密鑰的^iMr寫入。11.一種設(shè)備,包拾餅絲器艦可辦用于^Wi午數(shù)掩M,j集絲器,可辦用于^m^問m午數(shù)據(jù)的細(xì)'J集;以及接收訪問至少"-lp^i午數(shù)據(jù)的請求;解譯所述請求以便產(chǎn)生解譯后的請求;基于所ii^譯后的請求訪問所mfj集務(wù)賭器以便檢索規(guī)則集中的一^MJ!寸;并且允許按照所iiMJ'J訪問至少-^^i午數(shù)據(jù)。12.:N5^'虔求11所述的設(shè)備,其中所述請求包拾讀/寫指示;至少-^^fri午lt據(jù)的^iil:;以及關(guān)于^i午lt據(jù)的l^J的指示。13.JH5U'j^求12所述的設(shè)備,還包括,當(dāng)所述請求包絲指示時所述仲^^^還可,用于確定讀取請求是否有效;當(dāng)^fi請求無效時,產(chǎn)生隨才;Llt;:fe^斤i4f5yM^作為至少-^^l^午數(shù)據(jù)輸出;并且當(dāng)讀取請絲效時,輸出至少-^P^i午數(shù)據(jù)。14.JH5U,j^求12所述的設(shè)備,還^,當(dāng)訪問請求包括寫指示時所i^(中^fe^可,用于確定寫入請求是否有歡當(dāng)寫7v^v,^:時,使其Jl^k^Jt;當(dāng)寫Aifr^"效時,對于至少"^p^lti午數(shù)據(jù),使得能夠訪問#^午存儲器中的一塊,器。15.J^U'j^求11所述的設(shè)備,還&fe所述仲^t^可辦用于通過如下方i^iMf譯所述請求以產(chǎn)生解譯后的請求條所述請求湖算法的類型;當(dāng)算法的類型處于多種分類類型中的一種分類類型中時,對應(yīng)于所述分類類型建立^IW;并且當(dāng)算法的類型沒有處于所述多種分類類型中的一種分類類型中時,拒多樹4ti午^t據(jù)的i方問。16.:fo^'J^求ll所述的設(shè)備,還^fe所述辨躺器包括第——次性可編禾I^器微;并且所iiMJ!條糊器^第二一次性可編禾l4^器微。17.^U'j^"求11所述的設(shè)備,其中所imi9'j集中的所ms!'j包拾用于^^'j一個或多個有效算法的算,^P分,用于識別有效目的地的目的地部^;以及用于識別有效^i午數(shù)據(jù)類型的內(nèi)容部分。18.如^'溪求11所述的設(shè)備,其中所述^i午,器包拾多^^存器,以及一次性可編程(OTP)接口,其中所述OTP接口和多^f存謝更于進(jìn)4樹至少一^^i午數(shù)據(jù)的^^者寫入全文摘要本發(fā)明涉及具有特許存儲器的設(shè)備及其應(yīng)用。一種設(shè)備包括密鑰存儲存儲器、規(guī)則集存儲器、多個密碼處理客戶端以及密鑰存儲仲裁模塊。所述密鑰存儲存儲器存儲多個密鑰并且所述規(guī)則集存儲器存儲用于訪問所述密鑰的規(guī)則集。密碼處理客戶端可操作用于發(fā)出訪問密鑰的請求,并且當(dāng)允許對密鑰進(jìn)行訪問時,執(zhí)行關(guān)于至少一部分密鑰的密碼處理功能以便產(chǎn)生密碼處理結(jié)果。所述密鑰存儲仲裁模塊可操作用于確定對密鑰的訪問請求是否有效;當(dāng)請求有效時,解譯所述請求以產(chǎn)生解譯后的請求;基于所述解譯后的請求訪問規(guī)則集存儲器以便檢索所述規(guī)則集的規(guī)則;并且允許按照所述規(guī)則訪問密鑰。文檔編號G06F12/14GK101673251SQ20091020579公開日2010年3月17日申請日期2009年9月7日優(yōu)先權(quán)日2008年9月5日發(fā)明者N·V·D·斯圖爾特,P·杜查米申請人:Vixs系統(tǒng)公司