亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

保護(hù)視頻卡的方法和系統(tǒng)的制作方法

文檔序號(hào):6439940閱讀:264來源:國知局
專利名稱:保護(hù)視頻卡的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及使用視頻卡處理視頻的方法和系統(tǒng)。
背景技術(shù)
通常,內(nèi)容作者,如電影工作室或在網(wǎng)絡(luò)上發(fā)布內(nèi)容的用戶,在發(fā)布視頻內(nèi)容時(shí),將對(duì)用戶查看它的方式設(shè)置限制。此內(nèi)容通常可以在諸如個(gè)人計(jì)算機(jī)之類的計(jì)算機(jī)上查看或呈現(xiàn)。每年一些無道德的個(gè)人和機(jī)構(gòu)總是花費(fèi)大量的時(shí)間、精力和金錢試圖偷竊或以別的方式不正當(dāng)?shù)孬@得此類視頻內(nèi)容。
其中一個(gè)攻擊點(diǎn)可以是將查看或呈現(xiàn)此類視頻內(nèi)容的計(jì)算機(jī)。即,流氓程序或設(shè)備可以并且常常試圖不正當(dāng)?shù)孬@得諸如個(gè)人計(jì)算機(jī)之類的計(jì)算機(jī)上接收的視頻內(nèi)容。在其他計(jì)算機(jī)組件中,這種攻擊可以針對(duì)處理視頻內(nèi)容的視頻卡和/或向視頻卡和從視頻卡傳輸視頻內(nèi)容的總線。
圖1顯示了包括總線連接器102的示范視頻卡或圖形卡100,總線連接器102插入到典型計(jì)算機(jī)上的端口中。視頻卡100還包括監(jiān)視器連接器104,例如15針插頭,該連接器通過電纜連接到監(jiān)視器。視頻卡100可以包括數(shù)字視頻輸出插座106,該插座可以用于向LCD和平面控制板監(jiān)視器等等發(fā)送視頻圖像。
現(xiàn)代視頻卡包括四個(gè)主要組件圖形處理單元(GPU)108、視頻存儲(chǔ)器110、隨機(jī)存取存儲(chǔ)器數(shù)字到模擬轉(zhuǎn)換器(RAMDAC)112,以及可以包括在視頻BIOS114中的驅(qū)動(dòng)程序軟件。
GPU108是專用圖形處理芯片,用于控制分辨率、顏色深度,以及與在監(jiān)視器屏幕上呈現(xiàn)圖像相關(guān)的所有元素等各個(gè)方面。計(jì)算機(jī)的中央處理單元或CPU(未顯示)發(fā)送一組圖形指令和數(shù)據(jù),它們由圖形卡的專用驅(qū)動(dòng)程序進(jìn)行解釋并由卡的GPU108執(zhí)行。GPU108執(zhí)行諸如位圖傳輸和繪制、窗口大小和位置調(diào)整、線條繪制、字體縮放和多邊形繪制之類的操作。GPU108在硬件中處理這些任務(wù)的速度比在系統(tǒng)的CPU上運(yùn)行的軟件的速度快得多。然后GPU將幀數(shù)據(jù)寫入幀緩沖器,或板載視頻存儲(chǔ)器110。GPU大大地減少了系統(tǒng)的CPU的工作負(fù)載。
保存視頻圖像的存儲(chǔ)器也被稱為幀緩沖器,通常在視頻卡上實(shí)現(xiàn)。在此示例中,幀緩沖器是在視頻卡上以存儲(chǔ)器110的形式實(shí)現(xiàn)的。早期的系統(tǒng)是以標(biāo)準(zhǔn)DRAM實(shí)現(xiàn)視頻存儲(chǔ)器的。然而,此要求對(duì)數(shù)據(jù)進(jìn)行持續(xù)不斷的刷新,以防止丟失,并且無法在此刷新過程中進(jìn)行修改。所造成的結(jié)果,特別是在現(xiàn)代圖形卡需求的非??斓臅r(shí)鐘速度下,是性能嚴(yán)重下降。
在視頻卡上實(shí)現(xiàn)視頻存儲(chǔ)器的一個(gè)優(yōu)點(diǎn)是,可以為其特定的任務(wù)進(jìn)行自定義,的確,這已經(jīng)導(dǎo)致新的存儲(chǔ)器技術(shù)的推廣·視頻RAM(VRAM)一個(gè)特殊類型的雙端口DRAM,它可以同時(shí)被寫入和讀取。它要求的刷新沒有普通的DRAM那么頻繁,因此,執(zhí)行效果好得多;·Windows RAM(WRAM)由Matrox Millennium使用,也是雙端口,并且運(yùn)行速度比傳統(tǒng)的VRAM更快;·EDO DRAM它提供的帶寬比DRAM大,比普通DRAM計(jì)時(shí)更準(zhǔn)確,并且更有效地管理讀/寫周期;·SDRAM類似于EDO RAM,只是存儲(chǔ)器和圖形芯片在使用鎖定數(shù)據(jù)的時(shí)鐘上運(yùn)行,可使SDRAM比普通EDO RAM運(yùn)行速度更快;·與SDRAM相同,而且還支持區(qū)塊寫入和每位寫入,它們?cè)谥С诌@些增強(qiáng)功能的圖形芯片上產(chǎn)生更好的性能;以及·DRDRAM直接RDRAM是全新的,通用存儲(chǔ)器體系結(jié)構(gòu),它的體系結(jié)構(gòu)比傳統(tǒng)的DRAM性能改善20倍。
某些設(shè)計(jì)將圖形電路集成到主板本身,并使用系統(tǒng)的一部分RAM作為幀緩沖器。這叫做“統(tǒng)一存儲(chǔ)器體系結(jié)構(gòu),使用它的原因只是為了降低成本,并可能導(dǎo)致圖形性能下降。
視頻存儲(chǔ)器幀緩沖器中的信息是出現(xiàn)在屏幕上的作為數(shù)字位圖存儲(chǔ)的圖像。但在視頻存儲(chǔ)器包含數(shù)字信息的同時(shí),其輸出介質(zhì)—監(jiān)視器—可能使用模擬信號(hào)。模擬信號(hào)不僅僅要求“開”或“關(guān)”信號(hào),因?yàn)樗糜诖_定在它們掃描監(jiān)視器的上下掃描時(shí)在哪里、何時(shí)以及以什么強(qiáng)度激發(fā)電子槍。這就是如下文所述的RAMDAC112發(fā)揮作用的地方。某些RAMDAC還支持針對(duì)諸如LCD監(jiān)視器之類的數(shù)字顯示器的數(shù)字視頻接口(DVI)。在這樣的配置中,RAMDAC將內(nèi)部數(shù)字表示轉(zhuǎn)換為數(shù)字顯示器可以理解的形式。
RAMDAC扮演著“顯示轉(zhuǎn)換器”的角色,因?yàn)樗鼘?nèi)部數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換為顯示器可以理解的形式。
盡管安裝在視頻卡上的視頻存儲(chǔ)器的總量可能不會(huì)由特定分辨率用完,額外的存儲(chǔ)器常常用于為GPU108緩存信息。例如,對(duì)通常使用的圖形項(xiàng)—如文本字體和圖標(biāo)或圖像—的緩存,可以使圖形子系統(tǒng)不必在每次寫入新字母或移動(dòng)圖標(biāo)時(shí)加載這些項(xiàng),從而改善了性能。緩存的圖像可用于將那些將要被GPU呈現(xiàn)的圖像序列排成隊(duì),從而騰出CPU用以執(zhí)行其他任務(wù)。
RAMDAC112每秒讀取視頻存儲(chǔ)器的內(nèi)容許多次,將它轉(zhuǎn)換為信號(hào),并通過視頻電纜發(fā)送到監(jiān)視器。對(duì)于模擬顯示器,通常有一個(gè)數(shù)字到模擬轉(zhuǎn)換器(DAC),以使CRT使用的三個(gè)主要顏色中的每一種顏色創(chuàng)建一個(gè)完整的顏色范圍。對(duì)于數(shù)字顯示器,RAMDAC輸出單個(gè)RGB數(shù)據(jù)流以便由輸出設(shè)備解釋和顯示。計(jì)劃的結(jié)果是創(chuàng)建單個(gè)像素的顏色所必需的混合。RAMDAC112轉(zhuǎn)換信息可以達(dá)到的速率,以及GPU108本身的設(shè)計(jì),決定了圖形卡可以支持的刷新頻率的范圍。RAMDAC112還決定給定分辨率中可用的顏色數(shù)量,具體情況視其內(nèi)部體系結(jié)構(gòu)而定。
總線連接器102可以支持用于與視頻卡連接的一個(gè)或多個(gè)總線。例如,加速圖形端口(AGP)總線可以使視頻卡直接訪問系統(tǒng)存儲(chǔ)器。直接存儲(chǔ)器訪問幫助使峰值帶寬比外圍組件互連(PCI)總線高許多倍。這可以使系統(tǒng)的CPU在視頻卡上的GPU訪問系統(tǒng)存儲(chǔ)器時(shí)執(zhí)行其他任務(wù)。
在操作期間,板載視頻存儲(chǔ)器中包含的數(shù)據(jù)可以被提供到計(jì)算機(jī)的系統(tǒng)存儲(chǔ)器并可以對(duì)其進(jìn)行管理,好像它是系統(tǒng)的存儲(chǔ)器的組成部分。這包括諸如計(jì)算機(jī)的存儲(chǔ)器管理使用的虛擬存儲(chǔ)器管理技術(shù)之類的東西。此外,視頻卡上的圖形操作需要系統(tǒng)的存儲(chǔ)器中包含的數(shù)據(jù)時(shí),數(shù)據(jù)可以通過諸如PCI或AGP總線之類的總線發(fā)送到視頻卡并存儲(chǔ)在板載視頻存儲(chǔ)器110上。在那里,如上文所述,數(shù)據(jù)可以由GPU108進(jìn)行訪問和操作。
當(dāng)數(shù)據(jù)被從系統(tǒng)存儲(chǔ)器傳輸?shù)揭曨l卡上的視頻存儲(chǔ)器以及進(jìn)行相反操作時(shí),連接到PCI總線的PCI設(shè)備在進(jìn)行數(shù)據(jù)傳輸時(shí)“偵聽”數(shù)據(jù)。PCI總線還使視頻存儲(chǔ)器對(duì)系統(tǒng)的其余部分“可見”,好像它像系統(tǒng)存儲(chǔ)器一樣存在。結(jié)果,PCI設(shè)備可以獲得PCI總線并直接將視頻存儲(chǔ)器的內(nèi)容復(fù)制到另一個(gè)設(shè)備。如果PCI設(shè)備與傳入視頻同步,則它可以潛在地捕獲所有內(nèi)容。
一旦內(nèi)容位于視頻卡上的視頻存儲(chǔ)器中,以前有兩種方案保護(hù)該內(nèi)容。
第一,仍可以訪問視頻存儲(chǔ)器,但內(nèi)容以受保護(hù)、加密的形式進(jìn)行存儲(chǔ),以使它無法被流氓設(shè)備和應(yīng)用程序進(jìn)行讀取。盡管這可以防止數(shù)據(jù)被讀取,但是這也要求數(shù)據(jù)不斷地以加密形式維護(hù)。如果視頻卡(即,GPU)希望處理數(shù)據(jù),它必須以原子方式在讀取、處理時(shí)進(jìn)行解密并在每次寫回視頻存儲(chǔ)器時(shí)重新加密。對(duì)于視頻數(shù)據(jù),解壓縮的數(shù)據(jù)會(huì)要求300mb每秒以上才能顯示。相應(yīng)地,加密器/解密器必須以這些高數(shù)據(jù)速率運(yùn)行。通常,多個(gè)視頻流將被處理到單個(gè)輸出流中。例如,畫中畫(PIP)或多信道顯示會(huì)將八個(gè)信道混合到單個(gè)顯示中。這將要求八個(gè)同時(shí)的解密器和一個(gè)加密器以每秒300mb的速率運(yùn)行,總數(shù)為大約為2.4GB每秒。因此,這種方法由于計(jì)算要求較高不十分理想。
第二,可以簡單地使視頻存儲(chǔ)器中的內(nèi)容或數(shù)據(jù)不可訪問。由于PCI和AGP總線的設(shè)計(jì),這通常不可能,因?yàn)橐曨l存儲(chǔ)器被映射到物理存儲(chǔ)器,即,它好像是普通的系統(tǒng)存儲(chǔ)器。因此,任何PCI設(shè)備都可以訪問視頻存儲(chǔ)器,然后可以獲得PCI總線并執(zhí)行數(shù)據(jù)傳輸,而無需CPU的知識(shí)。因此,由于存儲(chǔ)器控制器或GPU無法可靠地確定誰正在訪問存儲(chǔ)器,因此這種方法不非常理想。
相應(yīng)地,本發(fā)明是由于與提供安全的視頻處理系統(tǒng)和方法關(guān)聯(lián)的想法而產(chǎn)生的。

