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

復(fù)制保護(hù)軟件卡盒的制作方法

文檔序號:6479114閱讀:246來源:國知局
專利名稱:復(fù)制保護(hù)軟件卡盒的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般涉及計算機軟件,更具體地涉及卡盒(cartridge)上軟件的復(fù)制保 護(hù)。
背景技術(shù)
這一部分用來向讀者介紹各種現(xiàn)有技術(shù),涉及本發(fā)明的以下所述和/或要求權(quán)利 的各個方面。確信這種討論有助于向讀者提供有利于更好理解本發(fā)明各個方面的背景信 息。因此應(yīng)該理解,這些陳述應(yīng)當(dāng)在這個意義下被閱讀,而不是對現(xiàn)有技術(shù)的承認(rèn)。為了便于使用,計算機程序、具體地是計算機游戲(下文中將用作非限制性示例) 長期以來被存儲在所謂的卡盒中,其他優(yōu)勢是對于軟件的即刻存取和封裝的魯棒性。這種 卡盒典型地包括與控制臺交互的接口、存儲軟件應(yīng)用程序的ROM、以及用于存儲游戲參數(shù)的 另外存儲器,優(yōu)選地是非易失性的。然而,這些卡盒上的軟件作為“正?!避浖偸且子趶?fù)制。自然地,軟件供應(yīng)商一 直在提出對于復(fù)制的防御,例如使用專用接口和芯片組、以及軟件應(yīng)用程序的加密。不幸的 是,黑客已經(jīng)能夠破解現(xiàn)有技術(shù)的防御,并且實際上可以在互聯(lián)網(wǎng)上找到所有當(dāng)前的程序, 例如在專注于黑客技術(shù)的站點。歐洲專利申請EP07300965教導(dǎo)了一種用于保護(hù)預(yù)先記錄的介質(zhì)的系統(tǒng)。該介質(zhì) 與安全處理器相關(guān)聯(lián),所述安全處理器存儲了游戲者為了完全訪問內(nèi)容所需的信息和軟 件。無論什么時候游戲者需要該信息或者軟件的結(jié)果,游戲者聯(lián)系安全處理器并且等待響 應(yīng)。該解決方案的缺點是不適應(yīng)與安全處理器交互的游戲者不能夠使用所述內(nèi)容。因此,應(yīng)該理解的是需要改善卡盒上軟件復(fù)制保護(hù)的解決方案,優(yōu)選地使得能夠 實現(xiàn)現(xiàn)存控制臺的繼續(xù)使用。本發(fā)明提供了這種方案。

發(fā)明內(nèi)容
在第一方面,本發(fā)明涉及一種適用于控制臺的卡盒。所述卡盒包括接口單元,用 于與控制臺通信;第一存儲器,適用于存儲應(yīng)用程序的至少一部分;以及處理器,適用于執(zhí) 行至少一個功能。所述卡盒還包括調(diào)度器(dispatcher),適用于從所述接口單元接收源于 執(zhí)行所述應(yīng)用程序的控制臺的數(shù)據(jù)。所述數(shù)據(jù)包括在包括至少兩塊地址的存儲器空間中的 地址,每一個塊與第一存儲器和處理器之一唯一地關(guān)聯(lián)。當(dāng)所接收到的地址在與第一存儲 器相關(guān)聯(lián)的塊中時,調(diào)度器將所接收到的地址轉(zhuǎn)換為第一存儲器的物理地址,并且與第一 存儲器的物理地址通信。當(dāng)所接收到的地址在與處理器相關(guān)聯(lián)的塊中時,調(diào)度器轉(zhuǎn)換所接 收到的地址,并且將經(jīng)轉(zhuǎn)換的地址發(fā)送給處理器。在第一優(yōu)選實施例中,第一存儲器是只讀存儲器。在第二優(yōu)選實施例中,所述卡盒還包括第二存儲器,適用于存儲應(yīng)用程序參數(shù);并 且存儲器空間包括至少一個另外的不同塊,所述另外的不同塊與第二存儲器唯一地相關(guān) 聯(lián)。所述調(diào)度器還適用于當(dāng)所述地址在與第二存儲器相關(guān)聯(lián)的塊中時,將地址轉(zhuǎn)換為第二存儲器的物理地址,并且與所述第二存儲器的物理地址通信。有利的是第二存儲器是非易 失性存儲器。 在第三優(yōu)選實施例中,所述處理器還適用于向調(diào)度器返回值,并且所述調(diào)度器適 用于向應(yīng)用程序返回所述值。 在第四優(yōu)選實施例中,所述處理器是安全處理器。在第五優(yōu)選實施例中,所述調(diào)度器還包括緩沖器,適用于與處理器通信。在第六優(yōu)選實施例中,所述調(diào)度器適用于在所接收到的地址與第一存儲器的有效 地址和處理器的有效地址都不對應(yīng)時返回隨機數(shù)據(jù)。在第七優(yōu)選實施例中,所述調(diào)度器適用于在所接收到的地址與第一存儲器和處理 器都不對應(yīng)時請求處理器鎖定。在第二方面,本發(fā)明涉及一種在與卡盒交互的控制臺上執(zhí)行應(yīng)用程序的方法。由 控制臺的處理器執(zhí)行的應(yīng)用程序向所述卡盒發(fā)送至少包括地址的數(shù)據(jù),存儲器空間中的地 址包括至少兩塊地址,每一塊與卡盒的第一存儲器和處理器之一唯一地相關(guān)聯(lián)??ê兄械?調(diào)度器接收數(shù)據(jù),并且當(dāng)所接收到的地址在與第一存儲器相關(guān)聯(lián)的塊中時,將所接收到的 地址轉(zhuǎn)換為第一存儲器的物理地址,并且與第一存儲器的物理地址通信。當(dāng)所接收到的地 址在與處理器相關(guān)聯(lián)的塊中時,所述調(diào)度器轉(zhuǎn)換所接收到的地址,并且將經(jīng)轉(zhuǎn)換的地址發(fā) 送給處理器。


