欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

微控制器和這些控制器之間的鑒別方法

文檔序號(hào):87648閱讀:308來(lái)源:國(guó)知局
專利名稱:微控制器和這些控制器之間的鑒別方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種微控制器,具體來(lái)說(shuō),涉及通過(guò)使用加密后的隨機(jī)數(shù)進(jìn)行鑒別的微控制器。
現(xiàn)有技術(shù)在使用可替換配件(例如移動(dòng)式電話的電池和打印機(jī)的墨盒)的裝置中,存在這樣的情形即使應(yīng)該優(yōu)選使用授權(quán)的配件,但是仍然使用了未被授權(quán)的配件和普通的配件。如上所述,為了避免使用除了授權(quán)配件之外的配件,存在這樣一種情形,即,在主體和配件之間進(jìn)行鑒別。作為與主體和配件之間的鑒別相關(guān)的其中一種技術(shù),通過(guò)包括相同加密密鑰的加密程序在鑒別側(cè)和被鑒別側(cè)之間對(duì)相同的隨機(jī)數(shù)進(jìn)行加密,并且進(jìn)行比較從而確認(rèn)一致性。
日本特開(kāi)專利申請(qǐng)(JP-P2003-318894A)中描述了對(duì)隨機(jī)數(shù)進(jìn)行加密的常規(guī)方法,其中在多個(gè)口令(challenge)裝置和響應(yīng)系統(tǒng)之間使用了鑒別方法。在該常規(guī)的鑒別方法中,從服務(wù)器向終端發(fā)送口令數(shù)據(jù),以及從所述終端向服務(wù)器發(fā)送根據(jù)所述口令數(shù)據(jù)解密的響應(yīng)數(shù)據(jù)。進(jìn)一步,根據(jù)服務(wù)器中進(jìn)行的加密來(lái)判斷所述響應(yīng)數(shù)據(jù)是否是根據(jù)所述口令數(shù)據(jù)解密后的數(shù)據(jù)。當(dāng)判斷結(jié)果是肯定的時(shí),鑒別方法將用于加密和解密的參量更新為新的參量,該新參量被設(shè)置為用于下一次鑒別的參量。
如果將常規(guī)技術(shù)應(yīng)用到其上安裝有微控制器的應(yīng)用系統(tǒng),則由于用來(lái)對(duì)隨機(jī)數(shù)進(jìn)行加密的加密密鑰被直接寫(xiě)在程序中或被存儲(chǔ)為存儲(chǔ)器(該存儲(chǔ)器同時(shí)也被用于存儲(chǔ)程序)中的數(shù)據(jù),因此可以通過(guò)對(duì)其中存儲(chǔ)有用戶程序的程序存儲(chǔ)器的全部數(shù)據(jù)進(jìn)行拷貝,從而可以在除了授權(quán)配件之外的其他配件中進(jìn)行加密。即,如果非法地獲得了鑒別程序,且該程序被寫(xiě)入到微控制器的由閃存等構(gòu)成的程序存儲(chǔ)器中時(shí),則即使在未被授權(quán)的配件中也可以執(zhí)行操作,這將會(huì)導(dǎo)致檢測(cè)不到假冒產(chǎn)品的問(wèn)題。以這種方法,如果在仿造授權(quán)配件的假冒產(chǎn)品上安裝了由相同的程序?qū)戇^(guò)的微控制器,則將會(huì)表現(xiàn)出與授權(quán)配件相同的操作。