發(fā)明內(nèi)容
本文介紹了用于保護(hù)視頻卡或圖形卡上使用和處理的數(shù)據(jù)的方法和系統(tǒng)。在各種實(shí)施例中,可以將計(jì)劃由視頻卡使用的數(shù)據(jù)加密以便數(shù)據(jù)被提供到視頻卡和計(jì)算機(jī)系統(tǒng)之間的總線(例如PCI或AGP總線)時(shí)隨時(shí)將數(shù)據(jù)加密。例如,當(dāng)數(shù)據(jù)從視頻卡上的存儲(chǔ)器移到系統(tǒng)的存儲(chǔ)器,例如,當(dāng)它被映射到系統(tǒng)的物理存儲(chǔ)器時(shí),以及進(jìn)行相反操作時(shí),數(shù)據(jù)處于加密形式并因此受到保護(hù)。
當(dāng)加密數(shù)據(jù)從系統(tǒng)的存儲(chǔ)器傳輸?shù)揭曨l卡以便讓視頻卡上的圖形處理單元(GPU)處理時(shí),可以將其解密并放入視頻卡上的受保護(hù)的存儲(chǔ)器中。
在一個(gè)實(shí)施例中,視頻卡具有受保護(hù)的存儲(chǔ)器的部分。加密/解密密鑰對(duì)與每個(gè)受保護(hù)的存儲(chǔ)器部分關(guān)聯(lián)。當(dāng)加密數(shù)據(jù)被接收到視頻卡上時(shí),數(shù)據(jù)被用與解密數(shù)據(jù)將被寫入其中的受保護(hù)的存儲(chǔ)器部分關(guān)聯(lián)的解密密鑰自動(dòng)解密。然后GPU可以自由地對(duì)解密數(shù)據(jù)進(jìn)行操作。如果數(shù)據(jù)將被移到物理上不在視頻卡上的未保護(hù)的存儲(chǔ)器部分或存儲(chǔ)器,則可以用關(guān)聯(lián)的加密密鑰將數(shù)據(jù)加密,然后移動(dòng)。由于數(shù)據(jù)可以在傳輸時(shí)被加密,因此沒有必要在發(fā)送圖像之前緩存整個(gè)加密的圖像。
在另一個(gè)實(shí)施例中,加密數(shù)據(jù)被接收到視頻卡并放入未保護(hù)的存儲(chǔ)器部分。然后數(shù)據(jù)可以被解密到視頻卡上的存儲(chǔ)器的受保護(hù)部分。然后GPU可以對(duì)解密數(shù)據(jù)進(jìn)行操作。如果數(shù)據(jù)將被移到視頻卡的存儲(chǔ)器的未保護(hù)部分或從視頻卡移到系統(tǒng)存儲(chǔ)器,則數(shù)據(jù)可以被重新加密。
因此,各種實(shí)施例可以通過確保數(shù)據(jù)任何時(shí)候都被放到可能被攻擊的總線(例如PCI總線或AGP總線)來保護(hù)數(shù)據(jù),數(shù)據(jù)被加密,從而受到保護(hù)。