現(xiàn)在將參考附圖、通過非限制性示例描述本發(fā)明的優(yōu)選特征,其中圖1示出了根據(jù)本發(fā)明優(yōu)選實施例具有卡盒的控制臺;以及圖2示出了根據(jù)本發(fā)明優(yōu)選實施例的虛擬存儲器空間。
具體實施例方式圖1示出了根據(jù)本發(fā)明優(yōu)選實施例具有卡盒2的控制臺1。在說明書中,術(shù)語“控 制臺”用于表示能夠與卡盒交互作用以便執(zhí)行在卡盒上存儲的應(yīng)用程序的裝置,以及術(shù)語 “卡盒”用于表示使用固態(tài)存儲器或其他永久存儲器以存儲所述應(yīng)用程序的物理對象??刂婆_包括一個或更多處理器(下文中稱作“處理器”)10,用于執(zhí)行軟件應(yīng)用程 序;以及接口單元14,所述接口單元14實現(xiàn)物理和邏輯接口,用于與卡盒2交互。所述接 口單元14可以通過典型的地址/數(shù)據(jù)雙向總線或通過對于一個或更多功能的調(diào)用來進(jìn)行
通{曰。所述控制臺還包括存儲至少一個應(yīng)用程序的只讀存儲器(ROM) 11、固件和中間 件;隨機存取存儲器(RAM) 12,存儲臨時數(shù)據(jù)和從所述卡盒2加載的游戲應(yīng)用程序3 ;以及 用戶接口 13,用于通過例如屏幕和揚聲器、按鍵、按鈕和觸摸屏與一個或更多用戶交互。所 述處理器10適用于執(zhí)行ROM中的至少一個應(yīng)用程序和在RAM12中存儲的游戲應(yīng)用程序3。優(yōu)選地,接口單元14自動地檢測卡盒2的存在。典型地,當(dāng)不存在卡盒2時,不給 總線加電,并且不提供電力。當(dāng)在加電的控制臺中存在卡盒2時,將電力提供給卡盒2,并且 也給數(shù)據(jù)總線加電??ê?包括接口單元24,適用于與控制臺1的接口單元14通信。卡盒還包括
5R0M21,所述R0M21將游戲應(yīng)用程序存儲在固定地址(例如0x00000);以及至少一個非易失 性存儲器(下文中稱作“非易失性存儲器)22,適用于存儲諸如游戲中游戲者當(dāng)前位置之類 的游戲參數(shù)。非易失性存儲器22可以是例如電可擦除可編程存儲器(EEPR0M)或閃速存儲 器。優(yōu)選地,非易失性存儲器22在NVM地址開始(NVM ADDRESS START)處開始,并且在NVM 地址結(jié)束(NVM ADDRESS END)處結(jié)束。卡盒2也包括保護(hù)處理器20 (優(yōu)選地但不必須是 安全處理器,并且可以在多于一個硬件部件中實現(xiàn)),適用于執(zhí)行一個或更多功能;以及調(diào) 度器23。優(yōu)選地,所述調(diào)度器23是具有與保護(hù)處理器20的通信鏈路25的專用芯片。優(yōu)選地,所述調(diào)度器23作用如下。如果接口單元24的數(shù)據(jù)總線上的地址在以下 范圍從NVM ADDRESS START到NVM ADDRESS END,那么所述調(diào)度器23相應(yīng)地對非易失性存 儲器22尋址;從PR0CESS0R_START至PR0CESS0R_END,那么優(yōu)選地通過轉(zhuǎn)換所接收到的地 址并且將其發(fā)送至處理器(注意,所述轉(zhuǎn)換功能可以是等同過程(identity)),來讀取或?qū)?入內(nèi)部緩沖器230 ;PR0CESS0R_WRITE,那么通過通信鏈路25將其內(nèi)部緩沖器230的內(nèi)容發(fā) 送至保護(hù)處理器20。當(dāng)通過通信鏈路25從保護(hù)處理器20接收數(shù)據(jù)時,它將數(shù)據(jù)存儲在內(nèi) 部緩沖器230中,并且將內(nèi)部標(biāo)志DATA READY設(shè)置為1。另外,當(dāng)接口單元24的數(shù)據(jù)總線 上的地址是PR0CESS0R_READ_FLAG時,它將DATA_READY返回給控制臺1,并且將標(biāo)志DATA_ READY設(shè)置為0。在所有其他情況下,調(diào)度器23對ROM 21尋址。應(yīng)該理解的是通過調(diào)度 器23接收到的地址也可以是功能或命令的參數(shù)、標(biāo)識目的地裝置的另外參數(shù);重要的事在 于調(diào)度器接收使其能夠正確路由請求的信息。可以在單獨的芯片(例如芯片上系統(tǒng)(S0C))或者兩個或更多的獨立電路中實現(xiàn) 保護(hù)處理器20、ROM 21、非易失性存儲器22、調(diào)度器23和接口單元24。游戲應(yīng)用程序3是用于闡明本發(fā)明的虛擬實體??梢哉f當(dāng)通過處理器10執(zhí)行時, 游戲應(yīng)用程序是來自至少所述ROM 21的軟件程序(游戲應(yīng)用程序3的一部分可以從其他 來源接收,例如通過互聯(lián)網(wǎng)),以及當(dāng)合適的時候,由保護(hù)處理器20存儲和執(zhí)行的軟件將在 下文中另外描述。還可以認(rèn)為游戲應(yīng)用程序3可以知曉卡盒2的內(nèi)部結(jié)構(gòu)。當(dāng)通過處理器 10執(zhí)行時,所述游戲應(yīng)用程序可以經(jīng)由接口單元14和24與調(diào)度器23通信,以便執(zhí)行至少 一個動作,例如從ROM 21中讀取數(shù)據(jù);從非易失性存儲器22讀取數(shù)據(jù)或者將數(shù)據(jù)寫入到 非易失性存儲器22中;以及請求保護(hù)處理器20執(zhí)行某項功能并且返回結(jié)果?,F(xiàn)在將使用系統(tǒng)行為的簡化描述,以便進(jìn)一步地描述本發(fā)明。當(dāng)將卡盒2插入到 開啟的控制臺1 (或者放置為與其相接觸)時,控制臺1通過加載在ROM 21中存儲的應(yīng)用 程序的預(yù)定部分(在地址0x00000處)來初始化游戲應(yīng)用程序3。一旦在處理器10上執(zhí)行 游戲應(yīng)用程序3,游戲應(yīng)用程序3可以與調(diào)度器23交互以從/向非易失性存儲器22讀取/ 寫入信息;如果可應(yīng)用的話,請求保護(hù)處理器20執(zhí)行功能,并且返回所執(zhí)行功能的結(jié)果;并 且從ROM 21中讀取應(yīng)用程序的另外部分。安全處理器20執(zhí)行的功能可以使用在請求中提 供的一個或更多參數(shù),但是也可能的是所述功能使用從卡盒的存儲器21、22中讀取的一個 或更多參數(shù)。還有可能的是安全處理器20向非易失性存儲器22輸出結(jié)果。優(yōu)選地,將游 戲應(yīng)用程序3設(shè)計為使其在不存在保護(hù)處理器20時無法工作,但是應(yīng)用程序也可以工作于 次優(yōu)模式。在初始化期間,游戲應(yīng)用程序3可以通過從NVM ADDRESS START和NVMADDRESS END讀取所存儲的數(shù)據(jù)來得到在非易失性存儲器22中存儲的數(shù)據(jù)。在執(zhí)行期間和/或在結(jié)束時,游戲應(yīng)用程序3可以通過將該數(shù)據(jù)存儲在非易失性存儲器22中來更新該數(shù)據(jù),必要 時修改 NVM ADDRESS START 和 / 或 NVM ADDRESS END。游戲應(yīng)用程序3也可以指示保護(hù)處理器20執(zhí)行功能。這可以通過首先向地址空 間PR0CESS0R_START至PR0CESS0R_END發(fā)送命令和控制數(shù)據(jù)來實現(xiàn)。然后,游戲應(yīng)用程序 3寫入地址PR0CESS0R_WRITE,有規(guī)律地輪詢地址raOCESSOR_READ_FLAG,并且當(dāng)返回值是1 時,讀取在地址空間raOCESSOR_START至PR0CES0RP_END中的數(shù)據(jù)。因此可以說,游戲應(yīng)用程序3 “看見”了虛擬的平坦存儲器空間,例如如圖2所示。 在存儲器空間中,第一部分(從底部開始)用于尋址R0M21,接下來的部分用于按照不同的 方式尋址保護(hù)處理器20,第三部分也用于尋址ROM 21,第四部分用于與非易失性存儲器22 交互,以及第五部分也用于尋址ROM 21。應(yīng)該理解的是圖2示出了許多可能性中的一種,并 且也可以有其他地址空間使用方式;實際上鼓勵對于不同的游戲不同地使用地址空間。在 存儲器空間中,優(yōu)選地,將存儲器的地址轉(zhuǎn)換為相同存儲器的物理地址。例如,“虛擬” NVM_ ADDRESS_START可以與非易失性存儲器的物理地址0x000000相對應(yīng)。然而,應(yīng)該理解的是 也可以將其轉(zhuǎn)換為邏輯存儲器地址。另外,可以具有沒有使用的地址。如果調(diào)度器23接收這種地址,其優(yōu)選地具有預(yù) 先定義的行為,例如返回隨機或無用數(shù)據(jù),或者請求保護(hù)處理器20鎖定。如已經(jīng)提到的,優(yōu)選地是對于每一個新游戲改變PR0CESS0R_WRITE、PROCESSOR, READ_FLAG、PROCESSOR_START、PROCESSOR_END、NVM_ADDRESS_START 和 NVM_ADDRESS_END 的 至少一些的值。這使得黑客不可能建立簡單的通用備份系統(tǒng),因為這將隨應(yīng)用程序而改變。 此外,對于每一個新的卡盒,黑客將不得不效仿保護(hù)處理器20的行為。本發(fā)明的優(yōu)點在于在不對老控制臺進(jìn)行修改的情況下,使得老控制臺可以使用 新的受保護(hù)卡盒,因為控制臺不需要知曉卡盒機制。因此應(yīng)該理解的是本發(fā)明提供了一種改進(jìn)的軟件復(fù)制保護(hù)系統(tǒng)。本領(lǐng)域普通技術(shù) 人員應(yīng)該理解,盡管已經(jīng)描述了使用游戲應(yīng)用程序的非限制性示例,本發(fā)明也可以應(yīng)用于 任意合適類型的應(yīng)用程序,例如訓(xùn)練應(yīng)用程序或工具應(yīng)用程序。在說明書(在合適的情況下)、權(quán)利要求和附圖中公開的每一個特征可以被獨立 地提供或者按照任意合適的組合方式被提供。在硬件中實現(xiàn)時所描述的特征也可以在軟件 中實現(xiàn),反之亦然。在可應(yīng)用的情況下,可以將連接實現(xiàn)為無線連接或有線連接,而不必須 是直接連接或?qū)S眠B接。已經(jīng)描述了與本發(fā)明相關(guān)的特征。故意地略去對本發(fā)明描述不必 要的特征以便于理解。權(quán)利要求中出現(xiàn)的參考數(shù)字只是為了說明,并且對于本發(fā)明范圍沒有任何限制效
權(quán)利要求
一種適用于與控制臺(1)一起使用的卡盒(2),所述卡盒(2)包括接口單元(24),用于與控制臺(1)通信;第一存儲器(21),適用于存儲應(yīng)用程序(3)的至少一部分;以及處理器(20),適用于執(zhí)行至少一個功能;其特征在于所述卡盒(2)還包括調(diào)度器(23),適用于從所述接口單元(24)接收源于執(zhí)行所述應(yīng)用程序(3)的控制臺(1)的數(shù)據(jù),所述數(shù)據(jù)包括在包括至少兩塊地址的存儲器空間中的地址,每一個塊與第一存儲器(21)和處理器(20)之一唯一地關(guān)聯(lián);以及當(dāng)所接收到的地址在與第一存儲器(21)相關(guān)聯(lián)的塊中時,將所接收到的地址轉(zhuǎn)換為第一存儲器(21)的物理地址;以及與第一存儲器(21)的物理地址通信;以及當(dāng)所接收到的地址在與處理器(20)相關(guān)聯(lián)的塊中時,轉(zhuǎn)換所接收到的地址;以及將經(jīng)轉(zhuǎn)換的地址發(fā)送給處理器(20)。
2.根據(jù)權(quán)利要求1所述的卡盒,其中所述第一存儲器(21)是只讀存儲器。
3.根據(jù)權(quán)利要求1所述的卡盒,還包括第二存儲器(22),適用于存儲應(yīng)用程序參數(shù);其 中所述存儲器空間包括至少一個另外的不同塊,所述另外的不同塊與第二存儲器(22)唯 一地相關(guān)聯(lián),并且其中所述調(diào)度器(23)還適用于當(dāng)所述地址在與第二存儲器(22)相關(guān)聯(lián) 的塊中時,將所述地址轉(zhuǎn)換為第二存儲器(22)的物理地址,并且與所述第二存儲器(22)的 物理地址通信。
4.根據(jù)權(quán)利要求3所述的卡盒,其中所述第二存儲器(22)是非易失性存儲器。
5.根據(jù)權(quán)利要求1所述的卡盒,其中所述處理器(20)還適用于向所述調(diào)度器(23)返 回值,并且所述調(diào)度器(23)適用于向應(yīng)用程序(3)返回所述值。
6.根據(jù)權(quán)利要求1所述的卡盒,其中所述處理器(20)是安全處理器。
7.根據(jù)權(quán)利要求1所述的卡盒,其中所述調(diào)度器(23)還包括緩沖器(230),適于在與 處理器(21)的通信中使用。
8.根據(jù)權(quán)利要求1所述的卡盒,其中所述調(diào)度器(23)適用于在所接收到的地址與第一 存儲器(21)和處理器(20)都不對應(yīng)時返回隨機數(shù)據(jù)。
9.根據(jù)權(quán)利要求1所述的卡盒,其中所述調(diào)度器(23)適用于在所接收到的地址與第一 存儲器(21)的有效地址和處理器(20)的有效地址都不對應(yīng)時請求處理器(20)鎖定。
10.一種在與卡盒(2)交互的控制臺(1)上執(zhí)行應(yīng)用程序(3)的方法,包括以下步驟: 通過由控制臺⑴的處理器(10)執(zhí)行的應(yīng)用程序(3)向所述卡盒(2)發(fā)送至少包括地址的數(shù)據(jù),所述地址在包括至少兩塊地址的存儲器空間中,每一塊與所述卡盒(2)的第 一存儲器(21)和處理器(20)之一唯一地相關(guān)聯(lián);以及 通過卡盒(2)中的調(diào)度器(23) 接收數(shù)據(jù);以及當(dāng)所接收到的地址在與第一存儲器(21)相關(guān)聯(lián)的塊中時, 將所接收到的地址轉(zhuǎn)換為第一存儲器(21)的物理地 址;以及與第一存儲器(21)的物理地址通信; 當(dāng)所接收到的地址在與處理器(20)相關(guān)聯(lián)的塊中時; 轉(zhuǎn)換所接收到的地址;以及 將經(jīng)轉(zhuǎn)換的地址發(fā)送給處理器(20)。
全文摘要
公開了一種優(yōu)選地適用于與控制臺(1)一起使用的卡盒(2)。所述卡盒(2)包括ROM(21)、非易失性存儲器(22)、處理器(20)和調(diào)度器(23)。在控制臺(1)上運行的應(yīng)用程序(3)可以使用預(yù)定地址與調(diào)度器(23)通信,使得調(diào)度器(23)可以在可能的情況下存取ROM(21)、非易失性存儲器(22)或處理器(20)。本發(fā)明改善了現(xiàn)有技術(shù)的復(fù)制保護(hù),如果地址隨卡盒而改變時,不會找到通用的復(fù)制方法。此外,為了復(fù)制所述軟件,必須效仿處理器(20)。
文檔編號G06F9/445GK101896885SQ200880119919
公開日2010年11月24日 申請日期2008年12月12日 優(yōu)先權(quán)日2007年12月13日
發(fā)明者埃里克·迪爾, 尼古拉斯·普里讓, 馬可·埃羅德 申請人:湯姆森許可貿(mào)易公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1