發(fā)明內(nèi)容因此,本發(fā)明的目的在于提供一種微控制器和鑒別方法,其具有能夠阻止在假冒產(chǎn)品中的執(zhí)行正常的操作。
此外,本發(fā)明的另一個(gè)目的在于提供一種微控制器和鑒別方法,其能夠防止通過(guò)簡(jiǎn)單地拷貝程序存儲(chǔ)器而生產(chǎn)假冒配件。
在本發(fā)明的一個(gè)方面中,微控制器包括程序存儲(chǔ)器,其配置為存儲(chǔ)程序組和第一加密密鑰;CPU;以及標(biāo)識(shí)(ID)存儲(chǔ)部分,其被配置為存儲(chǔ)微控制器的用戶所特有的標(biāo)識(shí)數(shù)據(jù)。CPU執(zhí)行程序組以根據(jù)標(biāo)識(shí)數(shù)據(jù)和第一加密密鑰產(chǎn)生第二加密密鑰,以及利用第二加密密鑰對(duì)隨機(jī)數(shù)進(jìn)行加密。
這里,CPU可以執(zhí)行程序組的隨機(jī)數(shù)生成程序用以產(chǎn)生隨機(jī)數(shù)。此外,微控制器可以進(jìn)一步包括被配置用于產(chǎn)生隨機(jī)數(shù)的隨機(jī)數(shù)產(chǎn)生電路。此外,微控制器可以進(jìn)一步包括被配置用于接收隨機(jī)數(shù)的端口。
此外,CPU可以執(zhí)行程序組,以將利用第二加密密鑰所加密的隨機(jī)數(shù)與從外部設(shè)備接收到的加密隨機(jī)數(shù)進(jìn)行比較,并輸出比較結(jié)果。
此外,所述程序存儲(chǔ)器和ID存儲(chǔ)部分可以由非易失存儲(chǔ)器構(gòu)成。在這種情況下,微控制器可以進(jìn)一步包括控制部分,其被配置為響應(yīng)于向程序存儲(chǔ)器的程序?qū)懭胝?qǐng)求,對(duì)程序存儲(chǔ)器執(zhí)行擦除操作和寫(xiě)操作。當(dāng)對(duì)程序存儲(chǔ)器執(zhí)行擦除操作時(shí),控制部分可以從ID存儲(chǔ)部分擦除該標(biāo)識(shí)數(shù)據(jù)。
此外,程序組可以包括第一加密密鑰提供程序,其用于提供第一加密密鑰;第二加密密鑰生成程序,其用于獲得第一加密密鑰和標(biāo)識(shí)數(shù)據(jù),并根據(jù)所述第一加密密鑰和標(biāo)識(shí)數(shù)據(jù)產(chǎn)生第二加密密鑰;以及加密程序,其用于利用第二加密密鑰對(duì)隨機(jī)數(shù)進(jìn)行加密。在這種情況下,程序組可以進(jìn)一步包括比較程序,其用于將利用第二加密密鑰所加密的隨機(jī)數(shù)與從外部設(shè)備接收到的加密隨機(jī)數(shù)進(jìn)行比較,并輸出比較結(jié)果。
在本發(fā)明的另一方面中,通過(guò)如下步驟實(shí)現(xiàn)一種第一和第二微控制器之間的鑒別方法,這些步驟包括通過(guò)執(zhí)行存儲(chǔ)在第一微控制器的第一程序存儲(chǔ)器中的第一加密密鑰提供程序來(lái)提供第一加密密鑰;在第一微控制器的第一標(biāo)識(shí)(ID)存儲(chǔ)部分中保存(hold)第一微控制器所特有的第一標(biāo)識(shí)數(shù)據(jù);根據(jù)第一標(biāo)識(shí)數(shù)據(jù)和第一加密密鑰在第一微控制器中產(chǎn)生第二加密密鑰;利用在第一微控制器中的第二加密密鑰對(duì)隨機(jī)數(shù)進(jìn)行加密以產(chǎn)生第一加密隨機(jī)數(shù);從第二微控制器接收第二加密隨機(jī)數(shù);以及對(duì)第一加密隨機(jī)數(shù)和第二加密隨機(jī)數(shù)進(jìn)行比較以便輸出比較結(jié)果。
這里,通過(guò)進(jìn)一步從第一程序存儲(chǔ)器讀取隨機(jī)數(shù)來(lái)實(shí)現(xiàn)所述鑒別方法。在這種情況下,通過(guò)進(jìn)一步產(chǎn)生隨機(jī)數(shù)以存儲(chǔ)在第一程序存儲(chǔ)器中從而實(shí)現(xiàn)所述鑒別方法。通過(guò)執(zhí)行存儲(chǔ)在第一程序存儲(chǔ)器中的隨機(jī)數(shù)生成程序從而產(chǎn)生隨機(jī)數(shù),由此實(shí)現(xiàn)隨機(jī)數(shù)的產(chǎn)生。
此外,程序存儲(chǔ)器和ID存儲(chǔ)部分由非易失存儲(chǔ)器構(gòu)成,以及可以通過(guò)進(jìn)一步執(zhí)行以下步驟從而實(shí)現(xiàn)所述微控制器,所述步驟是響應(yīng)于向第一程序存儲(chǔ)器的程序?qū)懭胝?qǐng)求,對(duì)第一程序存儲(chǔ)器執(zhí)行擦除操作和寫(xiě)操作;以及響應(yīng)于該寫(xiě)入請(qǐng)求對(duì)ID存儲(chǔ)部分執(zhí)行擦除操作。
此外,可以通過(guò)進(jìn)一步執(zhí)行以下步驟從而實(shí)現(xiàn)所述鑒別方法,這些步驟是通過(guò)執(zhí)行存儲(chǔ)在第二微控制器的第二程序存儲(chǔ)器中的第二加密密鑰提供程序從而提供第三加密密鑰;在第二微控制器的第二標(biāo)識(shí)(ID)存儲(chǔ)部分中保存第二微控制器所特有的第二標(biāo)識(shí)數(shù)據(jù);根據(jù)第二標(biāo)識(shí)數(shù)據(jù)和第三加密密鑰,在第二微控制器中產(chǎn)生第四加密密鑰;利用在第二微控制器中的第四加密密鑰對(duì)來(lái)自第一微控制器的隨機(jī)數(shù)進(jìn)行加密,從而產(chǎn)生第二加密隨機(jī)數(shù);以及將第二加密隨機(jī)數(shù)發(fā)送給第一微控制器。在這種情況下,當(dāng)將包含第二微控制器的裝置安裝到包含第一微控制器的裝置中時(shí),可以通過(guò)進(jìn)一步向第二微控制器提供電能從而實(shí)現(xiàn)所述鑒別方法。在向第二微控制器提供了電能之后再執(zhí)行提供第三加密密鑰的步驟。
此外,可以通過(guò)進(jìn)一步執(zhí)行以下步驟從而實(shí)現(xiàn)所述鑒別方法,這些步驟是通過(guò)執(zhí)行存儲(chǔ)在第二微控制器的第二程序存儲(chǔ)器中的第二加密密鑰提供程序從而提供第三加密密鑰;在第二微控制器的第二標(biāo)識(shí)(ID)存儲(chǔ)部分中保存第二微控制器所特有的第二標(biāo)識(shí)數(shù)據(jù);根據(jù)第二標(biāo)識(shí)數(shù)據(jù)和第三加密密鑰,在第二微控制器中產(chǎn)生第四加密密鑰;利用在第二微控制器中的第四加密密鑰對(duì)來(lái)自第一微控制器的隨機(jī)數(shù)進(jìn)行加密,從而產(chǎn)生第二加密隨機(jī)數(shù);以及將第二加密隨機(jī)數(shù)發(fā)送給第一微控制器。在這種情況下,當(dāng)將包含第二微控制器的裝置安裝到包含第一微控制器的裝置上時(shí),可以通過(guò)進(jìn)一步向第一微控制器提供電能從而實(shí)現(xiàn)所述鑒別方法。在向第一微控制器提供了電能之后再執(zhí)行提供第一加密密鑰的步驟。
圖1示出了根據(jù)本發(fā)明的微控制器的結(jié)構(gòu)框圖;圖2示出了主體(鑒別側(cè))和配件(被鑒別側(cè))的結(jié)構(gòu)框圖;圖3示出了根據(jù)本發(fā)明的基本操作的流程圖;圖4示出了在打印機(jī)和墨盒情況下的鑒別操作的流程圖;以及圖5示出了在便攜設(shè)備和電池情況下的鑒別操作的流程圖。
具體實(shí)施方式以下,將參考附圖具體描述本發(fā)明的微控制器。圖1示出了根據(jù)本發(fā)明第一實(shí)施例的微控制器100的結(jié)構(gòu)框圖。參考圖1,第一實(shí)施例的微控制器100包括CPU 110、ID存儲(chǔ)部分120、程序存儲(chǔ)器130和輸入/輸出端口140。
CPU 110控制微控制器100中的每個(gè)部分。CPU 110還在微控制器100中產(chǎn)生加密所需的隨機(jī)數(shù)。此時(shí),CPU 110通過(guò)執(zhí)行存儲(chǔ)在程序存儲(chǔ)器130中的隨機(jī)數(shù)生成程序(未示出)從而產(chǎn)生隨機(jī)數(shù)。然而,對(duì)于實(shí)際應(yīng)用來(lái)說(shuō),還可以通過(guò)使用如下方法來(lái)產(chǎn)生所述隨機(jī)數(shù),其中這些方法是通過(guò)CPU本身執(zhí)行程序的隨機(jī)數(shù)生成功能或通過(guò)例如隨機(jī)數(shù)產(chǎn)生電路(未示出)的硬件功能。即,可以用任何方法來(lái)產(chǎn)生隨機(jī)數(shù)。此外,可以從外部設(shè)備接收該隨機(jī)數(shù)。所產(chǎn)生或接收的隨機(jī)數(shù)可以被存儲(chǔ)在程序存儲(chǔ)器中。
ID存儲(chǔ)部分120是配置在微控制器100中的存儲(chǔ)區(qū)域,且通過(guò)微控制器中的電路或程序?qū)ζ溥M(jìn)行訪問(wèn)。ID存儲(chǔ)部分120還存儲(chǔ)有為各個(gè)客戶所確定的固有的標(biāo)識(shí)數(shù)據(jù)(ID)。在ID存儲(chǔ)部分120中,對(duì)特定(或某個(gè))客戶寫(xiě)入目標(biāo)客戶固有ID(例如58679)并發(fā)貨。在發(fā)給普通客戶的產(chǎn)品的ID存儲(chǔ)部分120中,寫(xiě)入了例如全部都是零的初始值。在程序存儲(chǔ)器130中,ID存儲(chǔ)部分120是可讀的,但不可被任何程序重寫(xiě)。ID存儲(chǔ)部分120僅在制造商的制造過(guò)程中的專用模式下才是可重寫(xiě)的。如果程序存儲(chǔ)器130是非易失存儲(chǔ)器且程序都是可重寫(xiě)的,則ID存儲(chǔ)部分120是非易失存儲(chǔ)器。
在程序存儲(chǔ)器130中,在其中寫(xiě)入了用戶程序。該程序包括加密密鑰A提供程序131、加密密鑰B生成程序132、加密程序133和比較程序134。然而,對(duì)于實(shí)際應(yīng)用來(lái)說(shuō),加密密鑰A提供程序131、加密密鑰B生成程序132、加密程序133和比較程序134的功能還可以通過(guò)硬件電路來(lái)實(shí)現(xiàn)。此外,所述程序可以包括隨機(jī)數(shù)生成程序。
加密密鑰A提供程序131是這樣一種程序,其用于提供第一加密密鑰A并將它保存在程序存儲(chǔ)器中。加密密鑰B生成程序132是這樣一種程序,其用于根據(jù)加密密鑰A提供程序131提供的加密密鑰A和存儲(chǔ)在ID存儲(chǔ)部分120中的固有標(biāo)識(shí)數(shù)據(jù)(ID)重新產(chǎn)生加密密鑰B??梢詫⒓用苊荑€B的產(chǎn)生通知給外部設(shè)備。加密程序133是這樣一種程序,其用于根據(jù)加密密鑰B對(duì)隨機(jī)數(shù)進(jìn)行加密。比較程序134是這樣一種程序,其用于將根據(jù)加密密鑰B所加密的隨機(jī)數(shù)(即,第一加密隨機(jī)數(shù))與從另一微控制器獲得的一第二加密隨機(jī)數(shù)進(jìn)行比較,并輸出比較結(jié)果。
程序存儲(chǔ)器130是掩模ROM或非易失存儲(chǔ)器。如果程序存儲(chǔ)器130是例如閃存的非易失存儲(chǔ)器,則ID存儲(chǔ)部分120優(yōu)選地是非易失存儲(chǔ)器。這是由于當(dāng)對(duì)程序存儲(chǔ)器中的用戶程序進(jìn)行重寫(xiě)時(shí),其使得可以對(duì)ID存儲(chǔ)部分120執(zhí)行擦除操作。以下將要更詳細(xì)地進(jìn)行描述。
如果程序存儲(chǔ)器130是非易失存儲(chǔ)器,則第一微控制器100進(jìn)一步包括控制部分150。
控制部分150對(duì)程序存儲(chǔ)器130進(jìn)行寫(xiě)入/擦除控制。具體地,在寫(xiě)入操作中,控制部分150產(chǎn)生非易失存儲(chǔ)器的寫(xiě)入操作所需的電壓,并且根據(jù)寫(xiě)入地址和將被寫(xiě)入的數(shù)據(jù)執(zhí)行寫(xiě)入控制。此外,控制部分150產(chǎn)生非易失存儲(chǔ)器的擦除操作所需的電壓并且執(zhí)行擦除操作。如果為了重寫(xiě)程序存儲(chǔ)器130的內(nèi)容而從程序?qū)懭朐O(shè)備(未示出)向第一微控制器100提供重寫(xiě)請(qǐng)求,則在寫(xiě)入新的程序之前,控制部分150對(duì)程序存儲(chǔ)器130和ID存儲(chǔ)部分120的擦除操作進(jìn)行控制。即,控制部分150響應(yīng)于重寫(xiě)請(qǐng)求對(duì)程序存儲(chǔ)器130進(jìn)行擦除或?qū)懭?,并同時(shí)對(duì)保存在ID存儲(chǔ)部分120中的ID進(jìn)行初始化,例如將零寫(xiě)入到全部地址中。
如果程序存儲(chǔ)器130是掩模ROM,則不能改變程序。
輸入/輸出端口140是用于與外部設(shè)備進(jìn)行通信的端口。輸入/輸出端口140用于獲得由另一微控制器產(chǎn)生的加密隨機(jī)數(shù),并用于輸出來(lái)自比較程序134的比較結(jié)果。如果沒(méi)有在微控制器100內(nèi)部產(chǎn)生用于加密的隨機(jī)數(shù),則使用輸入/輸出端口140從外部設(shè)備獲得隨機(jī)數(shù)。
如圖2所示,使用本發(fā)明的微控制器的鑒別系統(tǒng)具有第一微控制器100和第二微控制器200。第一微控制器100通過(guò)通信線路連接到第二微控制器200。
在本發(fā)明的第一實(shí)施例中,如圖2所示,將第一微控制器100視為主體(鑒別側(cè)),而將第二微控制器200視為配件(被鑒別側(cè))。第一微控制器100和第二微控制器200都具有與圖1所示的微控制器相同的配置和功能。為了識(shí)別第一微控制器100和第二微控制器200之間的配置,第二微控制器200包括CPU 210、ID存儲(chǔ)部分220、程序存儲(chǔ)器230和輸入/輸出端口240。即,在第二微控制器200中,圖1中的CPU 110、ID存儲(chǔ)部分120、程序存儲(chǔ)器130和輸入/輸出端口140分別對(duì)應(yīng)于CPU 210、ID存儲(chǔ)部分220、程序存儲(chǔ)器230和輸入/輸出端口240。
CPU 210控制微控制器中的各個(gè)部分。由于第二微控制器200從第一微控制器100獲得隨機(jī)數(shù),因此CPU 210不產(chǎn)生隨機(jī)數(shù)。
ID存儲(chǔ)部分220存儲(chǔ)有為各個(gè)客戶確定的固有標(biāo)識(shí)數(shù)據(jù)(ID)。該標(biāo)識(shí)數(shù)據(jù)與存儲(chǔ)在第一微控制器100的ID存儲(chǔ)部分120中的標(biāo)識(shí)數(shù)據(jù)相同。即,ID存儲(chǔ)部分120和ID存儲(chǔ)部分220存儲(chǔ)有相同的標(biāo)識(shí)數(shù)據(jù)。
在程序存儲(chǔ)器230中,在其中寫(xiě)入了用戶程序。該程序包括加密密鑰A提供程序231、加密密鑰B生成程序232、加密程序233和比較程序234。加密密鑰A提供程序231、加密密鑰B生成程序232和加密程序233分別與圖1中的加密密鑰A提供程序131、加密密鑰B生成程序132和加密程序133相同。然而,對(duì)于實(shí)際應(yīng)用來(lái)說(shuō),加密密鑰A提供程序231、加密密鑰B生成程序232、加密程序233和比較程序234也可以通過(guò)硬件電路來(lái)實(shí)現(xiàn)。
盡管比較程序234可以與圖1中的比較程序134相同,但是如果在主體側(cè)(鑒別側(cè))上對(duì)各個(gè)隨機(jī)數(shù)進(jìn)行比較,則比較程序234將由加密程序233加密的隨機(jī)數(shù)(第二加密隨機(jī)數(shù))發(fā)送給第一微控制器100。如果第一微控制器100可以通過(guò)如下方式從第二微控制器200獲得加密后的隨機(jī)數(shù),則可以省略比較程序234,所述方式是通過(guò)使用比較程序134獲得第二加密隨機(jī)數(shù)或通過(guò)使用加密程序233發(fā)送第二加密隨機(jī)數(shù)。
如果程序存儲(chǔ)器230是非易失存儲(chǔ)器,則第二微控制器200進(jìn)一步包括控制部分250??刂撇糠?50與圖1中的控制部分150相同。
輸入/輸出端口240是用于與外部設(shè)備進(jìn)行通信的端口。輸入/輸出端口240用于從第一微控制器100獲得隨機(jī)數(shù),并將第二加密隨機(jī)數(shù)發(fā)送給第一微控制器100。
盡管在圖2所示的本發(fā)明的第一實(shí)施例中,第一微控制器100是主體(鑒別側(cè))且第二微控制器200是配件(被鑒別側(cè)),但是對(duì)于實(shí)際應(yīng)用來(lái)說(shuō),配件也可以是鑒別側(cè),而主體也可以是被鑒別側(cè)。這就是根據(jù)本發(fā)明第二實(shí)施例的鑒別系統(tǒng)。
在本發(fā)明的第三實(shí)施例中,還可以同時(shí)通過(guò)主體和配件進(jìn)行鑒別。同時(shí)在主體和配件中進(jìn)行的鑒別可以確保更可靠的保密性。在這種情況下,第一微控制器100和第二微控制器200執(zhí)行相同的操作。即,第二微控制器中的CPU 210產(chǎn)生隨機(jī)數(shù)。此時(shí),CPU 210通過(guò)執(zhí)行存儲(chǔ)在程序存儲(chǔ)器230中的隨機(jī)數(shù)生成程序(未示出)從而產(chǎn)生隨機(jī)數(shù)。然而,也可以通過(guò)CPU本身的隨機(jī)數(shù)生成功能和硬件功能來(lái)產(chǎn)生隨機(jī)數(shù),所述硬件功能例如是隨機(jī)數(shù)生成電路(未示出)??梢酝ㄟ^(guò)任何方法獲得隨機(jī)數(shù)。例如,在第一微控制器100和第二微控制器200中,可以從外部隨機(jī)數(shù)生成設(shè)備(未示出)來(lái)獲得隨機(jī)數(shù)。在這種情況下,第一微控制器100和第二微控制器200具有多個(gè)輸入/輸出端口,所述輸入/輸出端口不僅用于相互通信而且也用于與外部隨機(jī)數(shù)生成設(shè)備通信。
此外,第二微控制器200從第一微控制器100獲得加密后的隨機(jī)數(shù)(第一加密隨機(jī)數(shù)),并通過(guò)比較程序234將對(duì)該加密的隨機(jī)數(shù)進(jìn)行解密后的隨機(jī)數(shù)與在第二微控制器200中產(chǎn)生的隨機(jī)數(shù)進(jìn)行比較。
接下來(lái),參考圖3,以下將要描述根據(jù)本發(fā)明的鑒別系統(tǒng)的操作。作為例子,這里假定第一微控制器100是主體(鑒別側(cè)),而第二微控制器200是配件(被鑒別側(cè))。
(1)步驟H101CPU 110從ID存儲(chǔ)部分120讀取標(biāo)識(shí)數(shù)據(jù)(ID)。
(2)步驟H102CPU 110由程序存儲(chǔ)器130中的加密密鑰A提供程序131讀取加密密鑰A。
(3)步驟H103CPU 110根據(jù)加密密鑰A和該ID通過(guò)使用加密密鑰B生成程序132生成加密密鑰B。
(4)步驟F101CPU 210從ID存儲(chǔ)部分220讀取標(biāo)識(shí)數(shù)據(jù)(ID)。
(5)步驟F102CPU 210由程序存儲(chǔ)器230中的加密密鑰A提供程序231讀取加密密鑰A。
(6)步驟F103CPU 210根據(jù)加密密鑰A和ID通過(guò)使用加密密鑰B生成程序232生成加密密鑰B。
(7)步驟H104CPU 110生成隨機(jī)數(shù)以輸出給(通知)配件(第二微控制器200)。
(8)步驟H105CPU 110通過(guò)使用加密程序133利用加密密鑰B對(duì)該隨機(jī)數(shù)進(jìn)行加密,以生成第一加密隨機(jī)數(shù)。
(9)步驟F104CPU 210通過(guò)使用加密程序233利用加密密鑰B對(duì)從主體(第一微控制器100)接收到的隨機(jī)數(shù)進(jìn)行加密,從而生成了第二加密隨機(jī)數(shù),隨后將第二加密隨機(jī)數(shù)發(fā)送給主體(第一微控制器100)。
(10)步驟H106CPU 110通過(guò)使用比較程序134對(duì)第一加密隨機(jī)數(shù)和第二加密隨機(jī)數(shù)進(jìn)行比較,從而輸出該比較結(jié)果。
啟動(dòng)上述操作的時(shí)間(操作啟動(dòng)觸發(fā)器)是啟動(dòng)主體和配件的時(shí)間(電源開(kāi)啟/關(guān)閉的時(shí)間)、將配件連接到主體的時(shí)間、從外部設(shè)備接收請(qǐng)求信號(hào)的時(shí)間、或是周期性的。配件可以在從主體接收到隨機(jī)數(shù)之后再啟動(dòng)該操作。此外,在主體和配件中,當(dāng)預(yù)先設(shè)置了標(biāo)識(shí)數(shù)據(jù)(ID)和程序的時(shí)候,可以執(zhí)行生成加密密鑰B的操作。然而,實(shí)際應(yīng)用不局限于上述實(shí)例。
接下來(lái),以下將要描述第一實(shí)施例和第二實(shí)施例的兩個(gè)實(shí)例。
參考圖4,將要描述打印機(jī)(主體)和墨盒(配件)的第一實(shí)施例中的鑒別系統(tǒng)。
(1)步驟H201在打印機(jī)主體中開(kāi)啟電源。
(2)步驟H202主體側(cè)的微控制器讀取主體側(cè)的標(biāo)識(shí)數(shù)據(jù)(ID)。
(3)步驟H203主體側(cè)的微控制器讀取主體側(cè)的加密密鑰A。
(4)步驟H204主體側(cè)的微控制器根據(jù)加密密鑰A和標(biāo)識(shí)數(shù)據(jù)(ID)生成加密密鑰B。
(5)步驟H205此后,主體側(cè)的微控制器對(duì)將要安裝到主體上的墨盒進(jìn)行識(shí)別,并向該墨盒提供電能。
(6)步驟F201當(dāng)所提供的電能被接通時(shí),墨盒側(cè)的微控制器讀取墨盒側(cè)的標(biāo)識(shí)數(shù)據(jù)(ID)。
(7)步驟F202墨盒側(cè)上的微控制器讀取墨盒側(cè)的加密密鑰A。
(8)步驟F203墨盒側(cè)的微控制器根據(jù)加密密鑰A和標(biāo)識(shí)數(shù)據(jù)(ID)生成加密密鑰B,隨后將生成加密密鑰B的通知發(fā)送給主體。
(9)步驟H206響應(yīng)于生成加密密鑰B的通知,主體側(cè)的微控制器生成隨機(jī)數(shù)并將它發(fā)送給墨盒。
(10)步驟F204墨盒側(cè)的微控制器根據(jù)加密密鑰B對(duì)從主體接收到的隨機(jī)數(shù)進(jìn)行加密,從而生成第二加密隨機(jī)數(shù),并將該第二加密隨機(jī)數(shù)發(fā)送給主體。
(11)步驟H207主體側(cè)的微控制器根據(jù)加密密鑰B對(duì)隨機(jī)數(shù)進(jìn)行加密,從而獲得第一加密隨機(jī)數(shù)。
(12)步驟H208主體側(cè)的微控制器對(duì)第一加密隨機(jī)數(shù)和第二加密隨機(jī)數(shù)進(jìn)行比較。
(13)步驟H209如果結(jié)果表示(二者)相符合,則主體開(kāi)始作為打印機(jī)操作。
(14)步驟H210如果結(jié)果表示(二者)不相符,則主體中止作為打印機(jī)的操作。
接下來(lái),參考圖5,將要描述便攜式終端(主體)和電池(配件)情況下的第二實(shí)施例中的鑒別系統(tǒng)的操作。
(1)步驟F301將電池組連接到或安裝在電池包中。
(2)步驟F302電池側(cè)的微控制器讀取電池側(cè)的標(biāo)識(shí)數(shù)據(jù)(ID)。
(3)步驟F303電池側(cè)的微控制器讀取電池側(cè)的加密密鑰A。
(4)步驟F304電池側(cè)的微控制器根據(jù)加密密鑰A和標(biāo)識(shí)數(shù)據(jù)(ID)生成加密密鑰B。
(5)步驟F305此后,將電池包安裝在主體側(cè)上,由此電池組向主體提供電能。
(6)步驟H301當(dāng)電源導(dǎo)通時(shí),主體側(cè)的微控制器讀取主體側(cè)上的標(biāo)識(shí)數(shù)據(jù)(ID)。
(7)步驟H302主體側(cè)的微控制器讀取主體側(cè)上的加密密鑰A。
(8)步驟H303主體側(cè)的微控制器根據(jù)加密密鑰A和標(biāo)識(shí)數(shù)據(jù)(ID)生成加密密鑰B。
(9)步驟H304
主體上的微控制器進(jìn)一步生成隨機(jī)數(shù)并將它發(fā)送給電池包。
(10)步驟F306電池側(cè)的微控制器利用加密密鑰B對(duì)從主體接收到的隨機(jī)數(shù)進(jìn)行加密,從而生成第二加密隨機(jī)數(shù),并將該第二加密隨機(jī)數(shù)發(fā)送給主體。
(11)步驟H305主體通過(guò)利用加密密鑰B對(duì)隨機(jī)數(shù)進(jìn)行加密,從而獲得第一加密隨機(jī)數(shù)。
(12)步驟H306主體對(duì)第一加密隨機(jī)數(shù)和第二加密隨機(jī)數(shù)進(jìn)行比較。
(13)步驟H307如果結(jié)果表示(二者)相符合,則主體作為便攜設(shè)備開(kāi)始操作。
(14)步驟H308如果結(jié)果表示(二者)不相符,則主體中止作為便攜設(shè)備的操作。
這里,將要描述非法地獲得微控制器程序的情形。在這種情況下,寫(xiě)入到主體的ID存儲(chǔ)部分中的ID是某個(gè)用戶所固有的。
當(dāng)已經(jīng)在配件側(cè)(客戶限定的產(chǎn)品)將授權(quán)程序?qū)懭氲轿⒖刂破髦袝r(shí),即,在通常使用的情況下,假定主體和配件使用根據(jù)第一加密密鑰A和ID準(zhǔn)備了相同的加密密鑰B和相同的隨機(jī)數(shù),由此加密后的隨機(jī)數(shù)仍保持相同。
然而,對(duì)于非特定用戶的普通用戶來(lái)說(shuō),如果在沒(méi)有任何處理的情況下,將非法獲得的程序拷貝到微控制器的程序存儲(chǔ)器中,則安裝在假冒產(chǎn)品上的微控制器的ID被初始化,例如全部設(shè)置為零,而與用戶固有ID不同。由此,加密密鑰B不同。結(jié)果,在主體和配件中加密的隨機(jī)數(shù)彼此不同。由此,可以確認(rèn)連接到主體的配件是假冒產(chǎn)品。
如果微控制器的程序存儲(chǔ)器是非易失存儲(chǔ)器,則考慮這樣一種方式,即,通過(guò)編寫(xiě)和執(zhí)行用于讀取和輸出ID的簡(jiǎn)單程序而惡意地獲得了ID。然而,由于當(dāng)數(shù)據(jù)或程序被寫(xiě)入非易失存儲(chǔ)器時(shí),對(duì)非易失存儲(chǔ)器執(zhí)行了擦除操作和寫(xiě)入操作,因此可以初始化在ID存儲(chǔ)部分中保存的數(shù)據(jù),這防止了使用上述方法。
如上所述,根據(jù)本發(fā)明的微控制器包括CPU,其用于通過(guò)執(zhí)行隨機(jī)數(shù)生成程序或硬件功能生成隨機(jī)數(shù);ID存儲(chǔ)部分,其用于存儲(chǔ)固有的標(biāo)識(shí)數(shù)據(jù),以及第一程序存儲(chǔ)器,其用于存儲(chǔ)第一加密密鑰,并根據(jù)標(biāo)識(shí)數(shù)據(jù)和第一加密密鑰生成第二加密密鑰,以便根據(jù)第二加密密鑰存儲(chǔ)用于對(duì)隨機(jī)數(shù)進(jìn)行加密的程序。
在本發(fā)明的使用微控制器的鑒別系統(tǒng)中,使用了主體(鑒別側(cè))的第一微控制器和配件(被鑒別側(cè))的第二微控制器。第一微控制器通過(guò)通信線路連接到第二微控制器。
第一微控制器包括程序存儲(chǔ)器、ID存儲(chǔ)部分和CPU。第二微控制器包括程序存儲(chǔ)器和ID存儲(chǔ)部分。如果各個(gè)微控制器中的ID存儲(chǔ)部分都使用了非易失存儲(chǔ)器,則進(jìn)一步提供控制部分。
用戶程序已經(jīng)被寫(xiě)入到程序存儲(chǔ)器中。更具體地,這些程序包括加密密鑰A提供程序、加密密鑰B生成程序、加密程序和比較程序(鑒別側(cè)專用)。程序存儲(chǔ)器被分為以下兩種情形,即掩模ROM和非易失存儲(chǔ)器。ID存儲(chǔ)部分具有ID存儲(chǔ)部分。對(duì)于特定用戶,寫(xiě)入目標(biāo)用戶固有ID并發(fā)貨。在發(fā)往普通客戶的產(chǎn)品的ID存儲(chǔ)部分中,寫(xiě)入了例如全部都是零的初始值。對(duì)于用戶存儲(chǔ)程序來(lái)說(shuō),ID存儲(chǔ)部分是可讀的但是不可重寫(xiě)的。如果程序存儲(chǔ)器是非易失存儲(chǔ)器且程序是可重寫(xiě)的,則ID存儲(chǔ)部分是非易失存儲(chǔ)器。加密密鑰B生成程序根據(jù)加密密鑰A和ID生成加密密鑰B。CPU生成隨機(jī)數(shù)。加密程序根據(jù)加密密鑰B對(duì)隨機(jī)數(shù)進(jìn)行加密。比較程序?qū)χ黧w中產(chǎn)生的加密隨機(jī)數(shù)和從配件提供的加密隨機(jī)數(shù)進(jìn)行比較,并輸出比較結(jié)果。如果程序存儲(chǔ)器是非易失存儲(chǔ)器,則將控制部分配置為一個(gè)部件(或存在控制部)??刂撇糠猪憫?yīng)于寫(xiě)入請(qǐng)求而對(duì)程序存儲(chǔ)器進(jìn)行擦除/寫(xiě)入。同時(shí)對(duì)保存在加密密鑰A提供程序中的ID進(jìn)行初始化,例如全部初始化為零。
以下將要描述本發(fā)明中的鑒別過(guò)程的流程。
起初,主體和配件利用加密密鑰A和ID生成加密密鑰B。主體生成隨機(jī)數(shù)并輸出給配件。主體根據(jù)加密密鑰B對(duì)隨機(jī)數(shù)進(jìn)行加密,從而獲得第一加密隨機(jī)數(shù)。配件根據(jù)加密密鑰B對(duì)從主體接收到的隨機(jī)數(shù)進(jìn)行加密,并生成第二加密隨機(jī)數(shù),并將其傳送給主體。主體對(duì)第一加密隨機(jī)數(shù)和第二加密隨機(jī)數(shù)進(jìn)行比較,并輸出比較結(jié)果。
當(dāng)非法地獲得了微控制器的程序時(shí),即使使用了在其中將非法獲得的程序?qū)懭氲匠绦虼鎯?chǔ)器的假冒產(chǎn)品,也能夠阻止其正常操作。因此,可以消除通過(guò)簡(jiǎn)單地拷貝程序存儲(chǔ)器的假冒配件。
權(quán)利要求
1.一種微控制器,包括程序存儲(chǔ)器,其被配置為存儲(chǔ)程序組和第一加密密鑰;CPU;以及標(biāo)識(shí)(ID)存儲(chǔ)部分,其被配置為存儲(chǔ)所述微控制器的用戶所特有的標(biāo)識(shí)數(shù)據(jù),其中所述CPU根據(jù)所述標(biāo)識(shí)數(shù)據(jù)和所述第一加密密鑰執(zhí)行所述程序組以生成第二加密密鑰,并利用所述第二加密密鑰對(duì)隨機(jī)數(shù)進(jìn)行加密。
2.根據(jù)權(quán)利要求
1的微控制器,其中所述CPU執(zhí)行所述程序組的隨機(jī)數(shù)生成程序從而生成所述隨機(jī)數(shù)。
3.根據(jù)權(quán)利要求
1的微控制器,進(jìn)一步包括隨機(jī)數(shù)生成電路,其被配置為生成所述隨機(jī)數(shù)。
4.根據(jù)權(quán)利要求
1的微控制器,進(jìn)一步包括被配置為接收所述隨機(jī)數(shù)的端口。
5.根據(jù)權(quán)利要求
1到4任意一項(xiàng)的微控制器,其中所述CPU執(zhí)行所述程序組,從而將利用所述第二加密密鑰加密的所述隨機(jī)數(shù)與從外部設(shè)備接收到的一加密的隨機(jī)數(shù)進(jìn)行比較,并輸出該比較結(jié)果。
6.根據(jù)權(quán)利要求
1到4任意一項(xiàng)的微控制器,其中所述程序存儲(chǔ)器和ID存儲(chǔ)部分是由非易失存儲(chǔ)器構(gòu)成的。
7.根據(jù)權(quán)利要求
6的微控制器,進(jìn)一步包括控制部分,其被配置為響應(yīng)于向所述程序存儲(chǔ)器的程序?qū)懭胝?qǐng)求,對(duì)所述程序存儲(chǔ)器執(zhí)行擦除操作和寫(xiě)入操作,以及其中當(dāng)對(duì)所述程序存儲(chǔ)器執(zhí)行所述擦除操作時(shí),所述控制部分將所述標(biāo)識(shí)數(shù)據(jù)從所述ID存儲(chǔ)部分中擦除。
8.根據(jù)權(quán)利要求
1到4任意一項(xiàng)的微控制器,其中所述程序組包括第一加密密鑰提供程序,其用于提供所述第一加密密鑰;第二加密密鑰生成程序,其用于獲得所述第一加密密鑰和所述標(biāo)識(shí)數(shù)據(jù),并根據(jù)所述第一加密密鑰和所述標(biāo)識(shí)數(shù)據(jù)生成所述第二加密密鑰;以及加密程序,其用于利用所述第二加密密鑰對(duì)所述隨機(jī)數(shù)進(jìn)行加密。
9.根據(jù)權(quán)利要求
8的微控制器,其中所述程序組進(jìn)一步包括比較程序,其用于將利用所述第二加密密鑰進(jìn)行加密的所述隨機(jī)數(shù)與從外部設(shè)備接收到的一加密的隨機(jī)數(shù)進(jìn)行比較,并輸出比較結(jié)果。
10.一種第一和第二微控制器之間的鑒別方法,包括通過(guò)執(zhí)行存儲(chǔ)在所述第一微控制器的第一程序存儲(chǔ)器中的第一加密密鑰提供程序來(lái)提供第一加密密鑰;在所述第一微控制器的第一標(biāo)識(shí)(ID)存儲(chǔ)部分中保存所述第一微控制器所特有的第一標(biāo)識(shí)數(shù)據(jù);根據(jù)所述第一標(biāo)識(shí)數(shù)據(jù)和所述第一加密密鑰,在所述第一微控制器中產(chǎn)生第二加密密鑰;利用在所述第一微控制器中的所述第二加密密鑰對(duì)隨機(jī)數(shù)進(jìn)行加密以產(chǎn)生第一加密隨機(jī)數(shù);從所述第二微控制器接收第二加密隨機(jī)數(shù);以及對(duì)所述第一加密隨機(jī)數(shù)和所述第二加密隨機(jī)數(shù)進(jìn)行比較以便輸出比較結(jié)果。
11.根據(jù)權(quán)利要求
10的鑒別方法,進(jìn)一步包括從所述第一程序存儲(chǔ)器讀取所述隨機(jī)數(shù)。
12.根據(jù)權(quán)利要求
11的鑒別方法,進(jìn)一步包括生成所述隨機(jī)數(shù)以存儲(chǔ)在所述第一程序存儲(chǔ)器中。
13.根據(jù)權(quán)利要求
12的鑒別方法,其中所述生成所述隨機(jī)數(shù)的步驟包括執(zhí)行存儲(chǔ)在所述第一程序存儲(chǔ)器中的隨機(jī)數(shù)生成程序從而生成所述隨機(jī)數(shù)。
14.根據(jù)權(quán)利要求
10的鑒別方法,其中所述程序存儲(chǔ)器和所述ID存儲(chǔ)部分是由非易失存儲(chǔ)器構(gòu)成的,以及所述微控制器進(jìn)一步包括響應(yīng)于向第一程序存儲(chǔ)器的程序?qū)懭胝?qǐng)求,對(duì)所述第一程序存儲(chǔ)器執(zhí)行擦除操作和寫(xiě)入操作;以及響應(yīng)于該寫(xiě)入請(qǐng)求對(duì)所述ID存儲(chǔ)部分執(zhí)行所述擦除操作。
15.根據(jù)權(quán)利要求
10到14任意一項(xiàng)的鑒別方法,進(jìn)一步包括通過(guò)執(zhí)行存儲(chǔ)在所述第二微控制器的第二程序存儲(chǔ)器中的第二加密密鑰提供程序來(lái)提供第三加密密鑰;在所述第二微控制器的第二標(biāo)識(shí)(ID)存儲(chǔ)部分中保存所述第二微控制器特有的第二標(biāo)識(shí)數(shù)據(jù);根據(jù)所述第二標(biāo)識(shí)數(shù)據(jù)和所述第三加密密鑰,在所述第二微控制器中產(chǎn)生第四加密密鑰;利用在所述第二微控制器中的所述第四加密密鑰,對(duì)來(lái)自所述第一微控制器的所述隨機(jī)數(shù)進(jìn)行加密,從而產(chǎn)生所述第二加密隨機(jī)數(shù);以及將所述第二加密隨機(jī)數(shù)發(fā)送給所述第一微控制器。
16.根據(jù)權(quán)利要求
15的鑒別方法,進(jìn)一步包括當(dāng)包含所述第二微控制器的裝置被安裝到包含所述第一微控制器的裝置時(shí)向所述第二微控制器提供電能,其中在向所述第二微控制器提供了電能之后再執(zhí)行所述提供第三加密密鑰的步驟。
17.根據(jù)權(quán)利要求
10到14任意一項(xiàng)的鑒別方法,進(jìn)一步包括通過(guò)執(zhí)行存儲(chǔ)在所述第二微控制器的第二程序存儲(chǔ)器中的第二加密密鑰提供程序來(lái)提供第三加密密鑰;在所述第二微控制器的第二標(biāo)識(shí)(ID)存儲(chǔ)部分中保存所述第二微控制器特有的第二標(biāo)識(shí)數(shù)據(jù);根據(jù)所述第二標(biāo)識(shí)數(shù)據(jù)和所述第三加密密鑰,在所述第二微控制器中產(chǎn)生第四加密密鑰;利用在所述第二微控制器中的所述第四加密密鑰對(duì)來(lái)自所述第一微控制器的所述隨機(jī)數(shù)進(jìn)行加密,從而產(chǎn)生所述第二加密隨機(jī)數(shù);以及將所述第二加密隨機(jī)數(shù)發(fā)送給所述第一微控制器。
18.根據(jù)權(quán)利要求
17的鑒別方法,進(jìn)一步包括當(dāng)包含所述第二微控制器的裝置被安裝到包含所述第一微控制器的裝置時(shí),向所述第一微控制器提供電能,其中在向所述第一微控制器提供了電能之后再執(zhí)行所述提供第一加密密鑰的步驟。
專利摘要
本發(fā)明涉及一種微控制器和這些控制器之間的鑒別方法。所述微控制器包括程序存儲(chǔ)器,其被配置為存儲(chǔ)程序組和第一加密密鑰;CPU;以及標(biāo)識(shí)(ID)存儲(chǔ)部分,該標(biāo)識(shí)存儲(chǔ)部分被配置為對(duì)微控制器的用戶所特有的標(biāo)識(shí)數(shù)據(jù)進(jìn)行存儲(chǔ)。CPU根據(jù)所述標(biāo)識(shí)數(shù)據(jù)和第一加密密鑰執(zhí)行程序組以生成第二加密密鑰,并且利用第二加密密鑰對(duì)隨機(jī)數(shù)進(jìn)行加密。
文檔編號(hào)H04L9/14GK1996837SQ200610172481
公開(kāi)日2007年7月11日 申請(qǐng)日期2006年12月31日
發(fā)明者木村俊夫, 小澤直史 申請(qǐng)人:恩益禧電子股份有限公司導(dǎo)出引文BiBTeX, EndNote, RefMan
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
盘山县| 章丘市| 仁寿县| 闽清县| 邵东县| 西充县| 宜章县| 永新县| 平远县| 遂昌县| 米脂县| 东乌| 汉寿县| 伊春市| 乌苏市| 宁远县| 石门县| 建德市| 章丘市| 隆尧县| 凤阳县| 齐齐哈尔市| 苗栗市| 家居| 丹寨县| 滨州市| 灵台县| 长宁县| 贡觉县| 三都| 阳新县| 那坡县| 维西| 华宁县| 庆城县| 郓城县| 石家庄市| 关岭| 泰顺县| 财经| 金门县|