圖1是顯示計(jì)劃在計(jì)算機(jī)系統(tǒng)中使用的示范視頻卡或圖形卡的各種組件的方框圖。
圖2是根據(jù)描述的實(shí)施例可以使用視頻卡的示范計(jì)算機(jī)系統(tǒng)的方框圖。
圖3是描述根據(jù)描述的一個(gè)實(shí)施例的方法中的步驟的流程圖。
圖4是描述根據(jù)描述的一個(gè)實(shí)施例的方法中的步驟的流程圖。
圖5是顯示根據(jù)一個(gè)實(shí)施例的示范視頻卡或圖形卡的各種組件的方框圖。
圖6是顯示圖5的視頻卡的各種組件的方框圖。
圖7是描述根據(jù)描述的一個(gè)實(shí)施例的方法中的步驟的流程圖。
圖8是對(duì)了解描述的實(shí)施例的某些方面有用的方框圖。
圖9是描述根據(jù)一個(gè)實(shí)施例的方法中的步驟的流程圖。
圖10是顯示根據(jù)一個(gè)實(shí)施例的視頻卡的各種組件的方框圖。
具體實(shí)施例方式
示范計(jì)算機(jī)系統(tǒng)圖2說明了一個(gè)適當(dāng)?shù)挠?jì)算環(huán)境200的示例,在該計(jì)算環(huán)境中可以實(shí)現(xiàn)下文所述的系統(tǒng)和相關(guān)方法。
可以理解,計(jì)算環(huán)境200只是一個(gè)適當(dāng)?shù)挠?jì)算環(huán)境的示例,不對(duì)媒體處理系統(tǒng)的使用范圍或功能暗示任何限制。計(jì)算環(huán)境200不應(yīng)被解釋為與示范計(jì)算環(huán)境200中所示的任何一個(gè)組件或組件組合有任何相關(guān)的依賴關(guān)系或要求。
描述的各種實(shí)施例可以應(yīng)用于很多其他一般用途或特殊用途的計(jì)算系統(tǒng)環(huán)境或配置??梢赃m合用于媒體處理系統(tǒng)的已知的計(jì)算系統(tǒng)、環(huán)境和/或配置包括,但不僅限于,個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、瘦客戶端、胖客戶端、手提或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程的消費(fèi)類電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機(jī)、大型機(jī)、包括上述系統(tǒng)或設(shè)備中的任何系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等。
在某些情況下,在由計(jì)算機(jī)執(zhí)行諸如程序模塊之類的計(jì)算機(jī)可執(zhí)行指令的一般環(huán)境中,可以很好地描述系統(tǒng)和相關(guān)的方法。一般來講,程序模塊包括例程、程序、對(duì)象、組件和執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的數(shù)據(jù)結(jié)構(gòu)。實(shí)施例還可以在那些任務(wù)可以由通過通信網(wǎng)絡(luò)鏈接在一起的遠(yuǎn)程處理設(shè)備執(zhí)行的分布式計(jì)算環(huán)境中實(shí)現(xiàn)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)器存儲(chǔ)設(shè)備的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。
根據(jù)圖2說明的實(shí)施例,顯示的計(jì)算系統(tǒng)200包括一個(gè)或多個(gè)處理器或處理單元202、系統(tǒng)存儲(chǔ)器204、以及連結(jié)包括系統(tǒng)存儲(chǔ)器204在內(nèi)的各種系統(tǒng)組件與處理器202的總線206。
總線206用于代表多種類型的總線結(jié)構(gòu)中的任何一個(gè)或多個(gè),包括存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線、加速圖形端口,以及使用各種總線體系結(jié)構(gòu)中的任何一種體系結(jié)構(gòu)的處理器或本地總線。作為示例,而不僅限于,這樣的體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、增強(qiáng)的ISA(EISA)總線、視頻電子產(chǎn)品標(biāo)準(zhǔn)協(xié)會(huì)(VESA)本地總線,以及外圍組件互連(PCI)總線,也就是通常所說的附加板總線。
計(jì)算機(jī)200通常包括各種計(jì)算機(jī)可讀的媒體。這樣的媒體可以是計(jì)算機(jī)200可進(jìn)行本地和/或遠(yuǎn)程訪問的任何可用的媒體,并包括易失性和非易失性媒體、可移動(dòng)和非可移動(dòng)媒體。
在圖2中,系統(tǒng)存儲(chǔ)器204包括易失性形式的計(jì)算機(jī)可讀的媒體,如隨機(jī)存取存儲(chǔ)器(RAM)210,和/或非易失性存儲(chǔ)器,如只讀存儲(chǔ)器(ROM)208。ROM208中存儲(chǔ)了基本輸入/輸出系統(tǒng)(BIOS)212,里面包含幫助在計(jì)算機(jī)200內(nèi)的各個(gè)元件之間如在啟動(dòng)過程中傳輸信息的基本例程。RAM210通常包含處理單元202立即可訪問和/或目前正在對(duì)其進(jìn)行操作的數(shù)據(jù)和/或程序模塊。
計(jì)算機(jī)200還可以進(jìn)一步包括其他可移動(dòng)/非可移動(dòng)的、易失性/非易失性計(jì)算機(jī)存儲(chǔ)媒體。只作為示例,圖2說明了硬盤驅(qū)動(dòng)器228,未顯示,通常叫做“硬盤”,用于從非可移動(dòng)、非易失性磁性媒體讀取和向其中寫入,磁盤驅(qū)動(dòng)器230,例如,“軟盤”,用于從可移動(dòng)、非易失性磁盤232讀取和向其中寫入,光盤驅(qū)動(dòng)器234,如CD-ROM、DVD-ROM或其他光學(xué)媒體,用于從可移動(dòng)、非易失性光盤236讀取或向其中寫入。硬盤驅(qū)動(dòng)器228、磁盤驅(qū)動(dòng)器230和光盤驅(qū)動(dòng)器234都由一個(gè)或多個(gè)接口226連接到總線206。
驅(qū)動(dòng)器以及與它們關(guān)聯(lián)的計(jì)算機(jī)可讀的媒體為計(jì)算機(jī)200非易失性地存儲(chǔ)計(jì)算機(jī)可讀的指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其他數(shù)據(jù)。雖然此處描述的示范環(huán)境使用了硬盤228、可移動(dòng)磁盤232和可移動(dòng)光盤236,但是那些精通本技術(shù)的人應(yīng)該理解,可以存儲(chǔ)計(jì)算機(jī)可訪問的數(shù)據(jù)的其他類型的計(jì)算機(jī)可讀的媒體,如磁帶、閃存卡、數(shù)字視盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)等等,也可以在示范操作環(huán)境中使用。
許多程序模塊可以存儲(chǔ)在硬盤228、磁盤232、光盤236、ROM208或RAM210上,包括,作為示例,而不僅限于,操作系統(tǒng)214、一個(gè)或多個(gè)應(yīng)用程序216,例如,多媒體應(yīng)用程序224,其他程序模塊218,以及程序數(shù)據(jù)220。用戶可以通過諸如鍵盤238和指針設(shè)備240(如“鼠標(biāo)”)之類的輸入設(shè)備將命令和信息輸入到計(jì)算機(jī)200中。其他輸入設(shè)備可以包括音頻/視頻輸入設(shè)備253、麥克風(fēng)、游戲桿、游戲板、碟形衛(wèi)星天線、串行端口、掃描儀等等(未顯示)。這些和其他輸入設(shè)備通過連接到總線206的輸入接口處理單元,但也可以通過其他接口和總線結(jié)構(gòu)連接,如并行端口、游戲端口或通用串行總線(USB)。
監(jiān)視器256或其他類型的顯示設(shè)備也通過諸如視頻適配器或視頻/圖形卡244之類的接口連接到總線206。除了監(jiān)視器外,個(gè)人計(jì)算機(jī)還包括其他外圍輸出設(shè)備(未顯示),如揚(yáng)聲器和打印機(jī),它們可以通過輸出外圍接口246進(jìn)行連接。
計(jì)算機(jī)200可以使用與一臺(tái)或多臺(tái)遠(yuǎn)程計(jì)算機(jī),如遠(yuǎn)程計(jì)算機(jī)250的邏輯連接在一個(gè)網(wǎng)絡(luò)環(huán)境中運(yùn)行。遠(yuǎn)程計(jì)算機(jī)250可以包括此處涉及計(jì)算機(jī)時(shí)所描述的許多或全部元件和功能。
如圖2所示,計(jì)算系統(tǒng)200通過局域網(wǎng)(LAN)251一般廣域網(wǎng)(WAN)252與諸如遠(yuǎn)程計(jì)算機(jī)250之類的遠(yuǎn)程設(shè)備連接。這樣的網(wǎng)絡(luò)環(huán)境在辦公室、企業(yè)計(jì)算機(jī)網(wǎng)絡(luò)、Intranet以及因特網(wǎng)中是常見的。
當(dāng)計(jì)算機(jī)200在一個(gè)LAN網(wǎng)絡(luò)環(huán)境中使用時(shí),它通過適當(dāng)?shù)木W(wǎng)絡(luò)接口或適配器248連接到LAN251。當(dāng)計(jì)算機(jī)200在一個(gè)WAN網(wǎng)絡(luò)環(huán)境中使用時(shí),它通常包括一個(gè)調(diào)制解調(diào)器254或其他用于在WAN252上建立通信的裝置。調(diào)制解調(diào)器254可以是內(nèi)置的,也可以是外置的,可以通過用戶輸入接口242或其他相應(yīng)的機(jī)制連接到系統(tǒng)總線206。
在網(wǎng)絡(luò)環(huán)境中,涉及個(gè)人計(jì)算機(jī)200時(shí)所描述的程序模塊,或者它的一部分,可以存儲(chǔ)在遠(yuǎn)程存儲(chǔ)設(shè)備中。作為示例,而不僅限于,圖2說明了駐留在遠(yuǎn)程計(jì)算機(jī)250的存儲(chǔ)設(shè)備上的遠(yuǎn)程應(yīng)用程序216??梢岳斫?,顯示和描述的網(wǎng)絡(luò)連接是示范性的,也可以使用在計(jì)算機(jī)之間建立通信鏈接的其他裝置。
概述在下文所述的實(shí)施例中,可以將計(jì)劃由視頻卡使用的數(shù)據(jù)加密以便數(shù)據(jù)被提供到視頻卡和計(jì)算機(jī)系統(tǒng)之間的總線(例如PCI或AGP總線)時(shí)隨時(shí)將數(shù)據(jù)加密。這是有利的,因?yàn)椴东@到總線的窺探設(shè)備或流氓應(yīng)用程序無法訪問未加密形式的數(shù)據(jù)。如此,當(dāng)數(shù)據(jù)從視頻卡上的視頻存儲(chǔ)器移到系統(tǒng)的存儲(chǔ)器,例如,當(dāng)它被映射到系統(tǒng)的物理存儲(chǔ)器時(shí),以及進(jìn)行相反操作時(shí),數(shù)據(jù)處于加密形式并因此受到保護(hù)。
當(dāng)加密數(shù)據(jù)從系統(tǒng)的存儲(chǔ)器傳輸?shù)揭曨l卡以便讓圖形處理單元(GPU)處理時(shí),可以將其解密并放入視頻卡上的受保護(hù)的存儲(chǔ)器中。如此,GPU可以對(duì)未加密的數(shù)據(jù)執(zhí)行操作—執(zhí)行GPU最適合執(zhí)行的操作。
在下文所述的實(shí)施例中,描述了兩種具體的情況每當(dāng)數(shù)據(jù)在視頻卡和計(jì)算機(jī)系統(tǒng)之間的總線上傳輸時(shí)就通過加密來保護(hù)數(shù)據(jù)??梢岳斫?,具體描述的實(shí)施例只是示例,在不偏離權(quán)利要求中的主題的精神和范圍的情況下,也可以對(duì)具體的實(shí)施例作出修改。
圖3是描述根據(jù)一個(gè)實(shí)施例的方法中的步驟的流程圖。該方法可以以任何適當(dāng)?shù)挠布?、軟件、固件或它們的組合來實(shí)現(xiàn)。在此特定的示例中,該方法描述了當(dāng)數(shù)據(jù)從視頻卡移到系統(tǒng)或系統(tǒng)存儲(chǔ)器時(shí)執(zhí)行的示范處理步驟。
步驟300在視頻卡上提供未加密的數(shù)據(jù)。此數(shù)據(jù)是通常由視頻卡的GPU處理的數(shù)據(jù)并在視頻卡的存儲(chǔ)器中提供。步驟302將視頻卡上的未加密的數(shù)據(jù)加密。此步驟可以為響應(yīng)將數(shù)據(jù)傳輸?shù)较到y(tǒng)的存儲(chǔ)器的請(qǐng)求來實(shí)現(xiàn)。例如,CPU可以發(fā)出一個(gè)將數(shù)據(jù)從視頻卡移到系統(tǒng)的存儲(chǔ)器的指令?;蛘?,GPU可以確定它不再需要數(shù)據(jù),因此啟動(dòng)向系統(tǒng)的存儲(chǔ)器傳輸數(shù)據(jù)的操作??梢允褂萌魏芜m當(dāng)?shù)募用芗夹g(shù)將視頻卡上的數(shù)據(jù)加密。然后,步驟304通過視頻卡和系統(tǒng)之間的總線發(fā)送加密數(shù)據(jù)。示范總線可以是PCI總線和AGP總線。步驟306將加密數(shù)據(jù)提供到系統(tǒng)存儲(chǔ)器。
在上文描述的過程中,從視頻卡移到系統(tǒng)的存儲(chǔ)器的數(shù)據(jù)經(jīng)過加密,從而試圖捕獲總線以及竊取或復(fù)制數(shù)據(jù)的任何窺探設(shè)備或流氓應(yīng)用程序?qū)⒅荒芙邮盏郊用艿臄?shù)據(jù),而該數(shù)據(jù)對(duì)窺探設(shè)備或流氓應(yīng)用程序來說,將在數(shù)學(xué)上是無法解密的。
圖4是描述根據(jù)一個(gè)實(shí)施例的方法中的步驟的流程圖。該方法可以以任何適當(dāng)?shù)挠布?、軟件、固件或它們的組合來實(shí)現(xiàn)。在此特定的示例中,該方法描述了當(dāng)數(shù)據(jù)從系統(tǒng)或系統(tǒng)存儲(chǔ)器移到視頻卡時(shí)執(zhí)行的示范處理步驟。
步驟400在系統(tǒng)存儲(chǔ)器中提供數(shù)據(jù)。這樣的數(shù)據(jù)通常是由視頻卡利用以便進(jìn)行處理的數(shù)據(jù)。該數(shù)據(jù)可以在系統(tǒng)存儲(chǔ)器中作為經(jīng)過加密的或者未加密的數(shù)據(jù)提供。步驟402可以將數(shù)據(jù)加密(如果它在系統(tǒng)存儲(chǔ)器中是未加密的),并可以將數(shù)據(jù)發(fā)送到系統(tǒng)存儲(chǔ)器和視頻卡之間的總線。此步驟可以為響應(yīng)處理視頻卡上的數(shù)據(jù)的請(qǐng)求來實(shí)現(xiàn)。步驟404接收視頻卡上的加密數(shù)據(jù)。然后,步驟406將視頻卡上的加密數(shù)據(jù)解密,步驟408將解密數(shù)據(jù)提供到視頻存儲(chǔ)器,以便由GPU進(jìn)行處理。
在上文描述的過程中,從系統(tǒng)的存儲(chǔ)器移到視頻卡的數(shù)據(jù)經(jīng)過加密,從而試圖捕獲總線以及竊取或復(fù)制數(shù)據(jù)的任何窺探設(shè)備或流氓應(yīng)用程序?qū)⒅荒芙邮盏郊用艿臄?shù)據(jù),而該數(shù)據(jù)對(duì)窺探設(shè)備或流氓應(yīng)用程序來說,將在數(shù)學(xué)上是無法解密的。
第一個(gè)示范性視頻卡實(shí)施例圖5顯示了根據(jù)一個(gè)實(shí)施例的示范視頻卡或圖形卡500???00包括插入到典型的計(jì)算機(jī)上的端口的總線連接器502。視頻卡500還包括監(jiān)視器連接器504,例如15針插頭,該連接器通過電纜連接到監(jiān)視器。視頻卡500可以包括,但不一定包括數(shù)字視頻輸出插座506,例如DVI,可以用于將視頻圖像發(fā)送到數(shù)字顯示器等等。
與圖1的視頻卡類似,視頻卡500包括圖形處理單元(GPU)508、視頻存儲(chǔ)器510、隨機(jī)存取存儲(chǔ)器數(shù)字到模擬轉(zhuǎn)換器(RAMDAC)512、可以包括在視頻BIOS514的驅(qū)動(dòng)程序軟件。
GPU508是專用圖形處理芯片,用于控制分辨率、顏色深度,以及與在監(jiān)視器屏幕上呈現(xiàn)圖像相關(guān)的所有元素等各個(gè)方面。存儲(chǔ)器控制器,有時(shí)集成到GPU中,對(duì)視頻卡上的存儲(chǔ)器進(jìn)行管理。計(jì)算機(jī)的中央處理單元或CPU(未顯示)發(fā)送一組圖形指令和數(shù)據(jù),它們由圖形卡的專用驅(qū)動(dòng)程序進(jìn)行解釋并由卡的GPU508執(zhí)行。GPU508執(zhí)行諸如位圖傳輸和繪制、窗口大小和位置調(diào)整、線條繪制、字體縮放和多邊形繪制之類的操作。然后GPU可以將幀數(shù)據(jù)寫入幀緩沖器,或板載視頻存儲(chǔ)器510。
視頻存儲(chǔ)器幀緩沖器中的信息是出現(xiàn)在屏幕上的作為數(shù)字位圖存儲(chǔ)的圖像。如上文所述,利用RAMDAC512將數(shù)字位圖轉(zhuǎn)換為可以在監(jiān)視器上呈現(xiàn)的形式。
除了這些組件之外,在此實(shí)施例中,視頻卡500還包括存儲(chǔ)器控制器516和密鑰管理器518。視頻卡還可以包括解密器520。這些組件可以以任何適當(dāng)?shù)挠布?、軟件、固件或它們的組合來實(shí)現(xiàn)。
存儲(chǔ)器控制器516接收視頻卡上的加密數(shù)據(jù)并將數(shù)據(jù)解密到視頻存儲(chǔ)器510的受保護(hù)區(qū)域或部分。解密數(shù)據(jù)現(xiàn)在處于可以被GPU508操作的狀態(tài)。存儲(chǔ)器控制器還可以負(fù)責(zé)確保在視頻卡上的受保護(hù)區(qū)域之間或具有兼容的保護(hù)級(jí)別的區(qū)域之間進(jìn)行數(shù)據(jù)傳輸。即,在處理視頻卡上的數(shù)據(jù)期間GPU508將多次對(duì)視頻存儲(chǔ)器中的數(shù)據(jù)進(jìn)行操作,例如,通過執(zhí)行混合操作,并導(dǎo)致結(jié)果數(shù)據(jù)被寫入到不同的視頻存儲(chǔ)器位置。在此情況下,可能有不受保護(hù)的或以不同的級(jí)別保護(hù)的視頻存儲(chǔ)器的區(qū)域。在這種情況下,存儲(chǔ)器控制器可以確保在視頻卡內(nèi)進(jìn)行數(shù)據(jù)傳輸,以便確保保護(hù)未加密的數(shù)據(jù)。下面將更詳細(xì)地描述這是如何進(jìn)行的示例。
密鑰管理器518可以控制用于將視頻卡上的數(shù)據(jù)加密和解密的加密與解密密鑰。在一個(gè)實(shí)施例中,密鑰管理器518包括單獨(dú)的芯片。密鑰管理器518與存儲(chǔ)器控制器鏈接,并可以用各種加密/解密密鑰對(duì)存儲(chǔ)器控制器進(jìn)行編程。優(yōu)選情況下,密鑰管理器518和存儲(chǔ)器控制器516之間的通信通過加密的經(jīng)過身份驗(yàn)證的通信信道進(jìn)行,從而可以確保密鑰管理器是可以對(duì)存儲(chǔ)器控制器進(jìn)行編程的唯一實(shí)體。
視頻卡500還可以包括被配置為或可配置為將數(shù)據(jù)解密的解密器520。例如,在某些情況下,視頻卡上未加密的數(shù)據(jù)可以被寫入到不受保護(hù)的存儲(chǔ)器區(qū)域。例如,這樣的數(shù)據(jù)可以被寫入所謂的“主表面”或桌面表面,該表面包含被RAMDAC512用來在監(jiān)視器上呈現(xiàn)圖像的數(shù)據(jù)。在這種情況下,保護(hù)未加密的數(shù)據(jù)以使它不受到攻擊是理想的。相應(yīng)地,當(dāng)數(shù)據(jù)從受保護(hù)的存儲(chǔ)器區(qū)域移到未保護(hù)存儲(chǔ)器區(qū)域時(shí),存儲(chǔ)器控制器516可以將數(shù)據(jù)加密。在此示例中,密鑰管理器518跟蹤并知道哪些密鑰與未保護(hù)的存儲(chǔ)器區(qū)域中的加密數(shù)據(jù)關(guān)聯(lián)。當(dāng)加密數(shù)據(jù)將被提供到RAMDAC512時(shí),密鑰管理器便可以指示解密器520使用哪一個(gè)密鑰或哪些密鑰來將加密數(shù)據(jù)解密。然后,加密數(shù)據(jù)被提供到解密器520,進(jìn)行解密,然后提供到RAMDAC512以便進(jìn)一步進(jìn)行處理。
或者,可以省去解密器,RAMDAC512可以被配置為執(zhí)行解密功能。在這種情況下,密鑰管理器518可以指示RAMDAC使用哪些密鑰來進(jìn)行解密。
圖6中的600更詳細(xì)地顯示了根據(jù)一個(gè)實(shí)施例的視頻卡500(圖5)的選定的組件。那里,存儲(chǔ)器控制器516包括解密模塊602,該模塊被配置為從總線(在此示例PCI或AGP)接收加密數(shù)據(jù)并將數(shù)據(jù)解密到視頻存儲(chǔ)器510中。此外,提供了存儲(chǔ)器保護(hù)表604和等效的決策表606。
在此示例中,存儲(chǔ)器保護(hù)表604包括表部分604a,該部分包含將加密/解密密鑰對(duì)與視頻存儲(chǔ)器510的單個(gè)部分關(guān)聯(lián)的條目。例如,加密/解密密鑰對(duì)E1/D1與存儲(chǔ)器部分608關(guān)聯(lián),加密/解密密鑰對(duì)E2/D2與存儲(chǔ)器部分610關(guān)聯(lián)。當(dāng)視頻存儲(chǔ)器中的解密數(shù)據(jù)將被從視頻卡寫入到系統(tǒng)存儲(chǔ)器時(shí),或當(dāng)視頻卡上的數(shù)據(jù)將通過總線(例如PCI或AGP總線)提供的任何其他時(shí)間,CPU可以使數(shù)據(jù)用表部分604a中的加密密鑰中的一個(gè)進(jìn)行加密。然后,加密數(shù)據(jù)可以放到總線并提供到系統(tǒng)存儲(chǔ)器中。當(dāng)存儲(chǔ)器控制器516從系統(tǒng)存儲(chǔ)器接收已經(jīng)用密鑰E1加密的加密數(shù)據(jù),解密模塊602可以定位關(guān)聯(lián)的解密密鑰D1并將數(shù)據(jù)解密到存儲(chǔ)器部分608。
視頻存儲(chǔ)器510可以有許多受保護(hù)部分。在本示例中,有四個(gè)受保護(hù)部分,以608-614表示。這些受保護(hù)部分中的未加密的數(shù)據(jù)可以由GPU508(圖5)以通常的方式進(jìn)行處理。視頻存儲(chǔ)器的受保護(hù)部分可以被訪問控制列表保護(hù)。例如,存儲(chǔ)器保護(hù)表604包括可以為視頻存儲(chǔ)器的各個(gè)部分定義訪問控制列表的表部分604b。視頻存儲(chǔ)器的每個(gè)部分可以在其關(guān)聯(lián)的訪問控制列表中定義哪些實(shí)體可以訪問存儲(chǔ)器部分。如此,訪問控制列表的每個(gè)存儲(chǔ)器部分中包含那些實(shí)體之外的實(shí)體的任何訪問企圖都將被存儲(chǔ)器控制器拒絕。
還要注意,視頻存儲(chǔ)器510可以包括不受保護(hù)的部分。在此示例中,部分616-624不受保護(hù)。相應(yīng)地,沒有與這些存儲(chǔ)器部分關(guān)聯(lián)的加密/解密密鑰對(duì)。
圖7是描述根據(jù)一個(gè)實(shí)施例的方法中的步驟的流程圖。該方法可以以任何適當(dāng)?shù)挠布?、軟件、固件或它們的組合來實(shí)現(xiàn)。在說明的示例中,該方法至少可以部分地用諸如結(jié)合圖6描述的系統(tǒng)之類的系統(tǒng)來實(shí)現(xiàn)。
步驟700提供一個(gè)或多個(gè)密鑰對(duì)。每個(gè)密鑰對(duì)包括加密密鑰和關(guān)聯(lián)的解密密鑰。步驟702將密鑰對(duì)與視頻存儲(chǔ)器的單個(gè)部分關(guān)聯(lián)??梢岳萌魏芜m當(dāng)?shù)姆绞綄⒚荑€對(duì)與視頻存儲(chǔ)器部分關(guān)聯(lián)。在圖6的示例中,使用了具有多個(gè)不同條目的存儲(chǔ)器保護(hù)表。單個(gè)表?xiàng)l目對(duì)應(yīng)于特定的密鑰對(duì),并且每個(gè)表?xiàng)l目與視頻存儲(chǔ)器的部分關(guān)聯(lián)。
步驟704使用密鑰對(duì)的加密密鑰將未加密的數(shù)據(jù)加密。例如,如果視頻存儲(chǔ)器中的未加密的數(shù)據(jù)將被寫入系統(tǒng)存儲(chǔ)器,CPU可以使該數(shù)據(jù)用加密密鑰進(jìn)行加密,該加密密鑰與數(shù)據(jù)所在的視頻存儲(chǔ)器部分關(guān)聯(lián)。然后,步驟706通過總線將加密數(shù)據(jù)發(fā)送到系統(tǒng)存儲(chǔ)器。
跟隨在步驟702之后的步驟708使用密鑰對(duì)的解密密鑰將加密數(shù)據(jù)解密。例如,假設(shè)數(shù)據(jù)用加密密鑰進(jìn)行加密,然后提供到系統(tǒng)的存儲(chǔ)器。如果GPU需要加密數(shù)據(jù),則數(shù)據(jù)可以由CPU發(fā)送到視頻卡。在接收到加密數(shù)據(jù)之后,存儲(chǔ)器控制器可以定位與用于將數(shù)據(jù)加密的加密密鑰關(guān)聯(lián)的解密密鑰,并使用該解密密鑰將數(shù)據(jù)解密。然后,步驟710可以將數(shù)據(jù)提供到與解密密鑰關(guān)聯(lián)的視頻存儲(chǔ)器部分。如此,每當(dāng)數(shù)據(jù)通過一個(gè)或多個(gè)系統(tǒng)總線提供時(shí),都會(huì)受到保護(hù)。
提供了等效的決策表606(圖6)并由存儲(chǔ)器控制器516用來確保在存儲(chǔ)器510的視頻卡內(nèi)進(jìn)行數(shù)據(jù)傳輸并且使數(shù)據(jù)得到保護(hù)。
作為示例,請(qǐng)看圖8。GPU處理視頻卡上的數(shù)據(jù)時(shí),它將數(shù)據(jù)從一個(gè)存儲(chǔ)器位置移到另一個(gè)位置。例如,當(dāng)GPU執(zhí)行混合操作時(shí),它可以獲取視頻卡上兩個(gè)不同存儲(chǔ)器部分的數(shù)據(jù),將數(shù)據(jù)混合,然后將結(jié)果混合數(shù)據(jù)寫入到視頻存儲(chǔ)器的所有不同部分。這由GPU操作800以圖形方式表示。這里假設(shè)GPU執(zhí)行的操作具有兩個(gè)輸入和一個(gè)輸出。每一個(gè)輸入對(duì)應(yīng)于存儲(chǔ)在視頻存儲(chǔ)器的受保護(hù)部分的數(shù)據(jù)。在此示例中,一個(gè)輸入存儲(chǔ)在視頻存儲(chǔ)器的與加密密鑰E1關(guān)聯(lián)的受保護(hù)部分,另外一個(gè)輸入存儲(chǔ)在視頻存儲(chǔ)器的與加密密鑰E2關(guān)聯(lián)的受保護(hù)部分(因此是E1和E2輸入)。一旦執(zhí)行了操作,結(jié)果輸出數(shù)據(jù)將被存儲(chǔ)在視頻存儲(chǔ)器的與加密密鑰E4關(guān)聯(lián)的受保護(hù)部分。現(xiàn)在,GPU無論在哪里執(zhí)行諸如此類的存儲(chǔ)器傳輸,存儲(chǔ)器控制器516都可以確保知道數(shù)據(jù)來自哪里以及該數(shù)據(jù)將存儲(chǔ)在哪里。然后,存儲(chǔ)器控制器將檢查以確保視頻存儲(chǔ)器的將要存儲(chǔ)輸出數(shù)據(jù)的部分在給數(shù)據(jù)提供的保護(hù)級(jí)別方面與發(fā)出成分?jǐn)?shù)據(jù)的存儲(chǔ)器部分提供的保護(hù)級(jí)別是一致的。
在此示例中,保護(hù)一致性可以通過確定包含輸入數(shù)據(jù)的存儲(chǔ)器部分關(guān)聯(lián)的密鑰是否等效于與將要保存輸出數(shù)據(jù)的存儲(chǔ)器部分關(guān)聯(lián)的密鑰或與之相同來實(shí)施。在此示例中,可以基于與存儲(chǔ)器部分關(guān)聯(lián)的限制來確定是否等效—即—在不同的存儲(chǔ)器部分之間是否有相同的保護(hù)級(jí)別?如果兩個(gè)不同的程序具有兩個(gè)不同的內(nèi)容,則密鑰可能不等效。例如,假設(shè)每個(gè)內(nèi)容是用不同的密鑰加密的,并且與密鑰關(guān)聯(lián)的程序無法共享內(nèi)容。在此示例中,加密密鑰不等效。
確定與各個(gè)存儲(chǔ)器部分關(guān)聯(lián)的密鑰是否等效的一種方法是使用諸如表606之類的等效的決策表。那里,該表定義了包含每一密鑰的條目的矩陣。一個(gè)矩陣單元格中的“X”表示密鑰是等效的。例如,首先請(qǐng)看密鑰E1,此密鑰等效于密鑰E1、E2和E4。如此,如圖6所示,數(shù)據(jù)可以在存儲(chǔ)器部分608、610和614之間自由地傳輸。然而,密鑰E1不等效于密鑰E3。如此,無法將數(shù)據(jù)從存儲(chǔ)器部分608傳輸?shù)酱鎯?chǔ)器部分612。在圖8的示例中,由于輸入數(shù)據(jù)來自存儲(chǔ)器部分608和610,結(jié)果數(shù)據(jù)將存儲(chǔ)在存儲(chǔ)器部分614,等效不是一個(gè)問題,因此可以進(jìn)行操作。
圖9是描述根據(jù)一個(gè)實(shí)施例的方法中的步驟的流程圖。該方法可以以任何適當(dāng)?shù)挠布?、軟件、固件或它們的組合來實(shí)現(xiàn)。在說明的示例中,該方法至少可以部分地用諸如結(jié)合圖6描述的系統(tǒng)之類的系統(tǒng)來實(shí)現(xiàn)。
步驟900從視頻卡上的視頻存儲(chǔ)器部分讀取數(shù)據(jù)。此步驟可以由GPU實(shí)現(xiàn)。步驟902記錄與從中讀取數(shù)據(jù)的視頻存儲(chǔ)器部分關(guān)聯(lián)的密鑰對(duì)。此步驟可以由存儲(chǔ)器控制器實(shí)現(xiàn)。步驟904確定記錄的密鑰對(duì)是否等效于與充當(dāng)由于GPU的操作產(chǎn)生的輸出數(shù)據(jù)的目標(biāo)的視頻存儲(chǔ)器部分關(guān)聯(lián)的密鑰對(duì)。如果密鑰對(duì)等效,則步驟906將輸出數(shù)據(jù)提供到視頻存儲(chǔ)器目標(biāo)部分。另一方面,如果密鑰對(duì)不等效,則步驟908查找具有等效密鑰對(duì)的視頻存儲(chǔ)器目標(biāo)部分,或者步驟910可能將空白數(shù)據(jù)輸出到指定的存儲(chǔ)器目標(biāo)。
第二個(gè)示范性視頻卡實(shí)施例圖10顯示了根據(jù)另一個(gè)實(shí)施例的示范視頻卡或圖形卡1000。這里,圖的一部分被稱為“視頻卡”,圖的另一部分被稱為“系統(tǒng)”。這樣的表示分別用于指定視頻卡和系統(tǒng)上的那些組件。圖的“系統(tǒng)”一側(cè)包括CPU1002和系統(tǒng)存儲(chǔ)器1004。還要注意,在系統(tǒng)存儲(chǔ)器1004內(nèi)有計(jì)劃在視頻卡1000上使用的數(shù)據(jù)1006。
在此實(shí)施例中,駐留在系統(tǒng)存儲(chǔ)器1004中的數(shù)據(jù)1006是未加密的。CPU1002被配置為每當(dāng)數(shù)據(jù)通過總線發(fā)送到視頻卡時(shí)將數(shù)據(jù)加密。這樣的操作通常是由被稱為“加密存儲(chǔ)器傳輸”的CPU操作完成的。如此,現(xiàn)在加密數(shù)據(jù)將被放入視頻存儲(chǔ)器510的未保護(hù)部分624。在此示例中,數(shù)據(jù)可以由CPU用加密密鑰E1進(jìn)行加密。
回想一下,GPU508被配置為處理未加密的數(shù)據(jù)。相應(yīng)地,當(dāng)GPU508需要處理視頻存儲(chǔ)器510的未保護(hù)部分的加密數(shù)據(jù)時(shí),數(shù)據(jù)應(yīng)該被解密。在此實(shí)施例中,GPU508包含解密功能,該功能在圖中由解密模塊602表示。密鑰管理器518與GPU508鏈接,并可以用適當(dāng)?shù)慕饷苊荑€對(duì)GPU進(jìn)行編程。當(dāng)然,密鑰管理器和GPU之間的通信可以通過經(jīng)過身份驗(yàn)證的鏈接進(jìn)行。
相應(yīng)地,當(dāng)GPU希望對(duì)視頻存儲(chǔ)器中的加密數(shù)據(jù)1006進(jìn)行操作時(shí),它可以訪問加密數(shù)據(jù),并將它解密到視頻存儲(chǔ)器的受保護(hù)部分—這里是受保護(hù)部分614。解密可以通過被稱為“解密存儲(chǔ)器傳輸”的操作來進(jìn)行?,F(xiàn)在,此數(shù)據(jù)和其他數(shù)據(jù)位于視頻存儲(chǔ)器的受保護(hù)部分,GPU可以自由地以通常的方式對(duì)其進(jìn)行操作。
在此實(shí)施例中,存儲(chǔ)器控制器516可以通過訪問控制列表(未明確顯示)控制對(duì)視頻存儲(chǔ)器的受保護(hù)部分的訪問,從而對(duì)存儲(chǔ)器實(shí)施保護(hù)。如此,每當(dāng)諸如GPU508(或它的組成部分)之類的實(shí)體希望訪問受保護(hù)的視頻存儲(chǔ)器部分時(shí),它都可以通過存儲(chǔ)器控制器516獲得訪問。訪問控制列表可以描述數(shù)據(jù)具有什么類型的保護(hù)以及哪些實(shí)體可以訪問它。例如,訪問控制列表可以定義GPU的哪些部分可以訪問受保護(hù)的存儲(chǔ)器以及“擁有”受保護(hù)的存儲(chǔ)器并因此具有訪問權(quán)的一個(gè)或多個(gè)應(yīng)用程序。
現(xiàn)在,當(dāng)視頻存儲(chǔ)器的受保護(hù)部分中的數(shù)據(jù)被移到視頻存儲(chǔ)器的未保護(hù)部分時(shí),可以將它加密。例如,假設(shè)存儲(chǔ)器部分614中的數(shù)據(jù)將被移到未保護(hù)存儲(chǔ)器部分620,在此示例中,該部分對(duì)應(yīng)于將被RAMDAC處理以便呈現(xiàn)的桌面表面。GPU508可以通過存儲(chǔ)器控制器516訪問受保護(hù)的存儲(chǔ)器部分,并執(zhí)行加密存儲(chǔ)器傳輸操作以將數(shù)據(jù)加密到存儲(chǔ)器部分620。當(dāng)加密數(shù)據(jù)將被提供到RAMDAC以便進(jìn)行處理時(shí),密鑰管理器518可以與解密器520進(jìn)行通信,并給解密器提供適當(dāng)?shù)慕饷苊荑€,以便將存儲(chǔ)器部分620中的加密數(shù)據(jù)解密。在將數(shù)據(jù)解密之后,解密器520可以將數(shù)據(jù)提供到RAMDAC以便以通常的方式進(jìn)行處理。
還要注意,存儲(chǔ)器控制器516還包括等效的決策表(未明確指定)。此表在概念上類似于結(jié)合圖6和8討論的表。然而,這里該表用于確保當(dāng)數(shù)據(jù)將要在視頻存儲(chǔ)器510的每一個(gè)存儲(chǔ)器部分之間傳輸時(shí),與視頻存儲(chǔ)器510的每一個(gè)存儲(chǔ)器部分關(guān)聯(lián)的訪問控制列表都是等效的。例如,假設(shè)存儲(chǔ)器部分614中的數(shù)據(jù)將被傳輸?shù)酱鎯?chǔ)器部分620。相應(yīng)地,在此示例中,存儲(chǔ)器控制器516將檢查以確保與存儲(chǔ)器部分614關(guān)聯(lián)的訪問控制列表等效于與存儲(chǔ)器部分620關(guān)聯(lián)的訪問控制列表。如果如此,便可以執(zhí)行數(shù)據(jù)傳輸。
結(jié)束語上文描述的各個(gè)實(shí)施例可以確??梢詫⒂?jì)劃由視頻卡使用的數(shù)據(jù)加密以便數(shù)據(jù)被提供到視頻卡和計(jì)算機(jī)系統(tǒng)之間的總線(例如PCI或AGP總線)時(shí)隨時(shí)將數(shù)據(jù)加密。如此,捕獲到總線的窺探設(shè)備或流氓應(yīng)用程序無法訪問未加密形式的數(shù)據(jù),因此也無法竊取這些這些數(shù)據(jù)。相應(yīng)地,可以為將要被系統(tǒng)的視頻卡處理的內(nèi)容提供另一個(gè)保護(hù)級(jí)別。
雖然本發(fā)明是以結(jié)構(gòu)功能和/或方法步驟所特有的語言描述的,可以理解,在所附的權(quán)利要求書中定義的本發(fā)明不一定僅限于描述的特定功能或步驟。特定功能和步驟可以作為實(shí)現(xiàn)權(quán)利要求所述的發(fā)明的優(yōu)選的形式來描述。
權(quán)利要求
1.一種方法,包括將存儲(chǔ)在視頻卡存儲(chǔ)器之外的存儲(chǔ)器中的數(shù)據(jù)加密;將加密的數(shù)據(jù)通過總線傳輸?shù)揭曨l卡;在視頻卡上將加密數(shù)據(jù)解密,所說的解密在需要處理加密數(shù)據(jù)的卡上獨(dú)立于圖形處理單元GPU進(jìn)行;以及在視頻卡存儲(chǔ)器中存儲(chǔ)解密的數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,解密操作是每當(dāng)加密數(shù)據(jù)傳輸?shù)揭曨l卡時(shí)自動(dòng)執(zhí)行的。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,存儲(chǔ)操作包括將解密數(shù)據(jù)存儲(chǔ)在視頻存儲(chǔ)器的受保護(hù)的部分。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,解密操作是由視頻卡上的存儲(chǔ)器控制器執(zhí)行的。
5.根據(jù)權(quán)利要求1所述的方法進(jìn)一步包括,當(dāng)未加密的數(shù)據(jù)在視頻卡上的不同的視頻存儲(chǔ)器部分之間傳輸時(shí),確保視頻存儲(chǔ)器部分具有兼容的保護(hù)級(jí)別。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,解密操作包括使用解密密鑰將加密數(shù)據(jù)解密,該解密密鑰與將要存儲(chǔ)未加密的數(shù)據(jù)的存儲(chǔ)器部分關(guān)聯(lián)。
7.一個(gè)或多個(gè)計(jì)算機(jī)可讀的媒體,上面具有計(jì)算機(jī)可讀的指令,當(dāng)由一個(gè)或多個(gè)處理器執(zhí)行這些指令時(shí),使一個(gè)或多個(gè)處理器將存儲(chǔ)在視頻卡存儲(chǔ)器之外的存儲(chǔ)器中的數(shù)據(jù)加密;將加密的數(shù)據(jù)通過總線傳輸?shù)揭曨l卡;在需要處理加密數(shù)據(jù)的卡上獨(dú)立于圖形處理單元GPU在視頻卡上將加密數(shù)據(jù)解密;以及在視頻卡存儲(chǔ)器中存儲(chǔ)解密的數(shù)據(jù)。
8.根據(jù)權(quán)利要求7所述的一個(gè)或多個(gè)計(jì)算機(jī)可讀的媒體,其特征在于,每當(dāng)加密數(shù)據(jù)傳輸?shù)揭曨l卡時(shí),指令使一個(gè)或多個(gè)處理器自動(dòng)將加密數(shù)據(jù)解密。
9.一種方法,包括在視頻卡存儲(chǔ)器中提供未加密的數(shù)據(jù);將視頻卡的未加密的數(shù)據(jù)加密;以及傳輸加密數(shù)據(jù)使其離視頻卡。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,提供操作包括將未加密的數(shù)據(jù)提供到受保護(hù)的視頻存儲(chǔ)器部分。
11.根據(jù)權(quán)利要求10所述的方法,其特征在于,存儲(chǔ)器部分用訪問控制列表進(jìn)行保護(hù)。
12.根據(jù)權(quán)利要求9所述的方法,其特征在于,提供操作包括將未加密的數(shù)據(jù)提供到視頻存儲(chǔ)器部分,該部分具有關(guān)聯(lián)的加密/解密密鑰對(duì),該密鑰對(duì)可用于對(duì)所說的視頻存儲(chǔ)器部分提供的數(shù)據(jù)分別進(jìn)行加密和解密。
13.根據(jù)權(quán)利要求9所述的方法,其特征在于,加密操作在未加密的數(shù)據(jù)將離開視頻卡提供到系統(tǒng)存儲(chǔ)器的任何時(shí)候進(jìn)行。
14.根據(jù)權(quán)利要求9所述的方法,其特征在于,加密操作在未加密的數(shù)據(jù)將提供到在視頻卡和計(jì)算機(jī)系統(tǒng)的中央處理單元之間連接的總線的任何時(shí)候進(jìn)行,視頻卡包括計(jì)算機(jī)系統(tǒng)的組成部分。
15.一個(gè)或多個(gè)計(jì)算機(jī)可讀的媒體,上面具有計(jì)算機(jī)可讀的指令,當(dāng)由一個(gè)或多個(gè)處理器執(zhí)行這些指令時(shí),使一個(gè)或多個(gè)處理器在視頻卡存儲(chǔ)器中提供未加密的數(shù)據(jù);當(dāng)未加密的數(shù)據(jù)將離開視頻卡被提供到計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器之間的總線的任何時(shí)候,在視頻卡上將未加密的數(shù)據(jù)加密;以及將加密數(shù)據(jù)傳輸?shù)娇偩€。
16.一個(gè)視頻卡,包括圖形處理單元GPU,用于處理將要呈現(xiàn)在監(jiān)視器上的數(shù)據(jù);操作上與圖形處理單元關(guān)聯(lián)的存儲(chǔ)器,用于保存將要被或已經(jīng)被GPU處理的數(shù)據(jù);顯示轉(zhuǎn)換器,用于將數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換為信號(hào),以便用于在監(jiān)視器上呈現(xiàn)數(shù)據(jù);以及存儲(chǔ)器控制器,被配置為接收加密數(shù)據(jù),并將加密數(shù)據(jù)解密到存儲(chǔ)器的受保護(hù)區(qū)域。
17.根據(jù)權(quán)利要求16所述的視頻卡,其特征在于,配置了存儲(chǔ)器控制器以確保在視頻卡上的受保護(hù)的存儲(chǔ)器區(qū)域之間進(jìn)行未加密的數(shù)據(jù)傳輸。
18.根據(jù)權(quán)利要求17所述的視頻卡,其特征在于,配置了存儲(chǔ)器控制器以確保受保護(hù)的存儲(chǔ)器區(qū)域具有兼容的保護(hù)級(jí)別。
19.根據(jù)權(quán)利要求18所述的視頻卡,其特征在于,存儲(chǔ)器控制器至少部分地基于與單個(gè)受保護(hù)的存儲(chǔ)器區(qū)域關(guān)聯(lián)的訪問控制列表確定兼容性。
20.根據(jù)權(quán)利要求18所述的視頻卡,其特征在于,存儲(chǔ)器控制器至少部分地基于與單個(gè)受保護(hù)的存儲(chǔ)器區(qū)域關(guān)聯(lián)的一個(gè)或多個(gè)加密密鑰確定兼容性。
21.根據(jù)權(quán)利要求16所述的視頻卡,進(jìn)一步包括密鑰管理器,用于控制一個(gè)或多個(gè)加密/解密密鑰對(duì),密鑰對(duì)用于將視頻卡上的數(shù)據(jù)分別進(jìn)行加密和解密。
22.根據(jù)權(quán)利要求21所述的視頻卡,其特征在于,密鑰管理器包括單個(gè)集成電路芯片。
23.根據(jù)權(quán)利要求21所述的視頻卡,其特征在于,密鑰管理器與存儲(chǔ)器控制器在通信上鏈接,并被配置為編程存儲(chǔ)器控制器,以便將視頻卡上的數(shù)據(jù)加密和解密。
24.根據(jù)權(quán)利要求16所述的視頻卡,其特征在于,存儲(chǔ)器控制器被配置為將存儲(chǔ)在視頻卡上的存儲(chǔ)器的受保護(hù)區(qū)域的未加密的數(shù)據(jù)加密,以使加密數(shù)據(jù)可以移到視頻卡上的存儲(chǔ)器的未保護(hù)區(qū)域。
25.根據(jù)權(quán)利要求24所述的視頻卡,進(jìn)一步包括解密器,該解密器在操作上與視頻卡上的存儲(chǔ)器關(guān)聯(lián),并被配置為從存儲(chǔ)器接收加密數(shù)據(jù)并將該加密數(shù)據(jù)解密,以使解密數(shù)據(jù)可以提供到顯示轉(zhuǎn)換器以便進(jìn)行處理。
26.根據(jù)權(quán)利要求25所述的視頻卡,進(jìn)一步包括密鑰管理器,用于控制一個(gè)或多個(gè)加密/解密密鑰對(duì),這些密鑰對(duì)用于將視頻卡上的數(shù)據(jù)分別進(jìn)行加密和解密,密鑰管理器被配置為指示解密器使用哪一個(gè)密鑰將加密數(shù)據(jù)解密。
27.根據(jù)權(quán)利要求16所述的視頻卡,其特征在于,存儲(chǔ)器控制器包括存儲(chǔ)器保護(hù)表,該表具有一個(gè)或多個(gè)表?xiàng)l目,單個(gè)表?xiàng)l目至少將一個(gè)加密/解密密鑰對(duì)與要保存數(shù)據(jù)的存儲(chǔ)器區(qū)域關(guān)聯(lián),存儲(chǔ)器區(qū)域上的數(shù)據(jù)可以使用與該存儲(chǔ)器區(qū)域關(guān)聯(lián)的密鑰對(duì)進(jìn)行加密和解密。
28.根據(jù)權(quán)利要求16所述的視頻卡,其特征在于,存儲(chǔ)器控制器包括一個(gè)或多個(gè)訪問控制列表,單個(gè)訪問控制列表與存儲(chǔ)器的單個(gè)區(qū)域相關(guān)聯(lián),并定義哪些實(shí)體可以訪問特定的存儲(chǔ)器區(qū)域。
29.一種方法,包括在視頻卡上提供圖形處理單元GPU,用于處理將要在監(jiān)視器上呈現(xiàn)的數(shù)據(jù);在視頻卡上提供存儲(chǔ)器,該存儲(chǔ)器在操作上與GPU關(guān)聯(lián),用于保存將要被或已經(jīng)被GPU處理的數(shù)據(jù);提供顯示轉(zhuǎn)換器,用于將數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換為信號(hào),以便用于在監(jiān)視器上呈現(xiàn)數(shù)據(jù);以及提供存儲(chǔ)器控制器,被配置為接收加密數(shù)據(jù),并將加密數(shù)據(jù)解密到存儲(chǔ)器的受保護(hù)區(qū)域。
30.根據(jù)權(quán)利要求29所述的方法,其特征在于,提供了存儲(chǔ)器控制器以確保在視頻卡的受保護(hù)的存儲(chǔ)器區(qū)域之間進(jìn)行未加密的數(shù)據(jù)傳輸。
31.根據(jù)權(quán)利要求30所述的方法,其特征在于,存儲(chǔ)器控制器可以確保受保護(hù)的存儲(chǔ)器區(qū)域具有兼容的保護(hù)級(jí)別。
32.根據(jù)權(quán)利要求31所述的方法,其特征在于,存儲(chǔ)器控制器至少部分地基于與單個(gè)受保護(hù)的存儲(chǔ)器區(qū)域關(guān)聯(lián)的訪問控制列表確定兼容性。
33.根據(jù)權(quán)利要求31所述的方法,其特征在于,存儲(chǔ)器控制器至少部分地基于與單個(gè)受保護(hù)的區(qū)域關(guān)聯(lián)的一個(gè)或多個(gè)加密密鑰確定兼容性。
34.根據(jù)權(quán)利要求29所述的方法進(jìn)一步包括在視頻卡上提供密鑰管理器,用于控制一個(gè)或多個(gè)加密/解密密鑰對(duì),這些密鑰對(duì)用于將視頻卡上的數(shù)據(jù)分別進(jìn)行加密和解密。
35.根據(jù)權(quán)利要求34所述的方法,其特征在于,提供密鑰管理器的操作包括提供集成電路芯片。
36.根據(jù)權(quán)利要求34所述的方法,其特征在于,提供密鑰管理器的操作包括將密鑰管理器與存儲(chǔ)器控制器鏈接,以使密鑰管理器可以控制存儲(chǔ)器控制器,以便將視頻卡上的數(shù)據(jù)加密和解密。
37.根據(jù)權(quán)利要求29所述的方法,其特征在于,提供存儲(chǔ)器控制器包括提供存儲(chǔ)器控制器,該存儲(chǔ)器控制器被配置為將存儲(chǔ)在視頻卡上的存儲(chǔ)器的受保護(hù)區(qū)域的未加密的數(shù)據(jù)加密,以使加密數(shù)據(jù)可以移到視頻卡上的存儲(chǔ)器的未保護(hù)區(qū)域。
38.根據(jù)權(quán)利要求37所述的方法進(jìn)一步包括提供解密器,該解密器在操作上與視頻卡上的存儲(chǔ)器關(guān)聯(lián),并被配置為從存儲(chǔ)器接收加密數(shù)據(jù)并將加密數(shù)據(jù)解密,以使解密數(shù)據(jù)可以提供到顯示轉(zhuǎn)換器以便進(jìn)行處理。
39.根據(jù)權(quán)利要求38所述的方法進(jìn)一步包括提供密鑰管理器,用于控制一個(gè)或多個(gè)加密/解密密鑰對(duì),這些密鑰對(duì)用于將視頻卡上的數(shù)據(jù)分別進(jìn)行加密和解密,密鑰管理器被配置為指示解密器使用哪一個(gè)密鑰將加密數(shù)據(jù)解密。
40.根據(jù)權(quán)利要求29所述的方法,其特征在于,提供存儲(chǔ)器控制器包括提供存儲(chǔ)器控制器,該存儲(chǔ)器控制器包括存儲(chǔ)器保護(hù)表,該表具有一個(gè)或多個(gè)表?xiàng)l目,單個(gè)表?xiàng)l目至少將一個(gè)加密/解密密鑰對(duì)與要保存數(shù)據(jù)的存儲(chǔ)器區(qū)域關(guān)聯(lián),存儲(chǔ)器區(qū)域上的數(shù)據(jù)可以使用與該存儲(chǔ)器區(qū)域關(guān)聯(lián)的密鑰對(duì)進(jìn)行加密和解密。
41.根據(jù)權(quán)利要求29所述的方法,其特征在于,提供存儲(chǔ)器控制器包括提供存儲(chǔ)器控制器,該存儲(chǔ)器控制器包括一個(gè)或多個(gè)訪問控制列表,單個(gè)訪問控制列表與存儲(chǔ)器的單個(gè)區(qū)域相關(guān)聯(lián),并定義哪些實(shí)體可以訪問特定的存儲(chǔ)器區(qū)域。
42.一種方法,包括提供一個(gè)或多個(gè)密鑰對(duì),單個(gè)密鑰對(duì)包括可用于將數(shù)據(jù)加密的加密密鑰,以及可用于將用加密密鑰加密的數(shù)據(jù)解密的解密密鑰;以及將單個(gè)密鑰對(duì)與存儲(chǔ)器的單個(gè)部分關(guān)聯(lián),所述單個(gè)部分包括視頻卡存儲(chǔ)器的部分。
43.根據(jù)權(quán)利要求42所述的方法,其特征在于,所說的提供和關(guān)聯(lián)操作是在視頻卡上執(zhí)行的。
44.根據(jù)權(quán)利要求42所述的方法,其特征在于,所說的關(guān)聯(lián)操作包括定義視頻卡上的表,該表具有單個(gè)條目,這些條目將單個(gè)密鑰對(duì)與存儲(chǔ)器的單個(gè)部分關(guān)聯(lián)。
45.根據(jù)權(quán)利要求44所述的方法,其特征在于,表是作為視頻卡上的存儲(chǔ)器控制器的一部分定義的。
46.根據(jù)權(quán)利要求42所述的方法,進(jìn)一步包括使用加密密鑰將存儲(chǔ)在存儲(chǔ)器的關(guān)聯(lián)部分的數(shù)據(jù)加密。
47.根據(jù)權(quán)利要求46所述的方法,其特征在于,使用操作是在從視頻卡傳輸數(shù)據(jù)之前執(zhí)行的。
48.根據(jù)權(quán)利要求46所述的方法,其特征在于,使用操作是在將數(shù)據(jù)傳輸?shù)揭曨l卡上的存儲(chǔ)器的未保護(hù)部分之前執(zhí)行的。
49.根據(jù)權(quán)利要求42所述的方法,進(jìn)一步包括使用解密密鑰將通過視頻卡外部的總線接收的加密數(shù)據(jù)解密。
50.根據(jù)權(quán)利要求49所述的方法,進(jìn)一步包括將解密數(shù)據(jù)提供到與用于將加密數(shù)據(jù)解密的解密密鑰關(guān)聯(lián)的存儲(chǔ)器的部分。
51.一種方法,包括將數(shù)據(jù)提供到視頻卡上的存儲(chǔ)器的第一部分,存儲(chǔ)器的第一部分具有第一級(jí)別的保護(hù);對(duì)數(shù)據(jù)進(jìn)行操作以提供視頻卡上的結(jié)果數(shù)據(jù);確定視頻卡上的存儲(chǔ)器的第二部分是否具有與第一保護(hù)級(jí)別兼容的保護(hù)級(jí)別;以及如果第一和第二個(gè)保護(hù)級(jí)別是兼容的,則將結(jié)果數(shù)據(jù)提供到視頻卡上的存儲(chǔ)器的第二部分。
52.根據(jù)權(quán)利要求51所述的方法,其特征在于,保護(hù)級(jí)別至少部分地由與第一和第二個(gè)存儲(chǔ)器部分關(guān)聯(lián)的加密密鑰定義。
53.根據(jù)權(quán)利要求51所述的方法,其特征在于,保護(hù)級(jí)別至少部分地由與第一和第二個(gè)存儲(chǔ)器部分關(guān)聯(lián)的訪問控制列表定義。
54.根據(jù)權(quán)利要求51所述的方法,其特征在于,操作行為是由包括視頻卡的組成部分的圖形處理單元執(zhí)行的。
55.根據(jù)權(quán)利要求51所述的方法,其特征在于,結(jié)果數(shù)據(jù)不同于提供到視頻卡上的存儲(chǔ)器的第一部分的數(shù)據(jù)。
56.一種方法,包括從視頻卡上的存儲(chǔ)器的一個(gè)或多個(gè)部分讀取數(shù)據(jù),存儲(chǔ)器的單個(gè)部分具有關(guān)聯(lián)的加密/解密密鑰對(duì);記錄與從中讀取數(shù)據(jù)的存儲(chǔ)器部分關(guān)聯(lián)的密鑰對(duì);對(duì)從存儲(chǔ)器的一個(gè)或多個(gè)部分讀取的數(shù)據(jù)進(jìn)行操作以提供輸出數(shù)據(jù);確定與從中讀取數(shù)據(jù)的存儲(chǔ)器部分關(guān)聯(lián)的密鑰對(duì)是否等效于與充當(dāng)輸出數(shù)據(jù)的目標(biāo)的視頻存儲(chǔ)器部分關(guān)聯(lián)的密鑰對(duì);以及如果密鑰對(duì)等效,則將輸出數(shù)據(jù)提供到目標(biāo)視頻存儲(chǔ)器部分。
57.一種方法,包括將存儲(chǔ)在視頻卡存儲(chǔ)器之外的存儲(chǔ)器中的數(shù)據(jù)加密;將加密的數(shù)據(jù)通過總線傳輸?shù)揭曨l卡;將加密數(shù)據(jù)放入視頻卡上的存儲(chǔ)器的未保護(hù)部分;將視頻卡上的加密數(shù)據(jù)解密;以及將解密數(shù)據(jù)放入視頻卡上的存儲(chǔ)器的一個(gè)受保護(hù)部分。
58.根據(jù)權(quán)利要求57所述的方法,其特征在于,解密操作是由視頻卡上的圖形處理單元執(zhí)行的。
59.根據(jù)權(quán)利要求57所述的方法進(jìn)一步包括對(duì)視頻卡上的圖形處理單元進(jìn)行編程,具有解密功能,足以能使圖形處理單元將駐留在視頻卡的未保護(hù)存儲(chǔ)器部分的加密數(shù)據(jù)進(jìn)行解密。
60.根據(jù)權(quán)利要求59所述的方法,其特征在于,編程操作是由視頻卡上的密鑰管理器執(zhí)行的,密鑰管理器被配置為管理一個(gè)或多個(gè)加密/解密密鑰。
61.根據(jù)權(quán)利要求60所述的方法,其特征在于,密鑰管理器包括集成電路芯片。
62.根據(jù)權(quán)利要求57所述的方法進(jìn)一步包括使用存儲(chǔ)器控制器保護(hù)視頻卡上的存儲(chǔ)器的受保護(hù)部分。
63.根據(jù)權(quán)利要求62所述的方法,其特征在于,保護(hù)操作是至少部分地使用一個(gè)或多個(gè)訪問控制列表執(zhí)行的,訪問控制列表為視頻存儲(chǔ)器的受保護(hù)部分定義保護(hù)。
64.根據(jù)權(quán)利要求62所述的方法,其特征在于,保護(hù)操作包括確保當(dāng)未加密的數(shù)據(jù)將在視頻卡上的不同受保護(hù)視頻存儲(chǔ)器部分之間進(jìn)行傳輸時(shí),受保護(hù)視頻存儲(chǔ)器部分具有兼容的保護(hù)級(jí)別。
65.根據(jù)權(quán)利要求57所述的方法,進(jìn)一步包括在所說的放置操作之后對(duì)視頻存儲(chǔ)器的受保護(hù)部分的數(shù)據(jù)進(jìn)行操作以提供結(jié)果數(shù)據(jù);將結(jié)果數(shù)據(jù)加密;以及將加密結(jié)果數(shù)據(jù)放在視頻存儲(chǔ)器的受保護(hù)部分。
66.根據(jù)權(quán)利要求65所述的方法,其特征在于,所說的將結(jié)果數(shù)據(jù)加密和放置結(jié)果數(shù)據(jù)的操作至少部分地由視頻卡上的圖形處理單元執(zhí)行。
67.根據(jù)權(quán)利要求66所述的方法進(jìn)一步包括使用視頻卡上的解密器將加密結(jié)果數(shù)據(jù)解密;以及在所說的對(duì)加密結(jié)果數(shù)據(jù)解密之后,將解密結(jié)果數(shù)據(jù)提供到顯示轉(zhuǎn)換器以便進(jìn)一步進(jìn)行處理。
68.一種視頻卡,包括圖形處理單元GPU,用于處理將要在監(jiān)視器上呈現(xiàn)的數(shù)據(jù),GPU包括加密與解密功能,足以將視頻卡上的數(shù)據(jù)加密和解密;在操作上與GPU關(guān)聯(lián)的存儲(chǔ)器,用于保存將要被或已經(jīng)被GPU處理的數(shù)據(jù),該存儲(chǔ)器包括受保護(hù)和未保護(hù)的部分;顯示轉(zhuǎn)換器,用于將數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換為模擬信號(hào),以便用于在監(jiān)視器上呈現(xiàn)數(shù)據(jù);以及存儲(chǔ)器控制器,被配置為保護(hù)視頻存儲(chǔ)器的受保護(hù)的部分。
69.根據(jù)權(quán)利要求68所述的視頻卡,其特征在于,存儲(chǔ)器控制器包括一個(gè)或多個(gè)訪問控制列表,訪問控制列表用于保護(hù)存儲(chǔ)器的受保護(hù)部分。
70.根據(jù)權(quán)利要求69所述的視頻卡,其特征在于,訪問控制列表定義可以訪問視頻存儲(chǔ)器的受保護(hù)部分的實(shí)體。
71.根據(jù)權(quán)利要求68所述的視頻卡進(jìn)一步包括視頻卡上的密鑰管理器,被配置為用加密/解密功能對(duì)GPU進(jìn)行編程。
72.根據(jù)權(quán)利要求68所述的視頻卡,其特征在于,GPU被配置為將存儲(chǔ)器的未保護(hù)部分的數(shù)據(jù)解密到存儲(chǔ)器的受保護(hù)部分。
73.根據(jù)權(quán)利要求68所述的視頻卡,其特征在于,GPU被配置為將存儲(chǔ)器的受保護(hù)部分的數(shù)據(jù)加密到存儲(chǔ)器的未保護(hù)部分。
74.一種方法,包括在視頻卡上提供圖形處理單元GPU,用于處理將要在監(jiān)視器上呈現(xiàn)的數(shù)據(jù),GPU包括加密與解密功能,足以將視頻卡上的數(shù)據(jù)進(jìn)行加密和解密;在視頻卡上提供存儲(chǔ)器,該存儲(chǔ)器在操作上與GPU關(guān)聯(lián),用于保存將要被或已經(jīng)被GPU處理的數(shù)據(jù),存儲(chǔ)器包括受保護(hù)和未保護(hù)部分;在視頻卡上提供顯示轉(zhuǎn)換器,用于將數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換為信號(hào),以便用于在監(jiān)視器上呈現(xiàn)數(shù)據(jù);以及在視頻卡上提供存儲(chǔ)器控制器,被配置為保護(hù)視頻存儲(chǔ)器的受保護(hù)部分。
75.根據(jù)權(quán)利要求74所述的方法,其特征在于,提供存儲(chǔ)器控制器包括提供存儲(chǔ)器控制器,該存儲(chǔ)器控制器包括一個(gè)或多個(gè)訪問控制列表,訪問控制列表用于保護(hù)存儲(chǔ)器的受保護(hù)部分。
76.根據(jù)權(quán)利要求75所述的方法,其特征在于,訪問控制列表定義可以訪問視頻存儲(chǔ)器的受保護(hù)部分的實(shí)體。
77.根據(jù)權(quán)利要求74所述的方法進(jìn)一步包括在視頻卡上提供密鑰管理器,被配置為用加密/解密功能對(duì)GPU進(jìn)行編程。
78.根據(jù)權(quán)利要求74所述的方法,其特征在于,提供GPU包括提供這樣的GPU,被配置為將存儲(chǔ)器的未保護(hù)部分的數(shù)據(jù)解密到存儲(chǔ)器的受保護(hù)部分。
79.根據(jù)權(quán)利要求74所述的方法,其特征在于,提供GPU包括提供這樣的GPU,被配置為將存儲(chǔ)器的未保護(hù)部分的數(shù)據(jù)加密到存儲(chǔ)器的未保護(hù)部分。
80.一種方法,包括將加密數(shù)據(jù)接收到視頻卡的未保護(hù)存儲(chǔ)器部分,加密數(shù)據(jù)將由卡上的圖形處理單元(GPU)處理;將加密數(shù)據(jù)解密到視頻卡的受保護(hù)的存儲(chǔ)器部分;以及將視頻卡的受保護(hù)的存儲(chǔ)器部分中的未加密的數(shù)據(jù)加密到視頻卡的受保護(hù)的存儲(chǔ)器部分。
81.根據(jù)權(quán)利要求80所述的方法,其特征在于,加密和解密操作是由GPU執(zhí)行的。
82.根據(jù)權(quán)利要求80所述的方法,其特征在于,存儲(chǔ)器控制器使用一個(gè)或多個(gè)訪問控制列表保護(hù)受保護(hù)的存儲(chǔ)器部分,訪問控制列表用于定義哪些實(shí)體可以訪問受保護(hù)的存儲(chǔ)器部分。
83.根據(jù)權(quán)利要求80所述的方法進(jìn)一步包括當(dāng)數(shù)據(jù)離開視頻卡并提供到連接到計(jì)算機(jī)系統(tǒng)的中央處理單元CPU時(shí)隨時(shí)將視頻卡上的數(shù)據(jù)加密。
84.根據(jù)權(quán)利要求80所述的方法進(jìn)一步包括當(dāng)數(shù)據(jù)離開視頻卡并提供到連接到計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器時(shí)隨時(shí)將視頻卡上的數(shù)據(jù)加密。
全文摘要
本文介紹了用于保護(hù)視頻卡或圖形卡上使用和處理的數(shù)據(jù)的方法和系統(tǒng)。在各種實(shí)施例中,可以將計(jì)劃由視頻卡使用的數(shù)據(jù)加密以便數(shù)據(jù)被提供到視頻卡和計(jì)算機(jī)系統(tǒng)之間的總線(例如PCI或AGP總線)時(shí)任何時(shí)候都可將數(shù)據(jù)加密。例如,當(dāng)數(shù)據(jù)從視頻卡上的存儲(chǔ)器移到系統(tǒng)的存儲(chǔ)器,例如當(dāng)它被映射到系統(tǒng)的物理存儲(chǔ)器時(shí),以及進(jìn)行相反操作時(shí),數(shù)據(jù)處于加密形式并因此受到保護(hù)。
文檔編號(hào)G06F21/00GK1432923SQ0310330
公開日2003年7月30日 申請(qǐng)日期2003年1月15日 優(yōu)先權(quán)日2002年1月16日
發(fā)明者格倫·F·埃文斯 申請(qǐng)人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1