国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      信息處理裝置、程序加載和更新方法及電路設(shè)備的制作方法

      文檔序號:6554346閱讀:168來源:國知局
      專利名稱:信息處理裝置、程序加載和更新方法及電路設(shè)備的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種用于信息處理裝置的程序更新。特別是,涉及一種信息處理裝置,程序加載方法,一種記錄介質(zhì),一種程序更新方法和一個電路設(shè)備,其中,通過在程序更新或加載期間防止程序泄漏,可禁止程序被篡改。
      背景技術(shù)
      DVD(數(shù)字通用光盤)是一種其記錄容量能夠記錄相當(dāng)于一部電影的視頻和音頻數(shù)據(jù)的光盤,并被作為ROM(DVD-ROM;DVD-只讀存儲器)而被使用。
      由于DVD-ROM可無損耗的記錄數(shù)字?jǐn)?shù)據(jù),因此可提供幾種保護(hù)功能以避免未授權(quán)的復(fù)制或未授權(quán)地使用其上記錄的數(shù)字?jǐn)?shù)據(jù)。
      再現(xiàn)DVD-ROM時的典型保護(hù)功能是通過RC(區(qū)域碼)進(jìn)行的再現(xiàn)限制。該區(qū)域碼是一個與六個全球區(qū)域之一相一致的數(shù)字。例如,US的區(qū)域碼是“1”,而日本的區(qū)域碼是“2”。
      該區(qū)域碼被記錄到每個DVD-ROM以及一個DVD-ROM驅(qū)動器或DVD再現(xiàn)應(yīng)用中,使得一個給定的DVD-ROM不能被再現(xiàn),除非它們各自的區(qū)域碼一致。例如,由于區(qū)域碼“2”被記錄在日本制造的DVD-ROM驅(qū)動器上,這樣的驅(qū)動器就不能再現(xiàn)區(qū)域碼為“1”的美國生產(chǎn)的DVD-ROM。這是一種保護(hù)性功能,用于保護(hù)內(nèi)容例如電影的制作者。
      另一方面,DVD-ROM還具有禁止數(shù)字復(fù)制的保護(hù)性功能或系統(tǒng)。這被稱為CSS(內(nèi)容加擾系統(tǒng)),其禁止數(shù)字復(fù)制的方法是,雖然一個文件本身可被復(fù)制在例如硬盤上,但該文件代表加密的數(shù)據(jù),從而MPEG(運動圖像專家組)數(shù)據(jù)不能被解密。
      通過對復(fù)制施加限制,DVD-ROM還具有禁止輸出模擬數(shù)據(jù)的復(fù)制的保護(hù)性功能,和管理數(shù)字?jǐn)?shù)據(jù)在數(shù)字設(shè)備中復(fù)制的代次的保護(hù)性功能。
      這種保護(hù)功能是通過一種被寫在DVD-ROM驅(qū)動器中的預(yù)置ROM中的被稱為固件的程序來實現(xiàn)的。該固件是一種軟件,可直接控制硬件,被寫在ROM中并被裝入硬件中。
      通過寫在DVD-ROM驅(qū)動器的預(yù)置ROM中用于執(zhí)行保護(hù)功能的固件,就有可能消除不正當(dāng)制備的DVD-視頻。
      通常很難重寫或修改這種固件。但是,在與例如PC(個人計算機(jī))相連從而可在其控制下被驅(qū)動的DVD-ROM驅(qū)動器中,在更新PC(個人計算機(jī))的OS(操作系統(tǒng))的情況下,結(jié)果必然出現(xiàn)了更新固件的需要。從而,在這種DVD-ROM中,該固件被設(shè)置為可被更新。
      并且,若PC在連接DVD-ROM驅(qū)動器的操作時不能夠充分兼容,這種連接的不兼容可通過更新該DVD-ROM驅(qū)動器的固件而被改善。
      為了實現(xiàn)對固件的更新,一種所謂閃速存儲器被用作存儲固件的ROM,該閃速存儲器,例如EEPROM(電可擦除的只讀存儲器),是一種可編程ROM,其允許電子數(shù)據(jù)的擦除。
      但是,當(dāng)此固件將被更新時,該固件可以很容易地通過因特網(wǎng)從DVD-ROM驅(qū)動器制造商提供的主頁上被下載,用戶能夠非常容易地得到該固件。
      所獲得的固件可能被用戶篡改并存儲在DVD-ROM驅(qū)動器的一個預(yù)置閃速存儲器中,從而使上述DVD-ROM驅(qū)動器的保護(hù)功能被無效,這也是一個問題。
      程序被篡改是一個裝置在需要進(jìn)行通常包含固件的程序傳遞時所固有的問題。使用了被篡改的程序的裝置會遇到這樣的問題,其會執(zhí)行一個與所希望的操作不同的操作,在最壞的情況下,還易于陷入混亂狀態(tài)。

      發(fā)明內(nèi)容
      因此本發(fā)明的目的是提供一種信息處理裝置,一種程序加載方法,一種記錄介質(zhì),一種程序更新方法和一種電路設(shè)備,在程序更新或加載期間由于程序數(shù)據(jù)向外泄漏而可能出現(xiàn)程序篡改,本發(fā)明用于禁止對程序數(shù)據(jù)的不正當(dāng)使用。
      在一方面,本發(fā)明提供一種信息處理裝置,包括加密程序數(shù)據(jù)接收裝置,用于接收通過使用預(yù)定的加密密鑰對預(yù)定程序加密而得到的加密程序數(shù)據(jù),解密裝置,用于解密加密程序數(shù)據(jù),利用一個預(yù)定的解碼密鑰,將從加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)解密為預(yù)定的程序,存儲裝置,用于存儲加密程序數(shù)據(jù)通過解密裝置解密后的預(yù)定程序,程序讀出裝置,用于讀出存儲在存儲裝置中的預(yù)定程序,和控制裝置,用于根據(jù)讀出裝置讀出的預(yù)定程序而控制信息處理裝置的預(yù)定操作。
      在另一方面,本發(fā)明提供一種程序加載方法,用于對信息處理裝置加載一個預(yù)定程序以控制信息處理裝置的預(yù)定操作,包括加密程序數(shù)據(jù)接收步驟,用于接收以預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),解密步驟,用于對加密程序數(shù)據(jù)接收步驟接收的加密程序數(shù)據(jù)利用一個預(yù)定的解密密鑰進(jìn)行解密,和存儲步驟,用于將解密步驟中對加密程序數(shù)據(jù)解密后的預(yù)定程序存儲在存儲裝置中。
      在又一方面,本發(fā)明提供一種記錄介質(zhì),其上記錄有一個預(yù)定程序,用于對信息處理裝置加載一個用于控制信息處理裝置的一個預(yù)定操作的預(yù)定程序,其中該程序包含一個加密程序數(shù)據(jù)接收步驟,用于接收利用一個預(yù)定的加密密鑰對預(yù)定程序加密后得到的加密程序數(shù)據(jù),一個解密步驟,用于利用一個預(yù)定的解碼密鑰,對加密程序數(shù)據(jù)接收步驟接收的加密程序數(shù)據(jù)解密為預(yù)定程序,和一個存儲步驟,用于存儲加密程序數(shù)據(jù)由解密步驟解密后的預(yù)定程序。
      在又一方面,本發(fā)明提供一種包含一控制單元的信息處理裝置,該控制單元包括,存儲有一個第一程序的存儲裝置,和控制裝置,用于讀出存儲在存儲裝置中的第一程序并根據(jù)讀出的第一程序來控制信息處理裝置的預(yù)定操作,其中該信息處理裝置包括加密程序數(shù)據(jù)接收裝置,用于接收加密程序數(shù)據(jù),該加密程序數(shù)據(jù)是利用一個預(yù)定的加密密鑰加密后的第二程序,解碼裝置,用于利用一個預(yù)定的解碼密鑰,對由加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)進(jìn)行解碼,和程序傳送裝置,用于將加密程序數(shù)據(jù)被解密裝置解密后的第二程序傳送至控制單元。該控制單元包括程序接收裝置,用于接收由傳送裝置傳送的第二程序,和程序?qū)懭胙b置,用于將程序接收裝置接收的第二程序?qū)懭氪鎯ρb置。
      在又一方面,本發(fā)明提供一種用于信息處理裝置的程序更新方法,該信息處理裝置具有一控制單元,該控制單元包括存儲有一個第一程序的存儲裝置,和控制裝置,用于讀出存儲在存儲裝置中的第一程序并根據(jù)讀出的第一程序來控制信息處理裝置的預(yù)定操作,其中該方法包括一個加密程序數(shù)據(jù)接收步驟,用于響應(yīng)請求更新第一程序的程序更新請求而接收加密程序數(shù)據(jù),該加密程序數(shù)據(jù)是利用一個預(yù)定的加密密鑰加密后的第二程序,一個解密步驟,用于利用一個預(yù)定的解密密鑰,將加密程序數(shù)據(jù)接收步驟接收的加密程序數(shù)據(jù)解密為第二程序,一個程序傳送步驟,用于傳送加密程序數(shù)據(jù)在解密步驟解密后的第二程序,一個程序接收步驟,用于接收由程序傳送步驟傳送至控制單元的第二程序,一個程序?qū)懭氩襟E,用于將程序接收步驟接收的第二程序?qū)懭氪鎯ρb置。
      在又一方面,本發(fā)明提供一種具有一數(shù)據(jù)處理單元的信息處理裝置,該數(shù)據(jù)處理單元用于執(zhí)行預(yù)定的數(shù)據(jù)處理,其中該數(shù)據(jù)處理單元包括加密程序數(shù)據(jù)接收裝置,用于接收通過使用預(yù)定的加密密鑰對預(yù)定程序加密而得到的加密程序數(shù)據(jù),解碼裝置,用于利用一個預(yù)定的解密密鑰,將從加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)解碼為預(yù)定的程序,存儲裝置,用于存儲加密程序數(shù)據(jù)通過解密裝置解密后的預(yù)定程序,程序讀出裝置,用于讀出存儲在存儲裝置中的預(yù)定程序,第一控制裝置,用于根據(jù)程序讀出裝置讀出的預(yù)定程序而控制數(shù)據(jù)處理單元中的預(yù)定數(shù)據(jù)處理操作,和輸出限制裝置,用于限制由解密裝置解密的預(yù)定程序和存儲在存儲裝置中的預(yù)定程序自外部設(shè)備的輸出。
      在又一方面,本發(fā)明提供一種用于信息處理裝置中的數(shù)據(jù)處理單元中的程序加載方法,該數(shù)據(jù)處理單元可執(zhí)行預(yù)定數(shù)據(jù)處理,其中該方法包括一個加密程序數(shù)據(jù)接收步驟,用于接收利用一個預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),該預(yù)定程序是一個在數(shù)據(jù)處理單元中用于執(zhí)行預(yù)定數(shù)據(jù)處理的程序,一個解密步驟,用于利用一個預(yù)定的解密密鑰,將從加密程序數(shù)據(jù)接收步驟接收的加密程序數(shù)據(jù)解密為預(yù)定的程序,一個輸出限制步驟,用于限制解密的預(yù)定程序自外部設(shè)備的輸出,和存儲步驟,用于將加密程序數(shù)據(jù)經(jīng)解密步驟解密后的預(yù)定程序存儲在存儲裝置中。
      在又一方面,本發(fā)明提供一種記錄介質(zhì),其上記錄有一個程序,用于在信息處理裝置中的數(shù)據(jù)處理單元中加載一個預(yù)定的程序,該數(shù)據(jù)處理單元可執(zhí)行預(yù)定的數(shù)據(jù)處理,其中存儲在記錄介質(zhì)中的程序包括,一個加密程序數(shù)據(jù)接收步驟,用于接收利用一個預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),該預(yù)定程序是一個在數(shù)據(jù)處理單元中用于執(zhí)行預(yù)定數(shù)據(jù)處理操作的程序,一個解密步驟,用于利用一個預(yù)定的解密密鑰,將從加密程序數(shù)據(jù)接收步驟接收的加密程序數(shù)據(jù)解密為預(yù)定的程序,一個輸出限制步驟,用于限制解密的預(yù)定程序自外部設(shè)備的輸出,和存儲步驟,用于將加密程序數(shù)據(jù)由解密步驟解密后的預(yù)定程序存儲在存儲裝置中。
      在又一方面,本發(fā)明提供一種電路設(shè)備,其是信息處理裝置中的數(shù)據(jù)處理裝置的一個集成,適于執(zhí)行預(yù)定數(shù)據(jù)處理,以集成的形式包括,加密程序數(shù)據(jù)接收裝置,用于接收利用一個預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),解密裝置,用于利用一個預(yù)定的解密密鑰,將從加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)解密為預(yù)定的程序,存儲裝置,用于存儲加密程序數(shù)據(jù)由解密裝置解密后的預(yù)定程序,程序讀出裝置,用于讀出存儲在存儲裝置中的預(yù)定程序,和輸出限制裝置,用于限制由解密裝置解密的預(yù)定程序和存儲在存儲裝置中的預(yù)定程序的輸出。
      在根據(jù)本發(fā)明的上述信息處理裝置中,加密程序數(shù)據(jù)是通過解密裝置利用一個預(yù)定的解密密鑰而實現(xiàn)解密的,該解密后的程序被存儲在存儲裝置中,該存儲的程序被讀出,并且該信息處理裝置的預(yù)定操作由控制裝置根據(jù)讀出的程序而進(jìn)行控制,以防止程序加載期間程序數(shù)據(jù)被泄漏出去,這樣做有可能禁止使用在程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      根據(jù)本發(fā)明的程序加載方法,其中加密程序數(shù)據(jù)是利用一個預(yù)定的解密密鑰,通過解密步驟被解密為一個程序的,該解密后的程序被存儲在存儲裝置中,從而可能禁止在程序加載期間的程序數(shù)據(jù)泄漏,以避免使用在程序加載期間泄漏出去的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      在根據(jù)本發(fā)明的記錄介質(zhì)中,其上記錄的程序包括,利用一個預(yù)定的解密密鑰將加密程序數(shù)據(jù)解密為一個程序,并將該解密后的程序存儲在存儲裝置中,從而有可能禁止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      在根據(jù)本發(fā)明的信息處理裝置中,其中利用一個預(yù)定的加密密鑰對第二程序加密而得到的加密程序數(shù)據(jù),在控制單元的解密裝置中,響應(yīng)于一個程序更新請求,利用一個預(yù)定的加密密鑰,被解密為一個第二程序,該解密的第二程序是被程序?qū)懭胙b置寫入在存儲裝置中,以更新第一程序,其中通過解密裝置解密的第二程序和寫在存儲裝置中的第二程序自外部設(shè)備的輸出被輸出限制裝置進(jìn)行限制,從而有可能禁止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      本發(fā)明的信息處理裝置制造并不昂貴,因為其不需要重新建立一個控制單元體系。
      并且,本發(fā)明的信息處理裝置僅僅在程序更新時實現(xiàn)控制單元中的解密處理,在正常操作期間的處理操作不易降低。
      根據(jù)本發(fā)明的程序更新方法,其中利用一個預(yù)定的加密密鑰對第二程序加密而得到的加密程序數(shù)據(jù),在解密步驟中,響應(yīng)于一個程序更新請求,利用一個預(yù)定的解密密鑰,被解密為第二程序,該解碼的第二程序在程序?qū)懭氩襟E被寫入存儲裝置中,以更新第一程序,其中通過解密步驟解密的第二程序和寫在存儲裝置中的第二程序自外部設(shè)備的輸出在輸出限制步驟被限制,從而有可能禁止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      并且在本發(fā)明的程序更新方法中,其中加密/解密僅僅在更新第一程序時才在控制單元中被執(zhí)行,在正常操作期間控制單元中的處理操作不易降低。
      在本發(fā)明的記錄介質(zhì)中,其上記錄的程序包括,利用一個預(yù)定的加密密鑰對第二程序加密而得到的加密程序數(shù)據(jù),在解密步驟中,響應(yīng)于一個程序更新請求,利用一個預(yù)定的解密密鑰,被解密為第二程序,該解密的第二程序在程序?qū)懭氩襟E被寫入存儲裝置中,以更新第一程序,其中通過解密步驟解密的第二程序和寫在存儲裝置中的第二程序自外部設(shè)備的輸出在輸出限制步驟被限制,從而有可能禁止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      并且,在本發(fā)明的記錄介質(zhì)上記錄的程序中,其中加密/解密僅僅在更新第一程序時才在控制單元中被執(zhí)行,在正常操作期間控制單元中的處理操作不易降低。
      在根據(jù)本發(fā)明的電路設(shè)備中,其中利用一個預(yù)定的加密密鑰進(jìn)行加密而得到的加密程序數(shù)據(jù),在解密步驟中,響應(yīng)于一個程序更新請求,利用一個預(yù)定的解密密鑰,在集成的解密裝置中,被解密為第二程序,該解密的第二程序被程序?qū)懭胙b置寫入存儲裝置中,以更新第一程序,其中通過解密步驟解密的第二程序和寫在存儲裝置中的第二程序自外部設(shè)備的輸出在輸出限制步驟被限制,從而有可能禁止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      并且,在本發(fā)明的電路設(shè)備中,其中加密/解密僅僅在更新第一程序時才在控制單元中被執(zhí)行,在正常操作期間控制單元中的處理操作不易降低。
      在根據(jù)本發(fā)明的信息處理裝置中,其中利用一個預(yù)定的加密密鑰進(jìn)行加密得到的加密程序數(shù)據(jù),響應(yīng)于一個程序更新請求,利用一個預(yù)定的解密密鑰,在數(shù)據(jù)處理單元中的解密裝置中,被解密為第二程序,并被傳送至控制單元,在控制單元中的程序?qū)懭胙b置中該解密的第二程序被寫入控制單元中的存儲裝置中,以更新第一程序,從而有可能禁止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      在根據(jù)本發(fā)明的程序更新方法中,其中對應(yīng)于利用一個預(yù)定的加密密鑰對第二程序加密得到的加密程序數(shù)據(jù),響應(yīng)于一個程序更新請求,利用一個預(yù)定的解密密鑰,在解密步驟中,被解密為第二程序,并被傳送至控制單元,其中在程序?qū)懭氩襟E中該被解密的第二程序被寫入控制單元中的存儲裝置中,以更新第一程序,從而有可能禁止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      在根據(jù)本發(fā)明的記錄介質(zhì)中,其上記錄有一個程序,其中對應(yīng)于利用一個預(yù)定的加密密鑰對第二程序加密得到的加密程序數(shù)據(jù),響應(yīng)于一個程序更新請求,利用一個預(yù)定的解密密鑰,在解密步驟中,被解密為第二程序,并被傳送至控制單元,其中在程序?qū)懭氩襟E中該被解密的第二程序被寫入控制單元中的存儲裝置中,以更新第一程序,從而有可能禁止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      例如,有可能禁止這樣的不正當(dāng)行為,例如在DVD-ROM驅(qū)動器的固件更新而引起的固件數(shù)據(jù)泄漏時可能會出現(xiàn)的區(qū)域碼(RC)造成的再現(xiàn)限制無效,和未授權(quán)的復(fù)制DVD-ROM或使DVD-ROM的再現(xiàn)限制無效。
      在根據(jù)本發(fā)明的信息處理裝置中,其中對應(yīng)于利用一個預(yù)定的加密密鑰數(shù)據(jù)對一個預(yù)定程序加密得到的加密程序數(shù)據(jù),被數(shù)據(jù)處理單元中的解密裝置解密為預(yù)定程序,這樣解密的程序被存儲在數(shù)據(jù)處理單元中的存儲裝置中,其中通過解密裝置被解密的預(yù)定程序和存儲在存儲裝置中的預(yù)定程序自外部設(shè)備的輸出被輸出限制裝置進(jìn)行限制,以防止程序加載期間程序數(shù)據(jù)被泄漏出去,從而防止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      在根據(jù)本發(fā)明的程序加載方法中,其中對應(yīng)于利用一個預(yù)定的加密密鑰數(shù)據(jù)對一個預(yù)定程序加密得到的加密程序數(shù)據(jù),在解密步驟解密為預(yù)定程序,這樣該解密的程序被存儲在數(shù)據(jù)處理單元中的存儲裝置中,其中通過解密步驟被解密的預(yù)定程序和存儲在存儲裝置中的預(yù)定程序自外部設(shè)備的輸出,在輸出限制步驟進(jìn)行限制,以防止程序加載期間程序數(shù)據(jù)被泄漏出去,從而防止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      在根據(jù)本發(fā)明的記錄介質(zhì)中,其上記錄有一個程序,其中對應(yīng)于利用一個預(yù)定的加密密鑰數(shù)據(jù)對一個預(yù)定程序加密得到的加密程序數(shù)據(jù),在解密步驟解密為預(yù)定程序,這樣該解密的程序被存儲在數(shù)據(jù)處理單元中的存儲裝置中,其中通過解密步驟被解密的預(yù)定程序和存儲在存儲裝置中的預(yù)定程序自外部設(shè)備的輸出,在輸出限制步驟進(jìn)行限制,以防止程序加載期間程序數(shù)據(jù)被泄漏出去,從而避免不正當(dāng)使用程序加載時泄漏的程序數(shù)據(jù)。從而有可能禁止使用程序加載期間泄漏的程序數(shù)據(jù)的不正當(dāng)行為。
      在根據(jù)本發(fā)明的電路設(shè)備中,其中對應(yīng)于利用一個預(yù)定的加密密鑰數(shù)據(jù)對一個預(yù)定程序加密得到的加密程序數(shù)據(jù),被解密裝置解密為預(yù)定程序,這樣該解密的程序被存儲在存儲裝置中,其中通過解密裝置被解密的預(yù)定程序和存儲在存儲裝置中的預(yù)定程序自外部設(shè)備的輸出被輸出限制裝置進(jìn)行限制,從而有可能防止程序加載期間程序數(shù)據(jù)被泄漏出去,從而避免不正當(dāng)使用程序加載時泄漏的程序數(shù)據(jù)。
      根據(jù)本發(fā)明的一個方面,提供了一種具有一控制單元的信息處理裝置,該控制單元包括,存儲有第一程序的存儲裝置,和控制裝置,用于讀出存儲在存儲裝置中的第一程序并根據(jù)讀出的第一程序來控制信息處理裝置的預(yù)定操作,該信息處理裝置包括加密程序數(shù)據(jù)接收裝置,用于接收利用一個預(yù)定的加密密鑰對第二程序加密后的加密程序數(shù)據(jù),解碼裝置,用于利用一個預(yù)定的解碼密鑰,對由加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)進(jìn)行解碼,和程序傳送裝置,用于將加密程序數(shù)據(jù)被解密裝置解密后的第二程序傳送至控制單元;所述控制單元包括程序接收裝置,用于接收由傳送裝置傳送的第二程序,和程序?qū)懭胙b置,用于將程序接收裝置接收的第二程序?qū)懭氪鎯ρb置。
      根據(jù)本發(fā)明的一個方面,提供了一種用于信息處理裝置的程序更新方法,該信息處理裝置具有一控制單元,該控制單元包括存儲有第一程序的存儲裝置,和控制裝置,用于讀出存儲在所述存儲裝置中的所述第一程序并根據(jù)讀出的第一程序來控制所述信息處理裝置的一個預(yù)定操作,該程序更新方法包括一個加密程序數(shù)據(jù)接收步驟,用于響應(yīng)一個請求更新所述第一程序的程序更新請求而接收加密程序數(shù)據(jù),該加密程序數(shù)據(jù)是利用一個預(yù)定的加密密鑰加密后的第二程序,一個解密步驟,用于利用一個預(yù)定的解密密鑰,將加密程序數(shù)據(jù)接收步驟接收的所述加密程序數(shù)據(jù)解密為所述第二程序,一個程序傳送步驟,用于傳送所述加密程序數(shù)據(jù)在所述解密步驟解密后的所述第二程序,一個程序接收步驟,用于接收由所述程序傳送步驟傳送至所述控制單元的第二程序,和一個程序?qū)懭氩襟E,用于將所述程序接收步驟接收的所述第二程序?qū)懭胨龃鎯ρb置。
      根據(jù)本發(fā)明的另一個方面,提供了一種具有一數(shù)據(jù)處理單元的信息處理裝置,該數(shù)據(jù)處理單元用于執(zhí)行預(yù)定的數(shù)據(jù)處理;所述該數(shù)據(jù)處理單元包括加密程序數(shù)據(jù)接收裝置,用于接收通過使用預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),解碼裝置,用于利用一個預(yù)定的解密密鑰,將從加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)解碼為所述預(yù)定的程序,存儲裝置,用于存儲所述加密程序數(shù)據(jù)通過所述解密裝置解密后的所述預(yù)定程序,程序讀出裝置,用于讀出存儲在所述存儲裝置中的所述預(yù)定程序,第一控制裝置,用于根據(jù)所述程序讀出裝置讀出的所述預(yù)定程序而控制所述數(shù)據(jù)處理單元中的預(yù)定數(shù)據(jù)處理操作,和輸出限制裝置,用于限制由所述解密裝置解密的所述預(yù)定程序和存儲在所述存儲裝置中的所述預(yù)定程序自一個外部設(shè)備的輸出。
      根據(jù)本發(fā)明的另一個方面,提供了一種用于信息處理裝置中的數(shù)據(jù)處理單元中的程序加載方法,所述數(shù)據(jù)處理單元執(zhí)行預(yù)定的數(shù)據(jù)處理,所述方法包括一個加密程序數(shù)據(jù)接收步驟,用于接收利用一個預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),所述預(yù)定程序是一個在數(shù)據(jù)處理單元中用于執(zhí)行預(yù)定數(shù)據(jù)處理的程序,一個解密步驟,用于利用一個預(yù)定的解密密鑰,將從加密程序數(shù)據(jù)接收步驟接收的加密程序數(shù)據(jù)解密為預(yù)定的程序,一個輸出限制步驟,用于限制所述解密的預(yù)定程序自一個外部設(shè)備的輸出,和一個存儲步驟,用于將所述加密程序數(shù)據(jù)由所述解密步驟解密后的所述預(yù)定程序存儲在存儲裝置中。
      根據(jù)本發(fā)明的另一個方面,提供了一種電路設(shè)備,其是適于執(zhí)行預(yù)定數(shù)據(jù)處理的信息處理裝置中的數(shù)據(jù)處理裝置的一個集成,包括,以集成的形式加密程序數(shù)據(jù)接收裝置,用于接收利用一個預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),解密裝置,用于利用一個預(yù)定的解密密鑰,將從所述加密程序數(shù)據(jù)接收裝置接收的所述加密程序數(shù)據(jù)解密為所述預(yù)定的程序,存儲裝置,用于存儲所述加密程序數(shù)據(jù)由所述解密裝置解密后的所述預(yù)定程序,程序讀出裝置,用于讀出存儲在所述存儲裝置中的所述預(yù)定程序,和輸出限制裝置,用于限制由解密裝置解密的所述預(yù)定程序和存儲在所述存儲裝置中的所述預(yù)定程序的輸出。
      本發(fā)明的其他方面,特征和優(yōu)點在閱讀了通過附圖示出的實施例之后將會更加明顯。


      圖1示出了作為本發(fā)明的第一實施例的DVD-ROM設(shè)備的結(jié)構(gòu)的方框圖。
      圖2示出了編碼過程。
      圖3示出了實現(xiàn)本發(fā)明的DVD-ROM驅(qū)動器中更新固件的操作流程圖。
      圖4示出了DVD-ROM驅(qū)動器中通過更新功能更新固件的操作的第一流程圖。
      圖5示出了DVD-ROM驅(qū)動器中通過更新功能更新固件的操作的第二流程圖。
      圖6示出了在固件更新處理后確認(rèn)該更新是否成功的操作的流程圖。
      圖7示出了該DVD-ROM驅(qū)動器的CPU的可選擇配置的方框圖。
      圖8示出了作為本發(fā)明的第二實施例的DVD-ROM驅(qū)動器的結(jié)構(gòu)的方框圖。
      圖9示出了該DVD-ROM驅(qū)動器的解密單元的結(jié)構(gòu)。
      圖10示出了該DVD-ROM驅(qū)動器的加密單元的結(jié)構(gòu)。
      圖11示出了該DVD-ROM驅(qū)動器中通過更新功能進(jìn)行固件更新操作的第一流程圖。
      圖12示出了該DVD-ROM驅(qū)動器中通過更新功能進(jìn)行固件更新操作的第二流程圖。
      圖13示出了該DVD-ROM驅(qū)動器中,在固件更新處理后確認(rèn)該更新是否成功的操作的流程圖。
      圖14示出了作為本發(fā)明的第三實施例的DVD-ROM驅(qū)動器的結(jié)構(gòu)的方框圖。
      圖15示出了該DVD-ROM驅(qū)動器的解密單元的結(jié)構(gòu)。
      圖16示出了該DVD-ROM驅(qū)動器中加載微程序的操作的流程圖。
      圖17示出了產(chǎn)生一個加密程序的操作的流程圖,該加密程序已經(jīng)被附加了一個用于防止篡改的檢驗程序。
      圖18示出了該DVD-ROM驅(qū)動器用于執(zhí)行該加密程序的操作的流程圖,該加密程序已經(jīng)被附加了檢驗程序。
      圖19示出了該檢驗程序的運行的流程圖。
      圖20示出了已經(jīng)附加上檢驗程序和檢驗數(shù)據(jù)的一個程序主體。
      圖21示出了該散列函數(shù)。
      圖22示出了對已經(jīng)附加上檢驗程序和檢驗數(shù)據(jù)的程序主體進(jìn)行加密的樣式。
      圖23示出了校驗和數(shù)據(jù)已被附加在加密數(shù)據(jù)上的樣式。
      具體實施例方式
      參照附圖,下面將詳細(xì)說明本發(fā)明的信息處理裝置、程序加載方法、記錄介質(zhì)、程序更新方法和電路設(shè)備的優(yōu)化實施例。
      圖1示出了本發(fā)明第一實施例的DVD-ROM驅(qū)動器的結(jié)構(gòu)。
      該DVD-ROM驅(qū)動器用于再現(xiàn)加載在該驅(qū)動器某一位置上的DVD-ROM1。該DVD-ROM驅(qū)動器與一個人計算機(jī)(PC)10連接,從而利用該連接的PC10控制DVD-ROM 1的多種操作。
      該DVD驅(qū)動器包括一光學(xué)拾取單元2,一個軸電機(jī)3,一個讀處理器4,一個光學(xué)拾取單元驅(qū)動器5,一個軸電機(jī)驅(qū)動器6,一個DVD解碼器7,一個緩沖存儲器8和一個CPU 9,但這些部件并未特別示出。
      該光學(xué)拾取單元2包括一個用于發(fā)射預(yù)定波長的激光的激光二極管,一個用于發(fā)射該激光二極管發(fā)射的預(yù)定波長的激光的物鏡,從而使該激光匯聚在DVD-ROM 1的數(shù)據(jù)記錄表面上,一個用于激勵該裝于其上的物鏡根據(jù)預(yù)定的控制信號實現(xiàn)聚焦和跟蹤調(diào)節(jié)的雙軸激勵器,一個用于接收從DVD-ROM 1的數(shù)據(jù)記錄表面反射回來的光,并將該光轉(zhuǎn)化為電信號,從而檢測數(shù)據(jù)記錄表面上是否出現(xiàn)凹坑的光電探測器。該光電探測器檢測到的電信號通常被稱為RF(射頻信號)。
      該光學(xué)拾取單元2包括一個用于沿DVD-ROM 1的徑向驅(qū)動該光學(xué)拾取單元2的滑動電機(jī)。
      另外,若DVD-ROM驅(qū)動器包括一個未示出的用于將DVD-ROM 1設(shè)定在加載的光盤托架上的機(jī)構(gòu),則該光學(xué)拾取單元2上具有一個用于激勵該光盤托架的加載電機(jī)。
      該軸電機(jī)3是一個旋轉(zhuǎn)驅(qū)動加載位置的DVD-ROM 1的電機(jī)。
      該讀處理器4根據(jù)光學(xué)拾取單元2上的光電探測器檢測到的RF信號,產(chǎn)生用于DVD讀出的EFM+(8-14位調(diào)制+)信號,用于跟蹤伺服的聚焦誤差(FE)信號,以及同步引入信號(pull-in signals),并將這些產(chǎn)生的信號發(fā)送到伺服控制單元12。
      光學(xué)拾取單元驅(qū)動器5為一驅(qū)動器IC(集成電路),它根據(jù)預(yù)定的控制信號激勵光學(xué)拾取單元2的未示出的雙軸激勵器、滑動電機(jī)和加載電機(jī)。
      軸電機(jī)驅(qū)動器6為一驅(qū)動器IC,它根據(jù)預(yù)定的控制信號激勵前面所述的軸電機(jī)3。
      DVD解碼器7包括一DVD信號處理器11,伺服控制單元12,光盤驅(qū)動單元13,存儲器控制器14,一ATAPI(具有封裝接口的AT附加裝置)15以及CPUI/F 16。
      該DVD信號處理器11包括一RS-PC解碼器,一ID處理8/16轉(zhuǎn)換電路和一用于判斷介質(zhì)是否可記錄的擺動檢測器。
      伺服控制電路12根據(jù)例如讀處理器4發(fā)射的FE信號、TE信號或同步引入信號,產(chǎn)生用于驅(qū)動控制光學(xué)拾取單元2的雙軸激勵器或滑動電機(jī)的控制信號,并將該產(chǎn)生的控制信號發(fā)送到光學(xué)拾取單元驅(qū)動器5。
      該光盤驅(qū)動單元13產(chǎn)生用于控制已經(jīng)加載入DVD-ROM 1的軸電機(jī)3的旋轉(zhuǎn)的控制信號,并將該產(chǎn)生的控制信號發(fā)送至軸電機(jī)驅(qū)動器6。
      存儲器控制器14控制緩沖存儲器8的數(shù)據(jù)寫入和數(shù)據(jù)讀出。
      ATAPI 15為PC 10和DVD-ROM驅(qū)動器之間進(jìn)行相互連接和交換數(shù)據(jù)的接口。
      這種用于連接PC 10的接口可以為SCCI(小型計算機(jī)系統(tǒng)接口),USB(通用串行總線)或IEEE(電氣和電子工程師協(xié)會)1394,以替換該ATAPI15。
      CPUI/F 16為DVD解碼器7和CPU9相互連接的接口,用于使CPU9控制DVD解碼器7。該CPUI/F 16讀出存儲在緩沖存儲器8中的數(shù)據(jù)或在其中寫入數(shù)據(jù)。
      該緩沖存儲器8為一隨機(jī)可存取存儲器,例如DRAM(動態(tài)隨機(jī)可存取存儲器),用于暫時保存DVD信號處理器11或CPU 9發(fā)送的數(shù)據(jù)。
      該CPU 9通過CPUI/F 16與DVD解碼器7連接,從而全面控制DVD-ROM驅(qū)動器的功能。下面將詳細(xì)說明該CPU 9的結(jié)構(gòu)和功能。
      PC 10通過例如DVD解碼器7的ATAPI 15與DVD-ROM驅(qū)動器連接,從而通過輸入一預(yù)定命令控制DVD-ROM驅(qū)動器的操作,例如再現(xiàn)、停止或數(shù)據(jù)恢復(fù)。用戶可通過PC 10使用DVD-ROM 1的各種數(shù)據(jù)。
      下面將說明CPU 9的結(jié)構(gòu)。
      該CPU 9包括一CPU核心20、一啟動ROM 21、一閃存ROM 22、一RAM 23、一輸入/輸出端口24、一寫入計時控制計時器25、一中斷控制電路26、一串行通信電路27、一32位總線28、一16位總線29、一橋電路30和一外部總線控制器31。
      該CPU核心20表示CPU 9的核心部分,包括用于執(zhí)行算術(shù)操作或比較判斷的一算術(shù)邏輯電路、一加法器或一計數(shù)寄存器。
      該啟動ROM 21為一所謂的閃存存儲器,例如EEPROM(電可擦除可編程只讀存儲器),它是可進(jìn)行電數(shù)據(jù)擦除的可編程ROM。
      該啟動ROM 21存儲有啟動程序,當(dāng)更新存儲在閃存ROM 22中的程序時,啟動該程序。在啟動該啟動程序時,向例如CPU 9上的接線端提供預(yù)定的電壓。當(dāng)向CPU 9上的接線端提供預(yù)定電壓時,從引導(dǎo)地址的開始處讀出該啟動程序以執(zhí)行啟動程序。
      該啟動ROM 21還包括一加密處理單元21a,在其中存儲有作為一個程序的用于解密通過加密傳輸?shù)墓碳耐ㄓ妹荑€,以及用于利用該通用密鑰對被加密的固件進(jìn)行解碼的解密算法。
      與啟動ROM 21相似,該閃存ROM 22也為一所謂的閃存存儲器,例如EEPROM,它是電可擦除可編程ROM。
      該閃存存儲器22中存儲有一固件,該固件為用于對DVD-ROM驅(qū)動器施加再現(xiàn)限制的程序。存儲在閃存ROM 22中的固件為用于執(zhí)行DVD-ROM驅(qū)動器的預(yù)定操作的程序,例如DVD-ROM 1的再現(xiàn)限制或數(shù)字復(fù)制的限制。
      利用一TMR(磁致電阻隧道效應(yīng))裝置,也可使用一MRAM(磁隨機(jī)存取存儲器)來替換閃存ROM 22。該MRAM為磁性存儲數(shù)據(jù)的存儲器,因此可防止數(shù)據(jù)重寫。這樣,在更新該固件時,就不再需要擦除存儲在MRAM中的數(shù)據(jù)的操作。即,不再需要對該固件進(jìn)行預(yù)更新擦除操作。
      參照圖2,說明該通用密鑰。
      在圖2中,在對純文本數(shù)據(jù)加密中,利用該預(yù)定的加密密鑰,將該數(shù)據(jù)轉(zhuǎn)換為加密的數(shù)據(jù)。在對加密后的數(shù)據(jù)解密中,利用預(yù)定的解密密鑰將其轉(zhuǎn)換為該純文本數(shù)據(jù)。
      不同的是,該加密密鑰用于對純文本數(shù)據(jù)或信息進(jìn)行加密,該解密密鑰用于將該被加密的數(shù)據(jù)或信息轉(zhuǎn)換為原始的純文本數(shù)據(jù)或信息。
      該通用密鑰是指通用于加密上述數(shù)據(jù)的加密密鑰,和用于解密該被加密數(shù)據(jù)的解密密鑰。由于對該通用密鑰的信息進(jìn)行保密而沒有公開,該通用密鑰也稱為秘密密鑰。
      雖然啟動ROM 21和閃存ROM 22作為兩個不同閃存ROM來表示,但也可將他們合成為一個單獨的閃存ROM,可將它的存儲區(qū)域分為一啟動區(qū)域和一程序區(qū)域。
      該RAM 23為例如一不需要用于保持存儲的內(nèi)容的刷新操作的SRAM(靜態(tài)隨機(jī)可存取存儲器),它可快速的進(jìn)行存取。該RAM 23表示當(dāng)更新存儲在閃存ROM 22中的固件時,在其中打開數(shù)據(jù)和更新程序的區(qū)域。
      通常,閃存存儲器不能自己執(zhí)行更新存儲其中數(shù)據(jù)的程序。因此,在更新該固件時,更新函數(shù)與緩沖存儲器8發(fā)送的固件數(shù)據(jù)一起,從啟動ROM 21復(fù)制到RAM 23中。
      該輸入/輸出端口24作為CPU 9的數(shù)據(jù)寫入端口和數(shù)據(jù)讀出端口。
      當(dāng)更新閃存ROM 22的固件時,該寫入計時控制計時器25控制寫入計時。
      中斷控制電路26根據(jù)允許執(zhí)行中斷程序的預(yù)定中斷的產(chǎn)生,執(zhí)行控制以中斷當(dāng)前正在執(zhí)行的處理。
      串行通信電路27為串行數(shù)據(jù)發(fā)送/接收的接口。
      32位總線28為可一次發(fā)送/接收32位數(shù)據(jù)的總線。
      16位總線29為可一次發(fā)送/接收16位數(shù)據(jù)的總線。
      橋電路30將該32位總線28和16位總線29連接。
      外部總線控制器31監(jiān)視CPU 9和作為外部設(shè)備的DVD解碼器7之間傳輸?shù)臄?shù)據(jù),并控制DVD解碼器7的數(shù)據(jù)輸入/輸出。該外部總線控制器31還具有保護(hù)功能,從而使用戶級不能訪問RAM 23和存儲在啟動ROM 21和閃存ROM 22中的程序。這考慮到可從CPU 9中讀出通用密鑰、加密處理單元21a和解密固件加以限制。
      參照圖3的流程圖,下面說明更新存儲在閃存ROM 22中的固件的操作。
      首先,在步驟S1中,如果施加到啟動接線端的電壓很高,則CPU 9的CPU核心20執(zhí)行步驟S2。如果該電壓低,則CPU核心執(zhí)行步驟S4。
      步驟S2的處理是對存儲在閃存ROM 22中的程序執(zhí)行處理,步驟S4的處理是啟動存儲在啟動ROM 21中的啟動程序以更新固件的處理。
      在步驟S2中,CPU核心20從例如存儲該固件的程序區(qū)域的引導(dǎo)地址開始,訪問閃存ROM 22的程序。
      在步驟S3中,CPU核心20根據(jù)存儲在該被訪問的閃存ROM 22的程序區(qū)域中的程序,執(zhí)行常規(guī)處理,例如DVD-ROM 1的再現(xiàn)或數(shù)據(jù)恢復(fù)。
      在步驟S4中,根據(jù)施加到啟動接線端的低電壓,將存儲有啟動ROM 21的啟動程序的啟動區(qū)域的引導(dǎo)地址讀入CPU核心20,從而啟動該啟動程序。
      在步驟S5中,CPU核心20對DVD-ROM驅(qū)動器的全部端口進(jìn)行初始化。從而防止了該DVD-ROM驅(qū)動器的機(jī)械和電路系統(tǒng)被破壞。
      在步驟S6中,該CPU核心20檢驗PC 10是否已經(jīng)輸入可在未就緒狀態(tài)下執(zhí)行的命令。該未就緒狀態(tài)這里是指DVD-ROM 1沒有加載入DVD-ROM驅(qū)動器上的位置的狀態(tài)或該DVD-ROM 1沒有被CPU 9識別的狀態(tài),該在未就緒狀態(tài)中可執(zhí)行的命令是指即使當(dāng)DVD-ROM 1沒有被識別時也可執(zhí)行的命令。例如,從DVD-ROM 1中讀出預(yù)定數(shù)據(jù)的命令就是不能在未就緒狀態(tài)執(zhí)行的命令。
      如果輸入在未就緒狀態(tài)可執(zhí)行的命令,則CPU核心執(zhí)行步驟S8。如果輸入不能在未就緒狀態(tài)執(zhí)行的命令,則CPU核心執(zhí)行步驟S7。
      在步驟S7中,該CPU核心20響應(yīng)不能在未就緒狀態(tài)執(zhí)行的命令的輸入,完成校驗條件狀態(tài)下的命令從而返回到步驟S6。
      在步驟S8中,如果PC 10發(fā)出不同于指令更新閃存ROM 22的程序的寫入緩沖命令的命令,則該CPU核心20執(zhí)行步驟S9。如果發(fā)出該寫入緩沖命令,則CPU核心20執(zhí)行步驟S10。
      在步驟S9中,CPU核心20響應(yīng)于不同于寫入緩沖命令的輸入,執(zhí)行輸入命令。
      在向DVD-ROM驅(qū)動器發(fā)出寫入緩沖命令后,PC 10將加密后的固件數(shù)據(jù)發(fā)送到DVD-ROM驅(qū)動器,該加密后的固件數(shù)據(jù)是利用通用密鑰對將被更新為二進(jìn)制文件形式的固件加密所得到的。
      在步驟S10,該CPU核心20響應(yīng)于接收到的寫入緩沖命令,獲得緩沖存儲器8的數(shù)據(jù)存儲區(qū)域的一個2×M KB的區(qū)域,該區(qū)域從地址N開始,其中M為自然數(shù),從而使PC 10發(fā)送的二進(jìn)制文件存儲在該獲得的數(shù)據(jù)存儲區(qū)域中。
      當(dāng)接收該二進(jìn)制文件時,CPU核心20累加二進(jìn)制數(shù)據(jù)的總數(shù),產(chǎn)生校驗和數(shù)據(jù),該數(shù)據(jù)與二進(jìn)制文件一起存儲在緩沖存儲器8中。該校驗和數(shù)據(jù)是將數(shù)據(jù)的總數(shù)累加在一起而獲得的,該校驗和數(shù)據(jù)是用于確認(rèn)發(fā)送的程序已經(jīng)被無誤差的接收的數(shù)據(jù)。
      在步驟S11中,CPU核心20檢驗在步驟S10中存儲在緩沖存儲器8中的校驗和數(shù)據(jù),從而檢查發(fā)送的固件數(shù)據(jù)是否已經(jīng)被正確的接收。如果數(shù)據(jù)已經(jīng)被正確的接收,則CPU核心20執(zhí)行步驟S13,如果相反,則CPU核心20執(zhí)行步驟S12。
      在步驟S12中,當(dāng)從步驟S11的校驗和數(shù)據(jù)的檢驗結(jié)果得到確認(rèn),CPU核心20通過完成校驗條件狀態(tài)命令通知PC 10該二進(jìn)制數(shù)據(jù)已經(jīng)被正確的發(fā)送。然后CPU核心20轉(zhuǎn)到步驟S6。
      在步驟S13中,CPU核心20將更新固件中使用的更新函數(shù)從啟動ROM21復(fù)制到RAM 23中,該更新函數(shù)當(dāng)前存儲在啟動ROM 21中。
      該更新函數(shù)被復(fù)制到RAM 23,并在其中展開,從而作為更新程序操作更新固件到閃存ROM 22中。
      現(xiàn)在利用圖4所示的流程圖說明更新函數(shù)的處理操作。
      在步驟S21中,CPU核心20訪問存儲在RAM 23中的更新函數(shù)的引導(dǎo)地址,從而利用該更新函數(shù)開始更新固件到閃存ROM 22中。
      在步驟S22中,CPU核心20控制中斷控制電路26完全禁止中斷程序的執(zhí)行,同時禁止異常的處理的執(zhí)行。
      CPU核心20響應(yīng)于PC 10輸入的寫入緩沖命令的接收,擦除存儲在閃存ROM 22的固件存儲區(qū)域中的數(shù)據(jù)。
      同時,如果使用前述的MRAM替換閃存ROM 22,則不需要擦除該存儲的固件,因為MRAM允許數(shù)據(jù)重寫。
      在步驟S23中,CPU核心20啟動寫入計時控制計時器25,該計時器25用于控制閃存ROM 22中的寫入計時。
      根據(jù)寫入計時控制計時器25的計時控制,隨后在閃存ROM 22中寫入數(shù)據(jù)。
      在步驟S24中,CPU核心20訪問緩沖存儲器8的地址數(shù)N和閃存ROM22的地址數(shù)0,該地址數(shù)N中存儲有加密的固件數(shù)據(jù)的二進(jìn)制文件,地址數(shù)0中存儲有固件。
      在步驟S25中,CPU核心20從緩沖存儲器8的地址數(shù)N中讀出2KB數(shù)據(jù),將讀出的數(shù)據(jù)復(fù)制到RAM 23中。
      在步驟S26中,CPU核心20每隔8字節(jié)的讀出已復(fù)制到RAM 23中的2KB數(shù)據(jù),并利用啟動ROM 21中的通用密鑰和存儲在加密處理單元21a中的解密算法對該數(shù)據(jù)解密。該CPU核心20使該解密的2KB數(shù)據(jù),即解密的固件數(shù)據(jù),重新存儲在RAM 23中并在其中展開。
      在步驟S27中,CPU核心20從RAM 23中讀出存儲在RAM 23中的2KB固件數(shù)據(jù),并將其寫入閃存ROM 22中,從地址數(shù)0開始。
      如果在步驟S28中,存儲在閃存ROM 22中的固件數(shù)據(jù)的最后地址數(shù)為2×M,M為自然數(shù),則CPU核心20執(zhí)行步驟S30。如果相反,則CPU核心20執(zhí)行步驟S29。
      在步驟S29中,CPU核心20訪問緩沖存儲器8的地址數(shù)加2KB所得的地址和閃存ROM 22加2KB得到的地址數(shù)。當(dāng)該步驟結(jié)束后,CPU核心轉(zhuǎn)到步驟S25。
      在步驟S30中,CPU核心20停止寫入計時控制計時器25,該計時器控制對閃存ROM 22的寫入計時。
      在步驟S31中,作為步驟S28中的存儲在閃存ROM 22的固件數(shù)據(jù)的最后地址數(shù)為2×M,M為自然數(shù)的判斷的結(jié)果,以及步驟S30中停止了寫入計時控制計時器25的結(jié)果,對閃存ROM 22的固件的更新結(jié)束。
      在步驟S32中,CPU核心20響應(yīng)于步驟S31中結(jié)束的固件更新,訪問閃存ROM 22的程序區(qū)域的引導(dǎo)地址。
      在步驟S33中,CPU核心20響應(yīng)于存儲在閃存ROM 22的被訪問的程序區(qū)域中的程序,即被更新的固件,執(zhí)行通常的操作,例如再現(xiàn)或數(shù)據(jù)恢復(fù)。
      根據(jù)本發(fā)明,在DVD-ROM驅(qū)動器中在更新存儲在閃存ROM 22中的固件時,利用通用密鑰,CPU 9中的啟動ROM 21中的加密處理單元對來自PC10的被加密的固件數(shù)據(jù)進(jìn)行解密,并將該固件數(shù)據(jù)寫入閃存ROM 22中,從而防止固件數(shù)據(jù)向外界泄漏。
      在圖4所示的流程圖中,示出了從PC 10接收加密的固件數(shù)據(jù)和解密該接收到的加密的固件數(shù)據(jù)以將其寫入閃存ROM 22中的技術(shù)。如果PC 10輸出未加密的數(shù)據(jù),則圖4中的步驟S25-S27的處理可變?yōu)椴襟E825a的處理,即如圖5所示,直接從緩沖存儲器8寫入閃存ROM 22。
      參照圖6的流程圖,現(xiàn)在說明PC 10檢驗閃存ROM 22的固件更新結(jié)果的處理操作。
      在步驟S41中,PC 10發(fā)出一讀緩沖命令,要求存儲在閃存ROM 22中的固件轉(zhuǎn)移到DVD-ROM驅(qū)動器中。
      在步驟S42中,CPU核心20響應(yīng)于從PC 10發(fā)出的讀緩沖命令的接收,從閃存ROM 22的引導(dǎo)地址開始,讀出存儲在閃存ROM 22中的固件的2KB數(shù)據(jù)。
      在步驟S43中,CPU核心20將該讀出的2KB數(shù)據(jù)記錄和存儲在RAM 23的寄存器或CPU核心20中。
      在步驟S44中,CPU核心20控制啟動ROM 21的加密處理單元21a,利用通用密鑰,根據(jù)存儲在加密處理單元21a中的解密算法,讀出并加密該存儲在RAM 23或CPU核心20中的2KB的固件數(shù)據(jù)。
      在步驟S45中,CPU核心20將該加密的2KB固件數(shù)據(jù)轉(zhuǎn)移到用于存儲的緩沖存儲器8中。
      在步驟S46中,CPU核心20檢測存儲在閃存ROM 22中的固件數(shù)據(jù)是否已經(jīng)全部被讀出。如果全部固件數(shù)據(jù)都已經(jīng)被讀出,則CPU核心20執(zhí)行步驟S47,如果沒有全部讀出固件數(shù)據(jù),則CPU核心執(zhí)行步驟S42。
      在步驟S47中,如果存儲在閃存ROM 22中的固件數(shù)據(jù)全部都被讀出并加密存儲在緩沖存儲器8中,則CPU核心20將存儲在緩沖存儲器8中的加密后的固件數(shù)據(jù)轉(zhuǎn)移到PC 10。
      該加密狀態(tài)的已經(jīng)被轉(zhuǎn)移的加密固件數(shù)據(jù)在PC單元中與原始數(shù)據(jù)相比較,以檢測一致性。
      以這種方式,PC 10可以檢驗固件是否已經(jīng)在DVD-ROM驅(qū)動器的閃存ROM 22中可靠的更新。由于該固件在CPU 9中被加密,且以此狀態(tài)傳輸?shù)絇C 10,因此該純文本固件不可能在傳輸路線的中途中獲得,從而可能防止該固件被分析或篡改。
      在DVD-ROM驅(qū)動器的CPU 9中,如圖1所示,存儲在啟動ROM 21中的解密算法的程序?qū)υ摷用芎蟮墓碳?shù)據(jù)解密??蛇x擇的是,如圖7所示,可通過重新構(gòu)造CPU 9,將該加密處理單元作為程序形成在作為通用密鑰加密處理單元32的硬件中。
      該具有通用密鑰加密處理單元32的CPU 9執(zhí)行高速加密處理,從而可更快的更新該固件。由于與結(jié)合圖3、4說明的操作相類似,因此這里的更新處理不再說明。
      在上述說明中,從CPU 10輸出的加密后的固件由CPU 9自身進(jìn)行解密,并上載到CPU 9中的閃存ROM 22中。該CPU 9包括作為解密該加密后固件的加密處理單元的啟動ROM 21。
      以這種方式,用于解密該加密后固件的加密處理單元,例如CPU 9的啟動ROM 21,可以被加載入圖1中所示的DVD解碼器7中。將該DVD解碼器7定制為例如加載入該加密處理單元更為實際。
      下面說明圖8中第二實施例所示的包括DVD解碼器和一用于解密該加密后固件的解密單元17的DVD-ROM驅(qū)動器。
      如圖8所示,DVD-ROM驅(qū)動器中的DVD解碼器207由圖1所示的DVD解碼器7組成,一用于解密PC 10輸入的加密后固件的解密單元217和一用于在PC 10檢驗純文本固件中加密存儲在閃存ROM 28中的純文本固件的加密單元218與之相連。DVD-ROM驅(qū)動器在其它方面與圖1所示DVD-ROM驅(qū)動器相同。
      該解碼器217和加密單元218可以分析利用一稱為密鑰流(偽隨機(jī)數(shù)字)的隨機(jī)數(shù)字作為加密密鑰來加密純文本的數(shù)據(jù)流加密程序,該加密程序是一種通用密鑰加密技術(shù)。數(shù)據(jù)流加密系統(tǒng)的加密和解密是以一個很小的數(shù)據(jù)塊為單位順序執(zhí)行的,該單位可為例如每位或每幾個位,例如每一個字節(jié)。
      如果用于執(zhí)行數(shù)據(jù)流加密,如圖9所示,該解碼器217包括一SEED數(shù)據(jù)存儲單元217a,一隨機(jī)數(shù)字產(chǎn)生單元217b和一異或單元217c。
      該SEED數(shù)據(jù)存儲單元217a已經(jīng)存儲有SEED數(shù)據(jù),該數(shù)據(jù)為隨機(jī)數(shù)字產(chǎn)生單元217b的初始輸入值,該數(shù)據(jù)對應(yīng)于通用密鑰,SEED數(shù)據(jù)存儲單元根據(jù)CPU核心36的命令將該存儲的SEED數(shù)據(jù)輸出到隨機(jī)數(shù)字產(chǎn)生單元217b。
      該存儲在SEED數(shù)據(jù)存儲單元217a中的SEED數(shù)據(jù)可為一預(yù)存儲的固定值,或可由CPU核心36選擇性的設(shè)定。
      該隨機(jī)數(shù)字產(chǎn)生單元217b響應(yīng)于SEED數(shù)據(jù)存儲單元217a的SEED數(shù)據(jù)輸入,根據(jù)預(yù)定的算法產(chǎn)生隨機(jī)數(shù)字,并將該產(chǎn)生的隨機(jī)數(shù)字輸出到異或單元217c。
      該異或單元217c利用解密該固件數(shù)據(jù)的方法,將從緩沖存儲器8中讀出的加密后的固件數(shù)據(jù)以一預(yù)定數(shù)據(jù)長度為單位進(jìn)行異或處理,并對隨機(jī)數(shù)字產(chǎn)生單元217b輸出的隨機(jī)數(shù)字進(jìn)行異或處理,并將解密后的純文本固件數(shù)據(jù)輸出到CPU 35中的閃存ROM 38中。
      如果用于執(zhí)行數(shù)據(jù)流加密,則如圖10所示,該加密單元218包括一SEED數(shù)據(jù)存儲單元218a,一隨機(jī)數(shù)字產(chǎn)生單元218b和一異或單元218c。
      該SEED數(shù)據(jù)存儲單元218a已經(jīng)存儲有SEED數(shù)據(jù),該數(shù)據(jù)為隨機(jī)數(shù)產(chǎn)生單元218b的初始輸入值,該數(shù)據(jù)對應(yīng)于通用密鑰,SEED數(shù)據(jù)存儲單元根據(jù)CPU核心36的命令將該存儲的SEED數(shù)據(jù)輸出到隨機(jī)數(shù)字產(chǎn)生單元218b。
      該存儲在SEED數(shù)據(jù)存儲單元218a中的SEED數(shù)據(jù)可為一預(yù)存儲的固定值,或可由CPU核心36選擇性的設(shè)定。
      同時,由SEED數(shù)據(jù)存儲單元218a輸入到隨機(jī)數(shù)字產(chǎn)生單元218b的SEED數(shù)據(jù)與由SEED數(shù)據(jù)存儲單元217a輸入到解碼器217的隨機(jī)數(shù)字產(chǎn)生單元217b中的SEED數(shù)據(jù)相同。
      該隨機(jī)數(shù)字產(chǎn)生單元218b響應(yīng)于SEED數(shù)據(jù)存儲單元218a的SEED數(shù)據(jù)輸入,根據(jù)預(yù)定的算法產(chǎn)生隨機(jī)數(shù)字,并將該產(chǎn)生的隨機(jī)數(shù)字輸出到異或單元218c。
      隨機(jī)數(shù)字產(chǎn)生單元218b中使用的算法與解碼器217的隨機(jī)數(shù)字產(chǎn)生單元217b中產(chǎn)生隨機(jī)數(shù)字的算法相同。
      該異或單元218c利用加密該固件數(shù)據(jù)的方法,將從閃存ROM 38中以一預(yù)定數(shù)據(jù)長度為單位讀出的純文本的固件數(shù)據(jù)和隨機(jī)數(shù)字產(chǎn)生單元218b輸出的隨機(jī)數(shù)字進(jìn)行異或處理,并將加密后的純文本固件數(shù)據(jù)輸出到緩沖存儲器8中。
      該CPU 35包括一CPU核心36、一RAM 37和一閃存ROM 38。該CPU35通過一CPU I/F 216與DVD解碼器207連接。
      該CPU核心36與圖1所示的CPU核心20相似,表示CPU 35的核心部分,包括一算術(shù)邏輯電路、一加法器或一寄存器,用于執(zhí)行算術(shù)運算或比較判斷。
      該RAM 37與圖1所示的RAM 23相似,為例如一SRAM(靜態(tài)隨機(jī)存取存儲器),不需要刷新操作以保持存儲的內(nèi)容,其存取速度很快。該RAM 37表示當(dāng)更新存儲在閃存ROM 38中的固件時展開數(shù)據(jù)和更新程序的區(qū)域。
      該閃存ROM 38為所謂的閃存存儲器,例如EEPROM,是可電擦除可編程ROM。該閃存ROM 38與圖1所示的閃存ROM 22相似,其中存儲有一固件,該固件是一個用于對DVD-ROM驅(qū)動器施加再現(xiàn)限制的程序。
      DVD解碼器207的解密單元217解密的純文本固件數(shù)據(jù)通過CPU I/F 216輸出到CPU 35中的閃存ROM 38中。
      該閃存ROM 38與圖1所示的DVD-ROM驅(qū)動器的CPU 9中的閃存ROM22相似,可為MRAM,使用一TMR裝置。
      在圖8所示的DVD-ROM驅(qū)動器中,DVD解碼器207解碼的純文本固件數(shù)據(jù)以純文本狀態(tài)被傳輸?shù)紺PU 35。因此,在傳輸過程中風(fēng)險很大,也就是按照此配線,純文本固件數(shù)據(jù)可被偷看。
      這樣,需要在CPU 35和DVD解碼器207之間提供作為多層基片的內(nèi)層的流過該純文本固件數(shù)據(jù)的配線,或需要將半導(dǎo)體包裝設(shè)計為沒有針狀突出的球狀柵格陣列。
      同時,不同于DVD-ROM驅(qū)動器的CPU 35和DVD解碼器207的功能單元與圖1所示的DVD-ROM驅(qū)動器上的功能單元相同,因此不再贅述。
      現(xiàn)在利用圖11和12的流程圖,說明更新存儲在閃存ROM 38中的固件的操作。首先,利用圖11所示的流程圖,說明直到將更新函數(shù)讀入RAM 37的操作。
      在步驟S101中,CPU核心36檢查從PC 10發(fā)出并被接收的命令是否為一寫入緩沖命令。如果該命令是寫入緩沖命令,則CPU核心執(zhí)行步驟S102,如果該命令不是寫入緩沖命令,則CPU核心36執(zhí)行步驟S103。
      在步驟S102中,CPU核心36檢查指令更新存儲在閃存ROM 38中的固件的參數(shù)是否已經(jīng)被加入到PC 10發(fā)來的寫入緩沖命令中。如果該參數(shù)沒有加入到該命令中,則CPU核心36執(zhí)行步驟S103,如果該參數(shù)已經(jīng)加入到命令中,則CPU核心36執(zhí)行步驟S104。
      在步驟S103中,CPU核心36響應(yīng)于PC 10的命令不是寫入緩沖命令以執(zhí)行該已發(fā)送的命令。該CPU核心36還響應(yīng)于PC 10發(fā)出的命令是寫入緩沖命令,但是固件更新指令參數(shù)沒有加入該命令,而執(zhí)行對寫入數(shù)據(jù)而不是緩沖存儲器8中的從PC 10發(fā)送來的固件進(jìn)行控制。當(dāng)步驟103的處理結(jié)束時,CPU核心36回到步驟S101。
      當(dāng)將寫入緩沖命令發(fā)送到DVD-ROM驅(qū)動器后,PC 10將對應(yīng)于用于更新的固件的根據(jù)數(shù)據(jù)流加密系統(tǒng)被加密的二進(jìn)制文件形式的用于更新的加密后的固件數(shù)據(jù)發(fā)送到DVD-ROM驅(qū)動器中。
      在步驟S104中,CPU核心36響應(yīng)于寫入緩沖命令的接收,從地址N開始獲取緩沖存儲器8的數(shù)據(jù)存儲區(qū)域的一個M字節(jié)的區(qū)域,M為自然數(shù),從而將PC 10發(fā)送來的二進(jìn)制文件存儲在該獲取的數(shù)據(jù)存儲區(qū)域中。
      在步驟S105中,CPU核心36確認(rèn)傳輸?shù)亩M(jìn)制文件的校驗和。該校驗和數(shù)據(jù)加入到該傳輸?shù)亩M(jìn)制文件中。CPU核心36將該加入的校驗和數(shù)據(jù)與傳輸?shù)亩M(jìn)制文件的二進(jìn)制數(shù)據(jù)的總和值進(jìn)行比較,如果二者相同,則假定二進(jìn)制文件已經(jīng)被正確的傳輸。該CPU核心36然后執(zhí)行步驟S107。如果二者不同,則假定二進(jìn)制文件的傳輸失敗,CPU核心36執(zhí)行步驟S106。
      在步驟S106中,CPU核心36通知PC 10該二進(jìn)制文件沒有被正確的傳輸,然后轉(zhuǎn)到步驟S101,該情況可通過終止校驗條件狀態(tài)的命令,由校驗和數(shù)據(jù)的檢驗結(jié)果證明。
      在步驟S107中,CPU核心36可將更新存儲在閃存ROM 38中的閃存ROM 38的固件的更新函數(shù)復(fù)制到RAM 37中,從而可在RAM 37執(zhí)行CPU核心36的程序。
      該CPU核心36然后清除存儲在閃存ROM 38的固件存儲區(qū)域中的數(shù)據(jù),該數(shù)據(jù)為預(yù)更新固件。同時,如果該閃存ROM 38為可重寫的MRAM,則該清除操作可省略。
      利用圖12的流程圖,說明更新函數(shù)的處理操作。
      在步驟S111中,CPU核心36訪問存儲在RAM 37中的更新函數(shù)的引導(dǎo)地址,從而利用該更新函數(shù)開始將該固件更新到該固件的閃存ROM 38中。
      在步驟S112中,CPU核心36控制一未示出的中斷控制電路,禁止中斷程序整體上的執(zhí)行,以及禁止其異常處理的執(zhí)行。
      在步驟S113中,CPU核心36啟動未示出的寫入計時控制計時器,該計時器控制閃存ROM 38的寫入計時。然后,在寫入計時控制計時器的計時控制下,執(zhí)行在閃存ROM 38中寫入數(shù)據(jù)。
      在步驟S114中,CPU核心36訪問存儲有加密的固件數(shù)據(jù)的緩沖存儲器8中的地址數(shù)N,以及存儲有固件的閃存ROM 38的地址數(shù)0。
      在步驟S115中,CPU核心36以一個便于解碼的數(shù)據(jù)量為單位,例如每個字節(jié),從緩沖存儲器8的地址數(shù)N開始讀出數(shù)據(jù),并在解密單元17中將這些數(shù)據(jù)解密為純文本。該CPU核心36使解密后的純文本固件數(shù)據(jù)存儲在CPU核心36中的寄存器中或RAM 37中。
      該CPU核心36讀出存儲在CPU核心36的寄存器或RAM 37中的固件數(shù)據(jù),將讀出的數(shù)據(jù)從閃存ROM 38的地址數(shù)0開始寫入到閃存ROM 38中。
      在步驟S116中,CPU核心36檢查固件數(shù)據(jù)是否已經(jīng)整體上寫入到閃存ROM 38中。如果地址數(shù)不是M,則CPU核心36執(zhí)行步驟S117,如果地址數(shù)為M,則CPU核心36執(zhí)行步驟S118。
      在步驟S117中,CPU核心36訪問緩沖存儲器8的地址數(shù)加一個字節(jié)所得的地址和閃存ROM 38的地址數(shù)加一個字節(jié)所得的地址。當(dāng)該步驟結(jié)束時,CPU核心20轉(zhuǎn)向步驟S115,從緩沖存儲器8的可訪問的地址數(shù)中讀出加密后的固件數(shù)據(jù),同時將該解密后的純文本固件數(shù)據(jù)寫入到閃存ROM 38中的可訪問地址數(shù)中。
      在步驟S118中,CPU核心36停止控制閃存ROM38的寫入計時的寫入計時控制計時器。
      在步驟S119中,由于步驟S116中判斷結(jié)果為存儲在閃存ROM 38中的固件數(shù)據(jù)的最后地址數(shù)為M,M為自然數(shù),以及由于步驟S118中寫入計時控制計時器25被停止,因此閃存ROM 38中的固件更新完成。從而完成了閃存ROM 38的固件更新。
      因此,在圖8所示的本發(fā)明的DVD-ROM驅(qū)動器中,當(dāng)更新存儲在閃存ROM 38中的固件時,根據(jù)PC 10中的數(shù)據(jù)流加密系統(tǒng)加密的固件數(shù)據(jù)在DVD解碼器207中的解碼器217中解密,并被寫入到CPU 35中的閃存ROM 38中。
      在DVD解碼器207和CPU 35之間的數(shù)據(jù)交換中,傳輸純文本固件數(shù)據(jù)。此時,可利用安裝級別方法防止固件數(shù)據(jù)的泄漏,例如不允許半導(dǎo)體包裝接線端部分外露或適當(dāng)?shù)牟季€。
      現(xiàn)在利用圖13所示的流程圖說明PC 10檢驗更新閃存ROM 38的固件的結(jié)果的處理。
      在步驟S121中,檢查PC 10發(fā)出并被接收的命令是否為讀緩沖命令。如果該命令不是讀緩沖命令,則CPU核心執(zhí)行步驟S123,如果該命令是讀緩沖命令,則CPU核心36執(zhí)行步驟S122.
      在步驟S122中,CPU核心36檢測指令讀出存儲在閃存ROM 38中的固件的參數(shù)是否已經(jīng)被加入到PC 10發(fā)出的讀緩沖命令中。如果該參數(shù)沒有被加入,則CPU核心執(zhí)行步驟S123,如果該參數(shù)已經(jīng)被加入,則CPU核心36執(zhí)行步驟S124。
      在步驟S123中,CPU核心36響應(yīng)于PC 10不是讀緩沖命令的命令而執(zhí)行傳輸?shù)拿?。該CPU核心36還響應(yīng)于傳輸?shù)拿顬樽x緩沖命令但該固件更新指令參數(shù)沒有加入到該命令中,而控制從緩沖存儲器8中讀出不是固件的數(shù)據(jù)。當(dāng)步驟S123的處理結(jié)束時,該處理完成。
      當(dāng)將讀緩沖命令傳送到DVD-ROM驅(qū)動器后,PC 10將二進(jìn)制文件的加密后的固件數(shù)據(jù)發(fā)送到DVD-ROM驅(qū)動器,該加密后的固件數(shù)據(jù)為用于更新的固件數(shù)據(jù),根據(jù)數(shù)據(jù)流加密系統(tǒng)加密。
      在步驟S124中,CPU核心36訪問緩沖存儲器8的地址數(shù)N和固件存儲的閃存ROM 38的地址數(shù)0。
      在步驟S125中,CPU核心36以一個便于解碼的數(shù)據(jù)量為單位,例如每個字節(jié),從用于存儲的閃存ROM 38中的地址數(shù)0開始讀出數(shù)據(jù),并存儲在CPU核心36的寄存器或RAM 37中。
      該CPU核心36讀出存儲在CPU核心36的寄存器或RAM 37中的純文本固件數(shù)據(jù),并在DVD解碼器207的加密單元218中將該讀出的數(shù)據(jù)加密為加密后的固件數(shù)據(jù)。該CPU核心36將該加密后的固件數(shù)據(jù)寫入到從緩沖存儲器8的地址數(shù)N開始的區(qū)域中。
      在步驟S126中,CPU核心36檢驗固件數(shù)據(jù)是否已經(jīng)全部從閃存ROM 38中讀出。如果地址數(shù)不是M,則CPU核心36執(zhí)行步驟S127,如果地址數(shù)為M,則CPU核心36執(zhí)行步驟S128。
      在步驟S127中,CPU核心36訪問緩沖存儲器8的地址數(shù)加一個字節(jié)所得的地址和閃存ROM 38的地址數(shù)加一個字節(jié)所得的地址。當(dāng)該步驟結(jié)束時,CPU核心36執(zhí)行步驟S125,從閃存ROM 38的可訪問的地址數(shù)開始讀出固件數(shù)據(jù),將該加密后的固件數(shù)據(jù)寫入到緩沖存儲器8中的可訪問地址數(shù)中。
      在步驟S128中,CPU核心36響應(yīng)于已經(jīng)從閃存ROM 38中讀出并存儲在緩沖存儲器8中的全部固件數(shù)據(jù),將該存儲在緩沖存儲器8中的加密后的固件數(shù)據(jù)傳送到PC 10。
      該被傳輸?shù)募用芎蟮墓碳?shù)據(jù)在加密狀態(tài)下與PC 10的原始數(shù)據(jù)比較,以檢查二者是否相同。
      這樣,PC 10可以檢查固件是否已在DVD-ROM驅(qū)動器的閃存ROM 38中被可靠的更新。
      在DVD解碼器207和CPU 35之間的數(shù)據(jù)交換中,傳輸純文本固件數(shù)據(jù)。此時,可利用安裝級別方法防止固件數(shù)據(jù)的泄漏,例如不允許半導(dǎo)體包裝接線端部分外露或適當(dāng)?shù)牟季€。
      應(yīng)當(dāng)注意,通常在例如PC(個人計算機(jī))上執(zhí)行的程序存儲在輔助的存儲裝置,如硬盤(HD)中,并在PC工作時被載入主內(nèi)存裝置,例如RAM(隨機(jī)存取存儲器)中。CPU讀出載入主內(nèi)存裝置中的程序以執(zhí)行該程序。
      因此,當(dāng)CPU執(zhí)行的程序被載入主內(nèi)存裝置時,可使用駐留在CPU核心中的IPL(初始程序加載器)或從HD初始化讀入。
      在參照圖1的第一實施例的DVD-ROM驅(qū)動器和參照圖8的第二實施例的DVD-ROM中,存在DVD解碼器中由CPU的情況。此時,DVD解碼器上的該CPU的操作與上述的PC相似,從而將存儲在外部存儲裝置中的程序讀到RAM中,執(zhí)行該讀出到RAM中的程序,以執(zhí)行預(yù)定的處理,例如DVD解碼。
      因此,存儲在外部存儲裝置中的程序當(dāng)讀出到DVD解碼器中的RAM中時,易于被偷看,從而引起程序分析或篡改,因此該程序需要以加密的狀態(tài)存儲。
      在下面的說明中,DVD解碼器上的CPU執(zhí)行的程序稱為微程序,該加密狀態(tài)的微程序數(shù)據(jù)稱為加密的微程序數(shù)據(jù)。
      圖14所示的第三實施例的DVD-ROM驅(qū)動器包括一對應(yīng)于圖1所示的DVD解碼器7的DVD解碼器307,該解碼器307具有一CPU核心341、一SRAM 342和一解碼器343。該DVD-ROM驅(qū)動器在其它方面與圖1所示的DVD-ROM驅(qū)動器的結(jié)構(gòu)相同。該內(nèi)部核心341、SRAM 342和解碼器343通過內(nèi)部總線與存儲器控制器314和CPU I/F 316連接。圖14所示的DVD-ROM驅(qū)動器包括一外部CPU 45、一閃存ROM 46,其中存儲有將被讀入到DVD解碼器307中的加密的微程序數(shù)據(jù)。
      該內(nèi)部CPU核心341為一用于控制DVD解碼器307的微控制器。該內(nèi)部CPU核心341存儲有IPL,該IPL是一程序,用于允許內(nèi)部CPU核心執(zhí)行的微程序被讀入到SRAM 342中。該IPL在DVD-ROM驅(qū)動器加電時啟動。
      該SRAM 342為內(nèi)部CPU核心341的主存儲裝置,其中存儲有內(nèi)部CPU核心341執(zhí)行的微程序數(shù)據(jù)。在SRAM 342中,IPL從閃存ROM 46中讀出的加密的微程序數(shù)據(jù)由解碼器343解碼并存儲。
      該解碼器343為一解碼電路,用于解碼加密存儲在閃存ROM 46中的微程序數(shù)據(jù)(加密的微程序數(shù)據(jù)),將該解密的數(shù)據(jù)傳輸?shù)絊RAM 342的程序區(qū)域中。該解碼器343對根據(jù)通用密鑰加密系統(tǒng)(塊加密或數(shù)據(jù)流加密系統(tǒng))加密的微程序數(shù)據(jù)解碼。
      當(dāng)使用數(shù)據(jù)流加密時,如圖15所示,該解碼器343包括一SEED數(shù)據(jù)存儲單元343a、一隨機(jī)數(shù)字產(chǎn)生單元343b和一異或單元343c。
      該SEED數(shù)據(jù)存儲單元343a已經(jīng)存儲有SEED數(shù)據(jù),該數(shù)據(jù)為隨機(jī)數(shù)字產(chǎn)生單元343b的初始輸入值,該數(shù)據(jù)對應(yīng)于通用密鑰,SEED數(shù)據(jù)存儲單元根據(jù)內(nèi)部CPU核心341的命令將該存儲的SEED數(shù)據(jù)輸出到隨機(jī)數(shù)字產(chǎn)生單元343b。
      該存儲在SEED數(shù)據(jù)存儲單元343a中的SEED數(shù)據(jù)可為一預(yù)存儲的固定值,或可由內(nèi)部CPU核心341選擇性地設(shè)定。
      該隨機(jī)數(shù)字產(chǎn)生單元343b響應(yīng)于自SEED數(shù)據(jù)存儲單元343a的SEED數(shù)據(jù)輸入,根據(jù)預(yù)定的算法產(chǎn)生隨機(jī)數(shù)字,并將該產(chǎn)生的隨機(jī)數(shù)字輸出到異或單元343c。
      異或單元343c利用解密微程序數(shù)據(jù)的方法,將以一預(yù)定數(shù)據(jù)長度為單位從閃存ROM 46中讀出的加密的微程序數(shù)據(jù)與從隨機(jī)數(shù)字產(chǎn)生單元343b輸出的隨機(jī)數(shù)字進(jìn)行異或處理,并將解密后的純文本微程序數(shù)據(jù)通過內(nèi)部CPU總線輸出到DVD解碼器307中的SRAM 342中。
      DVD解碼器307的CPU I/F 316還具有保護(hù)功能,使得存儲在DVD解碼器307的SRAM 342中的微程序數(shù)據(jù)、存儲在解碼器343的SEED數(shù)據(jù)存儲單元343a中的SEED數(shù)據(jù)或隨機(jī)數(shù)字產(chǎn)生單元343b的隨機(jī)數(shù)字產(chǎn)生算法不能由用戶級查閱。從而對取出解密后的純文本微程序數(shù)據(jù)或解密加密后的微程序數(shù)據(jù)的解密函數(shù)進(jìn)行限制。
      該外部CPU 45為全面控制DVD-ROM驅(qū)動器的控制器,包括一算術(shù)邏輯電路、一加法器或一寄存器,用于執(zhí)行算術(shù)運算或比較判斷。
      閃存ROM 46為所謂的閃存存儲器,例如可電擦除可編程ROM的EEPROM。該閃存ROM 46中存儲有加密后的微程序數(shù)據(jù),該數(shù)據(jù)為內(nèi)部CPU核心341的加密后的程序。
      下面利用圖16的流程圖說明圖14中表示的啟動DVD-ROM驅(qū)動器的操作。
      在步驟S131中,駐留在內(nèi)部CPU核心341中的IPL在電源加電或復(fù)位時啟動。與IPL的啟動同時發(fā)生的是,接收到SEED數(shù)據(jù)的隨機(jī)數(shù)字產(chǎn)生單元343b對解碼器343初始化。
      在步驟S132中,通過在內(nèi)部CPU核心341上執(zhí)行IPL,從閃存ROM 46的引導(dǎo)地址開始,讀出存儲在閃存ROM 46中的加密后的微程序數(shù)據(jù)。該加密后的微程序數(shù)據(jù)在讀出時被輸入到解碼器343中,并與隨機(jī)數(shù)字產(chǎn)生單元343b的輸出數(shù)據(jù)進(jìn)行異或,從而被解碼為純文本微程序數(shù)據(jù)。該解碼后的微程序數(shù)據(jù)被寫入到SRAM 342中。
      在步驟S133中,通過內(nèi)部CPU核心341上執(zhí)行的IPL檢驗是否已經(jīng)讀出存儲在閃存ROM 46中的被加密的微程序數(shù)據(jù)的預(yù)定量。當(dāng)已經(jīng)讀出加密后微程序數(shù)據(jù)的預(yù)定量時,該內(nèi)部CPU核心341執(zhí)行步驟S134。當(dāng)沒有讀出加密后微程序數(shù)據(jù)的預(yù)定量時,執(zhí)行自閃存ROM 46的讀出,在解碼器343中的解密和在SRAM 342中的寫入。
      如果在步驟S134中,利用內(nèi)部CPU核心341上執(zhí)行IPL從閃存ROM 46中的讀出已經(jīng)結(jié)束時,內(nèi)部CPU核心341將純文本微程序數(shù)據(jù)寫入到SRAM342中,結(jié)束的程序計數(shù)器的值作為SRAM 342的引導(dǎo)地址。
      因此,當(dāng)圖14所示的DVD-ROM驅(qū)動器被啟動時,存儲在閃存ROM 46中的加密的微程序數(shù)據(jù),可由IPL讀出,在DVD解碼器307中解密,并寫入到SRAM 342中。因此,通過由DVD解碼器307的內(nèi)部CPU核心341執(zhí)行的該微程序,由于在DVD解碼器307中執(zhí)行解密,因此可以防止程序分析或篡改。
      因此,在更新DVD-ROM驅(qū)動器的固件時,該固件被加密并從PC 10傳送到DVD-ROM驅(qū)動器,在圖1所示的CPU 9或圖8所示的DVD解碼器207中被解密,以便在CPU中的閃存ROM中被更新,從而防止了在更新過程中被分析和篡改??蛇x擇的是,在啟動如圖14所示的DVD-ROM驅(qū)動器時將載入的程序以加密的狀態(tài)讀出到解碼電路中,并在該電路中解密,從而防止在加載過程中程序被分析和篡改。
      同時,在圖14所示的DVD-ROM驅(qū)動器中,通過總線從與DVD解碼器307連接的閃存ROM 46提供存儲在SRAM 342中的微程序。該微程序可以例如為一只讀存儲器(ROM)、一盤形記錄介質(zhì)或一可移動半導(dǎo)體存儲器。
      在圖14所示的DVD-ROM驅(qū)動器中,通過解密單元343從閃存ROM 46將微程序讀出到SRAM 342的處理可由封裝在DVD解碼器307中的內(nèi)部CPU核心341上的IPL來執(zhí)行??蛇x擇的是,該處理可在DVD解碼器307外部的CPU的控制下執(zhí)行,例如通過外部CPU 45。
      但是,可以預(yù)期,如果可以禁止加密程序解密后的程序泄漏,則加密的程序可被篡改。
      例如,如果在圖1所示的DVD-ROM驅(qū)動器中,加密的固件被篡改,則被篡改的數(shù)據(jù)存儲在閃存ROM 22中,從而可能引起非法內(nèi)容復(fù)制或驅(qū)動故障。
      為了克服這種問題,可采取這樣的技術(shù),在將要更新的程序主體上加入用于檢驗程序篡改事實的程序,將該產(chǎn)生的程序主體發(fā)送到DVD-ROM驅(qū)動器。該檢驗程序被加入到將被更新的程序主體上,DVD-ROM驅(qū)動器執(zhí)行該更新的程序,該加在該程序主體上的檢驗程序首先啟動以判斷該更新的程序是否已經(jīng)被篡改。
      利用圖17-19所示的流程圖,說明禁止加密的數(shù)據(jù)被篡改的程序的更新操作。應(yīng)當(dāng)注意圖8所示的DVD-ROM驅(qū)動器用作程序更新驅(qū)動器只是為了說明。
      首先,利用圖17所示的流程圖,一直說明到具有附加的檢驗程序的程序主體運行到DVD-ROM驅(qū)動時的操作。
      在步驟S141中,用于傳送到DVD-ROM驅(qū)動器的程序由例如驅(qū)動器制造商預(yù)先準(zhǔn)備。在該準(zhǔn)備的程序主體上附加上述用于檢驗程序篡改的檢驗程序。
      在步驟S142,驅(qū)動器制造商由一個程序產(chǎn)生檢驗數(shù)據(jù),該程序被分配為其上附加有該已產(chǎn)生的檢驗數(shù)據(jù),如圖20所示。
      此檢驗數(shù)據(jù)是利用散列函數(shù)通過執(zhí)行對該程序主體的處理而得到的一個散列值。例如,標(biāo)準(zhǔn)化組織NIST所提供的,屬于US商業(yè)部的,由SHA進(jìn)一步改進(jìn)的SHA(安全散列算法)-1,也可以被作為此散列函數(shù)使用,如圖21所示。此SHA-1是一種用于根據(jù)小于264的數(shù)據(jù)長度而產(chǎn)生160比特長度的散列值(檢驗數(shù)據(jù))的算法。
      在步驟S143,驅(qū)動器制造商對加上了檢驗數(shù)據(jù)的程序進(jìn)行加密,以包含該檢驗數(shù)據(jù),如圖22所示。
      在步驟S144,驅(qū)動器制造商根據(jù)加密的程序計算校驗和數(shù)據(jù),以附加這樣計算的校驗和數(shù)據(jù),如圖23所示。該附加數(shù)據(jù)也可以是由散列函數(shù)建立的散列值,來代替校驗和數(shù)據(jù)。這樣加上了校驗和數(shù)據(jù)的程序就變成了允許傳送的數(shù)據(jù)。
      該允許傳送的數(shù)據(jù),利用例如ROM介質(zhì),被發(fā)送至用戶(PC 10)。
      在步驟S145,PC 10向DVD-ROM驅(qū)動器傳送現(xiàn)在允許傳輸?shù)臄?shù)據(jù)(程序)。
      利用圖18所示的流程圖,可以說明DVD-ROM驅(qū)動器接收該程序的操作,其中采取了防止傳送到PC 10的加密數(shù)據(jù)被篡改的措施。
      在步驟S151,在接收到同寫緩沖命令一起從PC 10傳送來的程序之后,DVD-ROM驅(qū)動器比較該程序附加的校驗和數(shù)據(jù),和傳送的加密程序數(shù)據(jù)的和值。若兩個值相互不一致,則DVD-ROM驅(qū)動器進(jìn)行到步驟S152,否則,DVD-ROM驅(qū)動器進(jìn)行到步驟S153。
      在步驟S152,DVD-ROM驅(qū)動器,通過終止校驗條件狀態(tài)的命令,通知PC 10加密的程序數(shù)據(jù)未被正確傳送的事實,如同校驗和數(shù)據(jù)的比較結(jié)果所示。然后DVD-ROM驅(qū)動器返回步驟S151。
      在步驟S153,解密單元17對加密的微程序數(shù)據(jù)進(jìn)行解密。該檢驗數(shù)據(jù)被附加在解密的數(shù)據(jù)上,同時該檢驗程序位于該程序主體上。
      在步驟S154中,被解密的程序數(shù)據(jù)被存儲在閃存ROM 38中。
      在步驟S155中,當(dāng)啟動存儲在閃存ROM 38中的程序時,首先執(zhí)行該檢驗程序。
      利用圖19所示出的流程圖,可說明檢驗程序的操作。
      在步驟S161,啟動的檢驗程序通過散列函數(shù)計算程序主體的散列值。
      在步驟S162,檢驗程序比較程序主體所附加的檢驗數(shù)據(jù)和所計算的散列值。若兩個值相互一致,則檢驗程序進(jìn)行到步驟S163。若兩個值相互不一致,則檢驗程序進(jìn)行到步驟S164。
      在步驟S163,響應(yīng)于存儲在閃存ROM 38中的程序未被篡改的判斷,即附加的檢驗數(shù)據(jù)與計算的散列值相一致,DVD-ROM驅(qū)動器執(zhí)行存儲在閃存ROM 38中的程序主體。
      在步驟S164,響應(yīng)于存儲在閃存ROM 38中的程序被篡改的判斷,即附加的檢驗數(shù)據(jù)與計算的散列值不一致,DVD-ROM驅(qū)動器進(jìn)入一種未就緒狀態(tài),或處于一種穩(wěn)定的非操作狀態(tài)。
      通過對被傳送的程序主體附加通過散列函數(shù)計算的檢驗數(shù)據(jù),并傳送由此得到的程序主體,即使在加密的數(shù)據(jù)本身已被篡改的情況下,DVD-ROM驅(qū)動器也能夠檢驗篡改事實。
      在根據(jù)本發(fā)明的上述第一和第二實施例的DVD-ROM驅(qū)動器中,將被更新的固件被傳送至PC 10。可選擇的是,該固件可以被記錄在例如DVD-ROM驅(qū)動器上可再現(xiàn)的DVD-ROM 1上。通過在DVD-ROM 1中存儲該加密的固件數(shù)據(jù)作為一個文件,DVD-ROM驅(qū)動器能夠再現(xiàn)此DVD-ROM 1,以獲得將被更新的固件。
      在類似的方式中,根據(jù)本發(fā)明第三實施例的DVD-ROM驅(qū)動器,記錄有作為一個文件的加密微程序數(shù)據(jù)的DVD-ROM 1可以被再現(xiàn)以加載該微程序。
      同時,在更新被寫入DVD-ROM驅(qū)動器的啟動ROM 21中的固件時所啟動的程序,如本發(fā)明第一實施例所示,可以被寫入在DVD-ROM1中。該固件可以被再現(xiàn)DVD-ROM 1的DVD-ROM驅(qū)動器所更新。
      在類似的方式中,根據(jù)本發(fā)明的第二實施例,在更新DVD-ROM驅(qū)動器上的固件時被啟動的程序,可以被寫入在DVD-ROM 1中。該固件可以被再現(xiàn)上述DVD-ROM 1的DVD-ROM驅(qū)動器所更新。
      在類似的方式中,根據(jù)本發(fā)明的第三實施例,在對DVD-ROM驅(qū)動器上加載微程序時啟動的程序,可以被寫入DVD-ROM 1中。該微程序可以被再現(xiàn)上述DVD-ROM 1的DVD-ROM驅(qū)動器所加載。
      并且,在DVD-ROM驅(qū)動器中,如本發(fā)明的第一或第二實施例所示,可以提供一個與半導(dǎo)體存儲器,例如存儲棒(注冊商標(biāo)),相關(guān)的,用于半導(dǎo)體存儲器的槽,并且加密的固件數(shù)據(jù)可以被記錄在代替DVD-ROM 1的該半導(dǎo)體存儲器中,以更新該固件。
      在類似的方式中,根據(jù)本發(fā)明的第三實施例的DVD-ROM驅(qū)動器中,加密的微程序數(shù)據(jù)可以被記錄在可移動半導(dǎo)體存儲器中以加載該微程序。
      在根據(jù)本發(fā)明的第一至第三實施例中,使用了DVD-ROM驅(qū)動器。但本發(fā)明并不局限于這種結(jié)構(gòu),而是可以應(yīng)用于能夠記錄和/或再現(xiàn)其上記錄有數(shù)據(jù)的CD-ROM,CD-R,CD-RW,DVD-RAM,DVD-R/RW或DVD+R/RW的任何光盤裝置。
      雖然在本發(fā)明的第一至第三實施例中,使用了DVD-ROM驅(qū)動器,但本發(fā)明并不局限于這種結(jié)構(gòu),而是可以應(yīng)用于通常需要某種或其他安全性的任何處理裝置。
      雖然使用一個共同密鑰的加密技術(shù)被作為用于加密或解密該固件或微程序的一種技術(shù),但本發(fā)明并不局限于這種方法。例如,公共密鑰系統(tǒng)或其他加密算法都可被使用。
      并且,雖然在本發(fā)明的第一至第三實施例中,DVD-ROM驅(qū)動器被用于處理固件或微程序,但其也可是被處理的數(shù)據(jù),也就是說,該數(shù)據(jù)可以是例如可被更新或設(shè)定的任何數(shù)據(jù),例如可重寫寄存器或DVD-ROM驅(qū)動器中的存儲器的設(shè)定值。
      權(quán)利要求
      1.一種具有一控制單元的信息處理裝置,該控制單元包括,存儲有第一程序的存儲裝置,和控制裝置,用于讀出存儲在存儲裝置中的第一程序并根據(jù)讀出的第一程序來控制信息處理裝置的預(yù)定操作,該信息處理裝置包括加密程序數(shù)據(jù)接收裝置,用于接收利用一個預(yù)定的加密密鑰對第二程序加密后的加密程序數(shù)據(jù),解碼裝置,用于利用一個預(yù)定的解碼密鑰,對由加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)進(jìn)行解碼,和程序傳送裝置,用于將加密程序數(shù)據(jù)被解密裝置解密后的第二程序傳送至控制單元;所述控制單元包括程序接收裝置,用于接收由傳送裝置傳送的第二程序,和程序?qū)懭胙b置,用于將程序接收裝置接收的第二程序?qū)懭氪鎯ρb置。
      2.根據(jù)權(quán)利要求1的信息處理裝置,其中所述加密程序數(shù)據(jù)接收裝置可接收從一個外部設(shè)備傳送過來的所述加密程序數(shù)據(jù)。
      3.根據(jù)權(quán)利要求1的信息處理裝置,進(jìn)一步包括再現(xiàn)裝置,用于再現(xiàn)一個記錄介質(zhì),該記錄介質(zhì)上記錄有用一個預(yù)定的加密密鑰對所述第二程序加密得到的加密程序數(shù)據(jù);所述控制裝置控制所述再現(xiàn)裝置,從而響應(yīng)于一個程序更新請求而再現(xiàn)所述記錄介質(zhì);所述加密程序數(shù)據(jù)接收裝置可接收被所述再現(xiàn)裝置再現(xiàn)的加密程序數(shù)據(jù)。
      4.根據(jù)權(quán)利要求1的信息處理裝置,其中在多層基片的內(nèi)層上提供一個相互連接所述程序傳送裝置和所述程序接收裝置的配線。
      5.根據(jù)權(quán)利要求1的信息處理裝置,其中所述控制單元是一個球狀柵格陣列。
      6.根據(jù)權(quán)利要求1的信息處理裝置,其中通過所述加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)包括,對第一檢驗數(shù)據(jù)加密得到的加密檢驗數(shù)據(jù),該第一檢驗數(shù)據(jù)是通過預(yù)定運算對所述第二程序的程序數(shù)據(jù)計算得到的,和一個檢驗程序,其是一個利用所述預(yù)定的加密密鑰執(zhí)行所述預(yù)定運算的程序,和一個加密檢驗程序。
      7.根據(jù)權(quán)利要求6的信息處理裝置,其中在解密所述加密程序數(shù)據(jù)時,所述解密裝置利用所述預(yù)定的解密密鑰,將所述加密檢驗數(shù)據(jù)和加密檢驗程序解密為所述第一檢驗數(shù)據(jù)和所述檢驗程序;所述程序?qū)懭胙b置,用于將所述解密裝置解密的所述第一檢驗數(shù)據(jù)和所述檢驗程序?qū)懭氲剿龃鎯ρb置中;所述控制裝置,用于在執(zhí)行所述第二程序之前,根據(jù)所述檢驗程序,由在所述存儲裝置中存儲的所述第二程序的程序數(shù)據(jù),計算第二檢驗數(shù)據(jù);并比較計算的第二檢驗數(shù)據(jù)和在所述存儲裝置中存儲的第一檢驗數(shù)據(jù);所述控制裝置響應(yīng)于該第一檢驗數(shù)據(jù)和第二檢驗數(shù)據(jù)相互比較的一致性,讀出在所述存儲裝置中存儲的所述第二程序。
      8.一種用于信息處理裝置的程序更新方法,該信息處理裝置具有一控制單元,該控制單元包括存儲有第一程序的存儲裝置,和控制裝置,用于讀出存儲在所述存儲裝置中的所述第一程序并根據(jù)讀出的第一程序來控制所述信息處理裝置的一個預(yù)定操作,該程序更新方法包括一個加密程序數(shù)據(jù)接收步驟,用于響應(yīng)一個請求更新所述第一程序的程序更新請求而接收加密程序數(shù)據(jù),該加密程序數(shù)據(jù)是利用一個預(yù)定的加密密鑰加密后的第二程序,一個解密步驟,用于利用一個預(yù)定的解密密鑰,將加密程序數(shù)據(jù)接收步驟接收的所述加密程序數(shù)據(jù)解密為所述第二程序,一個程序傳送步驟,用于傳送所述加密程序數(shù)據(jù)在所述解密步驟解密后的所述第二程序,一個程序接收步驟,用于接收由所述程序傳送步驟傳送至所述控制單元的第二程序,和一個程序?qū)懭氩襟E,用于將所述程序接收步驟接收的所述第二程序?qū)懭胨龃鎯ρb置。
      9.根據(jù)權(quán)利要求8的程序更新方法,其中所述加密程序數(shù)據(jù)接收步驟接收從一個外部設(shè)備傳送過來的加密程序數(shù)據(jù)。
      10.根據(jù)權(quán)利要求8的程序更新方法,進(jìn)一步包括一個再現(xiàn)步驟,用于再現(xiàn)一個記錄介質(zhì),該記錄介質(zhì)上記錄有用一個預(yù)定的加密密鑰對所述第二程序加密得到的加密程序數(shù)據(jù);所述再現(xiàn)步驟,響應(yīng)于所述程序更新請求的接收而再現(xiàn)所述記錄介質(zhì);所述加密程序數(shù)據(jù)接收步驟接收在所述再現(xiàn)步驟再現(xiàn)的所述加密程序數(shù)據(jù)。
      11.根據(jù)權(quán)利要求8的程序更新方法,其中所述加密程序數(shù)據(jù)接收裝置接收的所述加密程序數(shù)據(jù)包括,對第一檢驗數(shù)據(jù)加密得到的加密檢驗數(shù)據(jù),該第一檢驗數(shù)據(jù)是通過預(yù)定運算對所述第二程序的程序數(shù)據(jù)計算得到的,和一個檢驗程序,其是一個利用所述預(yù)定的加密密鑰,用于執(zhí)行所述預(yù)定運算的程序,和一個加密檢驗程序。
      12.根據(jù)權(quán)利要求11的程序更新方法,其中在解密所述加密程序數(shù)據(jù)時,所述解密步驟利用所述預(yù)定的解密密鑰,將所述加密檢驗數(shù)據(jù)和加密檢驗程序解密為所述第一檢驗數(shù)據(jù)和所述檢驗程序;所述程序?qū)懭氩襟E將通過解密步驟解密的所述第一檢驗數(shù)據(jù)和所述檢驗程序?qū)懭胨龃鎯ρb置中;所述方法進(jìn)一步包括一個檢驗數(shù)據(jù)計算步驟,用于在執(zhí)行所述第二程序之前,根據(jù)所述檢驗程序,由在所述存儲裝置中存儲的所述第二程序的程序數(shù)據(jù),計算第二檢驗數(shù)據(jù);一個檢驗數(shù)據(jù)比較步驟,用于比較在所述檢驗數(shù)據(jù)計算步驟中計算的所述第二檢驗數(shù)據(jù)和在所述存儲裝置中存儲的第一檢驗數(shù)據(jù);一個程序讀出步驟,用于響應(yīng)于該第一檢驗數(shù)據(jù)和第二檢驗數(shù)據(jù)通過所述檢驗數(shù)據(jù)比較步驟相互比較的一致性,讀出在所述存儲裝置中存儲的所述第二程序。
      13.一種具有一數(shù)據(jù)處理單元的信息處理裝置,該數(shù)據(jù)處理單元用于執(zhí)行預(yù)定的數(shù)據(jù)處理;所述該數(shù)據(jù)處理單元包括加密程序數(shù)據(jù)接收裝置,用于接收通過使用預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),解碼裝置,用于利用一個預(yù)定的解密密鑰,將從加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)解碼為所述預(yù)定的程序,存儲裝置,用于存儲所述加密程序數(shù)據(jù)通過所述解密裝置解密后的所述預(yù)定程序,程序讀出裝置,用于讀出存儲在所述存儲裝置中的所述預(yù)定程序,第一控制裝置,用于根據(jù)所述程序讀出裝置讀出的所述預(yù)定程序而控制所述數(shù)據(jù)處理單元中的預(yù)定數(shù)據(jù)處理操作,和輸出限制裝置,用于限制由所述解密裝置解密的所述預(yù)定程序和存儲在所述存儲裝置中的所述預(yù)定程序自一個外部設(shè)備的輸出。
      14.根據(jù)權(quán)利要求13的信息處理裝置,進(jìn)一步包括加密程序數(shù)據(jù)存儲裝置,其中存儲有所述加密程序數(shù)據(jù);所述第一控制裝置,用于讀出存儲在所述加密程序數(shù)據(jù)存儲裝置中的所述加密程序數(shù)據(jù);所述加密程序數(shù)據(jù)接收裝置,用于接收由所述第一控制裝置讀出的所述加密程序數(shù)據(jù)。
      15.根據(jù)權(quán)利要求13的信息處理裝置,進(jìn)一步包括第二控制裝置,用于讀出存儲在所述加密程序數(shù)據(jù)存儲裝置中的所述加密程序數(shù)據(jù);所述加密程序數(shù)據(jù)接收裝置,用于接收由所述第二控制裝置讀出的所述加密程序數(shù)據(jù)。
      16.根據(jù)權(quán)利要求13的信息處理裝置,其中所述加密程序數(shù)據(jù)接收裝置接收從一個外部設(shè)備傳送過來的加密程序數(shù)據(jù)。
      17.根據(jù)權(quán)利要求13的信息處理裝置,進(jìn)一步包括再現(xiàn)裝置,用于再現(xiàn)一個記錄介質(zhì),該記錄介質(zhì)上記錄有用一個預(yù)定的加密密鑰對所述預(yù)定程序加密后的加密程序數(shù)據(jù);所述第一控制裝置控制所述再現(xiàn)裝置,以再現(xiàn)所述記錄介質(zhì);所述加密程序數(shù)據(jù)接收裝置可接收被所述再現(xiàn)裝置再現(xiàn)的加密程序數(shù)據(jù)。
      18.根據(jù)權(quán)利要求13的信息處理裝置,其中所述加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)包括,對第一檢驗數(shù)據(jù)加密得到的加密檢驗數(shù)據(jù),該第一檢驗數(shù)據(jù)是通過預(yù)定運算對所述預(yù)定程序的程序數(shù)據(jù)計算得到的,和一個檢驗程序,其是一個利用所述預(yù)定的加密密鑰,用于執(zhí)行所述預(yù)定運算的程序,和一個加密檢驗程序。
      19.根據(jù)權(quán)利要求18的信息處理裝置,其中在解密所述加密程序數(shù)據(jù)時,所述解密裝置利用所述預(yù)定的解密密鑰,將所述加密檢驗數(shù)據(jù)和加密檢驗程序解密為所述第一檢驗數(shù)據(jù)和所述檢驗程序;所述存儲裝置,用于存儲通過所述解密裝置解密的所述第一檢驗數(shù)據(jù)和所述檢驗程序;所述第一控制裝置,用于在執(zhí)行所述預(yù)定程序之前,根據(jù)所述檢驗程序,由在所述存儲裝置中存儲的所述預(yù)定程序的程序數(shù)據(jù),計算第二檢驗數(shù)據(jù),并比較該計算的第二檢驗數(shù)據(jù)和在所述存儲裝置中存儲的第一檢驗數(shù)據(jù);所述程序讀出裝置,用于響應(yīng)于該第一檢驗數(shù)據(jù)和第二檢驗數(shù)據(jù)通過所述第一控制裝置相互比較的一致性,讀出在所述存儲裝置中存儲的所述預(yù)定程序。
      20.一種用于信息處理裝置中的數(shù)據(jù)處理單元中的程序加載方法,所述數(shù)據(jù)處理單元執(zhí)行預(yù)定的數(shù)據(jù)處理,所述方法包括一個加密程序數(shù)據(jù)接收步驟,用于接收利用一個預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),所述預(yù)定程序是一個在數(shù)據(jù)處理單元中用于執(zhí)行預(yù)定數(shù)據(jù)處理的程序,一個解密步驟,用于利用一個預(yù)定的解密密鑰,將從加密程序數(shù)據(jù)接收步驟接收的加密程序數(shù)據(jù)解密為預(yù)定的程序,一個輸出限制步驟,用于限制所述解密的預(yù)定程序自一個外部設(shè)備的輸出,和一個存儲步驟,用于將所述加密程序數(shù)據(jù)由所述解密步驟解密后的所述預(yù)定程序存儲在存儲裝置中。
      21.根據(jù)權(quán)利要求20的程序加載方法,其中所述控制步驟從存儲有所述加密程序數(shù)據(jù)的信息處理裝置中的所述加密程序數(shù)據(jù)存儲裝置中讀出所述加密程序數(shù)據(jù);所述加密程序數(shù)據(jù)接收步驟接收所讀出的所述加密程序數(shù)據(jù)。
      22.根據(jù)權(quán)利要求20的程序加載方法,其中所述加密程序數(shù)據(jù)接收步驟可接收從所述外部設(shè)備傳送過來的加密程序數(shù)據(jù)。
      23.根據(jù)權(quán)利要求20的程序加載方法,進(jìn)一步包括一個再現(xiàn)步驟,用于再現(xiàn)一個記錄介質(zhì),該記錄介質(zhì)上記錄有用一個預(yù)定的加密密鑰對所述預(yù)定程序加密得到的加密程序數(shù)據(jù);所述加密程序數(shù)據(jù)接收步驟可接收在所述再現(xiàn)步驟再現(xiàn)的所述加密程序數(shù)據(jù)。
      24.根據(jù)權(quán)利要求20的程序加載方法,其中所述加密程序數(shù)據(jù)接收步驟接收的所述加密程序數(shù)據(jù)包括,對第一檢驗數(shù)據(jù)加密得到的加密檢驗數(shù)據(jù),該第一檢驗數(shù)據(jù)是通過預(yù)定運算對所述預(yù)定程序的程序數(shù)據(jù)計算得到的,和一個檢驗程序,其是一個利用所述預(yù)定的加密密鑰,用于執(zhí)行所述預(yù)定運算的程序,和一個加密檢驗程序。
      25.根據(jù)權(quán)利要求24的程序加載方法,其中在解密所述加密程序數(shù)據(jù)時,所述解密步驟利用所述預(yù)定的解密密鑰,將所述加密檢驗數(shù)據(jù)和加密檢驗程序解密為所述第一檢驗數(shù)據(jù)和所述檢驗程序;所述存儲步驟將通過解密步驟解密的所述第一檢驗數(shù)據(jù)和所述檢驗程序存儲在所述存儲裝置中;在所述控制步驟中的一個檢驗數(shù)據(jù)計算步驟,用于在執(zhí)行所述預(yù)定程序之前,根據(jù)所述檢驗程序,由在所述存儲裝置中存儲的所述預(yù)定程序的程序數(shù)據(jù),計算第二檢驗數(shù)據(jù);在所述控制步驟中的一個檢驗數(shù)據(jù)比較步驟,用于比較在所述檢驗數(shù)據(jù)計算步驟中計算的所述第二檢驗數(shù)據(jù)和在所述存儲步驟中存儲的第一檢驗數(shù)據(jù);所述程序讀出步驟,用于響應(yīng)于該第一檢驗數(shù)據(jù)和第二檢驗數(shù)據(jù)通過所述檢驗數(shù)據(jù)比較步驟相互比較的一致性,讀出在所述存儲裝置中存儲的所述預(yù)定程序。
      26.一種電路設(shè)備,其是適于執(zhí)行預(yù)定數(shù)據(jù)處理的信息處理裝置中的數(shù)據(jù)處理裝置的一個集成,包括,以集成的形式加密程序數(shù)據(jù)接收裝置,用于接收利用一個預(yù)定的加密密鑰對預(yù)定程序加密后的加密程序數(shù)據(jù),解密裝置,用于利用一個預(yù)定的解密密鑰,將從所述加密程序數(shù)據(jù)接收裝置接收的所述加密程序數(shù)據(jù)解密為所述預(yù)定的程序,存儲裝置,用于存儲所述加密程序數(shù)據(jù)由所述解密裝置解密后的所述預(yù)定程序,程序讀出裝置,用于讀出存儲在所述存儲裝置中的所述預(yù)定程序,和輸出限制裝置,用于限制由解密裝置解密的所述預(yù)定程序和存儲在所述存儲裝置中的所述預(yù)定程序的輸出。
      27.根據(jù)權(quán)利要求26的電路設(shè)備,進(jìn)一步包括控制裝置,用于根據(jù)所述程序讀出裝置讀出的所述預(yù)定程序而控制所述數(shù)據(jù)處理裝置中的預(yù)定數(shù)據(jù)處理操作。
      28.根據(jù)權(quán)利要求26的一個信息處理裝置中提供的電路設(shè)備,包括加密程序數(shù)據(jù)存儲裝置,其中存儲有所述加密程序數(shù)據(jù);所述控制裝置讀出所述加密程序數(shù)據(jù)存儲裝置中存儲的所述加密程序數(shù)據(jù);所述加密程序數(shù)據(jù)接收裝置接收由所述控制裝置讀出的所述加密程序數(shù)據(jù)。
      29.根據(jù)權(quán)利要求26的一個信息處理裝置中提供的電路設(shè)備,包括加密程序數(shù)據(jù)存儲裝置,其中存儲有所述加密程序數(shù)據(jù),和第二控制裝置;所述第二控制裝置讀出所述加密程序數(shù)據(jù)存儲裝置中存儲的所述加密程序數(shù)據(jù);所述加密程序數(shù)據(jù)接收裝置接收由所述第二控制裝置讀出的所述加密程序數(shù)據(jù)。
      30.根據(jù)權(quán)利要求26的電路設(shè)備,其中所述加密程序數(shù)據(jù)接收裝置接收從一個外部設(shè)備傳送過來的加密程序數(shù)據(jù)。
      31.根據(jù)權(quán)利要求26的一個信息處理裝置中提供的電路設(shè)備,包括再現(xiàn)裝置,用于再現(xiàn)一個記錄介質(zhì),該記錄介質(zhì)上記錄有用一個預(yù)定的加密密鑰對所述預(yù)定程序加密得到的加密程序數(shù)據(jù);所述控制裝置控制所述再現(xiàn)裝置以再現(xiàn)所述記錄介質(zhì);所述加密程序數(shù)據(jù)接收裝置可接收所述再現(xiàn)裝置再現(xiàn)的加密程序數(shù)據(jù)。
      32.根據(jù)權(quán)利要求26的電路設(shè)備,其中所述加密程序數(shù)據(jù)接收裝置接收的加密程序數(shù)據(jù)包括,對第一檢驗數(shù)據(jù)加密得到的加密檢驗數(shù)據(jù),該第一檢驗數(shù)據(jù)是通過預(yù)定運算對所述預(yù)定程序的程序數(shù)據(jù)計算得到的,和一個檢驗程序,其是一個利用所述預(yù)定的加密密鑰,用于執(zhí)行所述預(yù)定運算的程序,和一個加密檢驗程序。
      33.根據(jù)權(quán)利要求32的電路設(shè)備,其中在解密所述加密程序數(shù)據(jù)時,所述解密裝置利用所述預(yù)定的解密密鑰,將所述加密檢驗數(shù)據(jù)和加密檢驗程序分別解密為所述第一檢驗數(shù)據(jù)和所述檢驗程序;所述存儲裝置,用于存儲通過所述解密裝置解密的所述第一檢驗數(shù)據(jù)和檢驗程序;所述控制裝置,用于在執(zhí)行所述預(yù)定程序之前,根據(jù)所述檢驗程序,由在所述存儲裝置中存儲的所述預(yù)定程序的程序數(shù)據(jù),計算第二檢驗數(shù)據(jù),并比較所計算的第二檢驗數(shù)據(jù)和在所述存儲裝置中存儲的第一檢驗數(shù)據(jù);所述程序讀出裝置,用于響應(yīng)于該第一檢驗數(shù)據(jù)和第二檢驗數(shù)據(jù)通過所述第一控制裝置的相互比較的一致性,讀出在所述存儲裝置中存儲的所述預(yù)定程序。
      全文摘要
      在更新一個程序時,需要禁止所出現(xiàn)的程序數(shù)據(jù)泄漏。為此,一個控制單元,包括一個加密程序數(shù)據(jù)接收單元,用于響應(yīng)于對第一程序的一個更新請求,接收通過使用預(yù)定的加密密鑰對第二程序加密而得到的加密程序數(shù)據(jù),一個解密單元,用于利用一個預(yù)定的解碼密鑰,將從加密程序數(shù)據(jù)接收單元接收的加密程序數(shù)據(jù)解密為預(yù)定的程序,一個程序?qū)懭雴卧?,用于寫入加密程序?shù)據(jù)通過解密單元解密后的第二程序,和一個輸出限制單元,用于限制寫在存儲單元中的第二程序自一個外部設(shè)備的輸出。
      文檔編號G06F21/00GK1822164SQ20061000454
      公開日2006年8月23日 申請日期2003年3月20日 優(yōu)先權(quán)日2002年5月20日
      發(fā)明者木谷聰, 盛一宗利 申請人:索尼公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1