用于傳送數(shù)據(jù)位序列的處理器布置和方法
【專利摘要】本發(fā)明提供了一種用于傳送數(shù)據(jù)位序列的處理器布置和方法。該處理器布置包括:第一處理器;多個(gè)第二處理器,每個(gè)第二處理器包括被配置成生成處理器特定位掩碼序列的位掩碼發(fā)生器;其中,所述第一處理器包括被配置成生成第二處理器的處理器特定位掩碼序列的位掩碼發(fā)生器;其中,所述第一處理器被配置成使用所述多個(gè)第二處理器中的一個(gè)第二處理器所特定的處理器特定位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼,以從而生成將被傳送至一個(gè)第二處理器的處理器特定的被加位掩碼的數(shù)據(jù)序列。
【專利說(shuō)明】用于傳送數(shù)據(jù)位序列的處理器布置和方法
【技術(shù)領(lǐng)域】
[0001]各種實(shí)施例一般地涉及用于傳送數(shù)據(jù)位序列的處理器布置和方法。
【背景技術(shù)】
[0002]智能卡可以經(jīng)由總線系統(tǒng)在CPU核與外圍設(shè)備之間傳送數(shù)據(jù)。必須針對(duì)諸如間諜行為的攻擊對(duì)數(shù)據(jù)進(jìn)行保護(hù)。出于這些目的,為數(shù)據(jù)提供動(dòng)態(tài)掩碼。外圍設(shè)備上的成功的外部攻擊可以使得例如通過(guò)錯(cuò)誤歸納法來(lái)操縱外圍設(shè)備、以使得外圍設(shè)備可以接受并非意圖用于此外圍設(shè)備的某些數(shù)據(jù)成為可能。此外,可以從數(shù)據(jù)去除動(dòng)態(tài)掩碼。因此,對(duì)于攻擊者來(lái)說(shuō)在該操縱期間查看數(shù)據(jù)是可能的。到目前為止,還不知道預(yù)防這一點(diǎn)的已知實(shí)際方法。
【發(fā)明內(nèi)容】
[0003]各種實(shí)施例提供了一種處理器布置,包括:第一處理器;多個(gè)第二處理器;每個(gè)第二處理器包括被配置成生成處理器特定位掩碼序列的位掩碼發(fā)生器;其中,第一處理器包括被配置成生成第二處理器的處理器特定位掩碼序列的位掩碼發(fā)生器;其中,第一處理器被配置成使用所述多個(gè)第二處理器中的一個(gè)第二處理器所特定的處理器特定位掩碼序列對(duì)要被傳送到所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼,以便從而生成將被傳送至所述一個(gè)第二處理器的處理器特定的被加位掩碼的數(shù)據(jù)序列。
【專利附圖】
【附圖說(shuō)明】
[0004]在附圖中,相似的參考表號(hào)貫穿不同的視圖一般指示相同的部分。附圖不一定是按比例繪制的,而是一般地著重于圖示本發(fā)明的原理。在以下描述中,參考以下各圖來(lái)描述本發(fā)明的各種實(shí)施例,在所述附圖中:
圖1示出了根據(jù)一個(gè)實(shí)施例的處理器布置;
圖2示出了根據(jù)一個(gè)實(shí)施例的處理器布置;
圖3示出了根據(jù)一個(gè)實(shí)施例的處理器布置;
圖4示出了根據(jù)一個(gè)實(shí)施例的處理器布置;
圖5示出了根據(jù)一個(gè)實(shí)施例的用于傳送數(shù)據(jù)位序列的方法。
【具體實(shí)施方式】
[0005]下面的詳細(xì)描述參考以例證的方式示出特定細(xì)節(jié)和其中可以實(shí)施本發(fā)明的實(shí)施例的附圖。
[0006]詞語(yǔ)“示例性”在本文中用來(lái)意指“充當(dāng)示例、實(shí)例或例證”。不一定要將在本文中被描述為“示例性”的任何實(shí)施例或設(shè)計(jì)理解為相對(duì)于其他實(shí)施例或設(shè)計(jì)是優(yōu)選的或有利的。
[0007]各種實(shí)施例提供了處理器布置,其中,可以防止外圍從屬電路上的間諜行為和/或攻擊。
[0008]圖1示出了根據(jù)一個(gè)實(shí)施例的處理器布置102。
[0009]處理器布置102可以包括:第一處理器104 ;多個(gè)第二處理器106a、106b、106c,每個(gè)第二處理器106a、106b、106c包括被配置成生成處理器特定位掩碼序列MGa、MGb、MGc的位掩碼發(fā)生器108a、108b、108c ;其中,第一處理器104可以包括被配置成生成第二處理器106a、106b、106c的處理器特定位掩碼序列MGa、MGb、MGc的位掩碼發(fā)生器112 ;其中,可以將第一處理器104可被配置成使用所述多個(gè)第二處理器106a、106b、106c中的一個(gè)第二處理器、例如106b所特定的處理器特定位掩碼序列、例如MGb對(duì)將被傳送至所述一個(gè)第二處理器、例如106b的數(shù)據(jù)位序列BS加位掩碼,以便從而生成將被傳送至所述一個(gè)第二處理器、例如106b的處理器特定的被加位掩碼的數(shù)據(jù)序列BSMGb。
[0010]可以理解的是,雖然在圖1中僅示出了三個(gè)第二處理器106a、106b、106c,但多個(gè)第二處理器可以不局限于三個(gè),而是可以包括例如一個(gè)、兩個(gè)、三個(gè)等,或者幾十個(gè)或幾百個(gè)或者甚至更多的第二處理器,其中,處理器的數(shù)目的上限可以例如取決于系統(tǒng)尺寸。
[0011]還可以理解的是,雖然在圖1中作為示例將所述一個(gè)第二處理器示為是一個(gè)第二處理器106b,但可以理解的是,一個(gè)第二處理器可以指代任何一個(gè)第二處理器,例如106a或者例如106c。換言之,例如,可以將第一處理器104配置成使用多個(gè)第二處理器106a、106b、106c中的一個(gè)第二處理器、例如106a所特定的處理器特定位掩碼序列、例如MGa對(duì)將被發(fā)送到所述一個(gè)第二處理器、例如106a的數(shù)據(jù)位序列BS加位掩碼,以便從而生成將被傳送至所述一個(gè)第二處理器、例如106a的處理器特定的被加位掩碼的數(shù)據(jù)序列BSMGa。
[0012]圖2示出了根據(jù)一個(gè)實(shí)施例的處理器布置202。
[0013]處理器布置202可以包括如已針對(duì)圖1的實(shí)施例所述的第一處理器104。第一處理器104可以包括中央處理單元(CPU)。例如,第一處理器104可以包括CPU核。
[0014]處理器布置202可以包括多個(gè)第二處理器106a、106b、106c、106d,每個(gè)第二處理器106a、106b、106c、106d包括如已針對(duì)圖1的實(shí)施例所述的位掩碼發(fā)生器108a、108b、108c、108d。
[0015]可以經(jīng)由一個(gè)或多個(gè)總線線路214來(lái)連接第一處理器104和多個(gè)第二處理器106a、106b、106c、106d。第一處理器104可以包括控制器電路,其可以被配置成向多個(gè)第二處理器106a、106b、106c、106d發(fā)送控制器電路指令。第一處理器104可以包括主處理電路且多個(gè)第二處理器106a、106b、106c、106d可以每個(gè)均包括從屬處理電路。
[0016]多個(gè)第二處理器106a、106b、106c、106d中的每個(gè)第二處理器106a、106b、106c、106d可以包括位掩碼發(fā)生器108a、108b、108c、108d。例如,一個(gè)第二處理器、例如106a可以包括一個(gè)位掩碼發(fā)生器,例如108a。例如,一個(gè)第二處理器、例如106b可以包括一個(gè)位掩碼發(fā)生器,例如108b,等等。
[0017]可以將每個(gè)位掩碼發(fā)生器108a、108b、108c、108d配置成生成處理器特定位掩碼序列MGa、MGb、MGc、MGd。例如,可以將一個(gè)位掩碼發(fā)生器108a配置成生成處理器特定位掩碼序列,例如MGa。例如,可以將位掩碼發(fā)生器108b配置成生成處理器特定位掩碼序列,例如,MGb,等等。
[0018]處理器特定位掩碼序列可以指代如下位掩碼序列:所述位掩碼序列可以是已生成位掩碼序列的處理器所獨(dú)有的和/或其可以是已經(jīng)被分配位掩碼序列以供使用的處理器所獨(dú)有的。例如,第一處理器104可以包括被配置成生成第二處理器106a、106b、106c、106d的處理器特定位掩碼序列MGa、MGb、MGc, MGd的位掩碼發(fā)生器212。換言之,可以將位掩碼發(fā)生器212配置成生成相同的位掩碼序列MGa、MGb、MGc, MGd,例如相同處理器特定位掩碼序列,其與由第二處理器106a、106b、106c、106d和/或在其內(nèi)部生成的那些相同,或者可以將其指定為被第二處理器使用,例如可以將其分配給第二處理器106a、106b、106c、106d的特定處理器以供使用而不是分配給除已被分配的處理器之外的任何其他處理器。
[0019]可以將第一處理器104配置成使用多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器所特定的處理器特定位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器的數(shù)據(jù)位序列BS加位掩碼,以便從而生成將被傳送至所述一個(gè)第二處理器的處理器特定的被加位掩碼的數(shù)據(jù)序列。例如,可以將第一處理器104配置成使用多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器、例如106a所特定的處理器特定位掩碼序列MGa對(duì)將被發(fā)送到所述一個(gè)第二處理器106a的數(shù)據(jù)位序列、例如BS加位掩碼,以便從而生成將被傳送至所述一個(gè)第二處理器106a的處理器特定的被加位掩碼的數(shù)據(jù)序列BSMGa。在這種情況下,可以理解的是,處理器特定位掩碼序列MGa可以是所述一個(gè)第二處理器106a所特定的,因?yàn)橄嗤奶囟ㄎ谎诖a序列MGa可以由所述一個(gè)第二處理器106a、而不是任何其他第二處理器、例如106b、106c、106d生成和使用,該任何其他第二處理器可以生成它們自己的處理器特定位掩碼序列,例如MGb、MGc、MGd。作為另一不例,可以將第一處理器104配置成使用多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器106b所特定的處理器特定位掩碼序列MGb對(duì)將被發(fā)送到所述一個(gè)第二處理器106b的數(shù)據(jù)位序列、例如BS加位掩碼,以便從而生成將被傳送至所述一個(gè)第二處理器106b的處理器特定的被加位掩碼的數(shù)據(jù)序列BSMGb。該不例可以適用于多個(gè)第二處理器106a、106b、106c、106d等中的每一個(gè)第二處理器。
[0020]換言之,借助于可從總線主機(jī)、即第一處理器104選擇的各個(gè)掩碼,例如各個(gè)掩碼序列MGa、MGb、MGc、MGd,可以例如用掩碼序列MGa、MGb、MGc、MGd單獨(dú)地對(duì)從屬數(shù)據(jù)加掩碼。掩碼數(shù)據(jù)BSMGa可以到達(dá)接收機(jī),例如第二處理器106a,并且可以向數(shù)據(jù)倉(cāng)(未示出)發(fā)送通過(guò)未授權(quán)從屬、例如106b去掩碼的任何嘗試。只有所選從屬106a可以生成(例如在內(nèi)部生成)正確的掩碼,以便成功地將數(shù)據(jù)去掩碼。
[0021]可以將第一處理器014配置成使用所述一個(gè)第二處理器的處理器特定位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼;并使用另一第二處理器的另一處理器特定位掩碼序列對(duì)將被傳送至所述另一第二處理器的數(shù)據(jù)位序列加位掩碼。例如,可以將第一處理器104配置成使用一個(gè)第二處理器106b的處理器特定位掩碼序列MGa對(duì)將被傳送至一個(gè)第二處理器106a的數(shù)據(jù)位序列、例如數(shù)據(jù)位序列BSl加位掩碼;并且使用另一第二處理器106b的另一處理器特定位掩碼序列MGb對(duì)將被傳送至所述另一第二處理器106b的數(shù)據(jù)位序列、例如數(shù)據(jù)位序列BS2加位掩碼。
[0022]可以將一個(gè)第二處理器配置成接收用所述一個(gè)第二處理器所特定的處理器特定位掩碼序列加位掩碼的特定的被加位掩碼的數(shù)據(jù)序列,并使用所述一個(gè)第二處理器所特定的處理器特定位掩碼序列來(lái)檢索數(shù)據(jù)位序列。例如,可以將一個(gè)第二處理器106a配置成接收特定的被加位掩碼的數(shù)據(jù)序列BSlMGa (其可能已被用所述一個(gè)第二處理器106a所特定的處理器特定位掩碼序列MGa加位掩碼),并使用所述一個(gè)第二處理器106a所特定的處理器特定位掩碼序列MGa來(lái)檢索數(shù)據(jù)位序列BS1。由于位掩碼序列MGa是一個(gè)第二處理器106a所特定的,即僅一個(gè)第二處理器106a可訪問(wèn)位掩碼序列MGa,所以僅一個(gè)第二處理器106a可以通過(guò)使用處理器特定位掩碼序列MGa檢索數(shù)據(jù)位序列BSl來(lái)對(duì)特定的被加位掩碼的數(shù)據(jù)序列BSlMGa進(jìn)行去掩碼。作為另一示例,可以將另一第二處理器106b配置成接收被用所述另一第二處理器106b所特定的處理器特定位掩碼序列MGb加位掩碼的特定的被加位掩碼的數(shù)據(jù)序列BS2MGb,并且使用所述另一第二處理器106b所特定的處理器特定位掩碼序列MGb來(lái)檢索數(shù)據(jù)位序列BS2。由于位掩碼序列MGb是另一第二處理器106b所特定的,即僅另一第二處理器106b可訪問(wèn)位掩碼序列MGb,所以僅另一第二處理器106a可以通過(guò)使用處理器特定位掩碼序列MGb檢索數(shù)據(jù)位序列BS2,來(lái)對(duì)特定的被加位掩碼的數(shù)據(jù)序列BSlMGb進(jìn)行去掩碼。
[0023]可以防止沒(méi)有一個(gè)第二處理器所特定的處理器特定位掩碼序列MGa的另一第二處理器從被用一個(gè)第二處理器所特定的處理器特定位掩碼序列加位掩碼的特定的被加位掩碼的數(shù)據(jù)序列檢索數(shù)據(jù)位序列。例如,可以防止沒(méi)有一個(gè)第二處理器106a所特定的處理器特定位掩碼序列MGa的另一第二處理器106b從被用一個(gè)第二處理器106a所特定的處理器特定位掩碼序列MGa加位掩碼的特定的被加位掩碼的數(shù)據(jù)序列BSlMGa檢索數(shù)據(jù)位序列BS1。
[0024]可以理解的是,處理器特定位掩碼序列MGa可以不同于另一處理器特定位掩碼序列MGb,使得每個(gè)處理器特定位掩碼序列相對(duì)于另一個(gè)可以是唯一的。因此,通過(guò)使用各個(gè)掩碼,可以防止經(jīng)由否則可以自由地分發(fā)關(guān)鍵數(shù)據(jù)的總線的另一從屬的攻擊,因?yàn)樵摴舨荒荛_(kāi)始,也不能檢測(cè)數(shù)據(jù)的相關(guān)性。
[0025]正常地,可以經(jīng)由總線系統(tǒng)將多個(gè)外圍設(shè)備作為從屬連接到主機(jī)(master)。例如,可以經(jīng)由例如總線線路214的總線系統(tǒng)將諸如多個(gè)第二處理器106a、106b、106c、106d的多個(gè)外圍設(shè)備作為從屬連接到例如處理器104的主機(jī)。因此,處理器布置102可以包括來(lái)自單個(gè)主系統(tǒng)的多從屬總線。
[0026]根據(jù)一個(gè)實(shí)施例,如圖2中所示,第一處理器104可以包括位掩碼發(fā)生器212,其中,位掩碼發(fā)生器212可以包括一個(gè)或多個(gè)移位寄存器212a、212b、212c、212d、212e。
[0027]第一處理器104可以包括位掩碼發(fā)生器212,其中,位掩碼發(fā)生器212可以包括被配置成生成第二處理器106a、106b、106c、106d的處理器特定位掩碼序列MGa、MGb、MGc、MGd的一個(gè)或多個(gè)移位寄存器212a、212b、212c、212d、212e。
[0028]可以將所述一個(gè)或多個(gè)移位寄存器212a、212b、212c、212d、212e的每個(gè)移位寄存器配置成生成多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器所特定的處理器特定位掩碼序列。例如,可以將多個(gè)移位寄存器212a、212b、212c、212d、212e中的一個(gè)移位寄存器212a配置成生成多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器106a所特定的處理器特定位掩碼序列MGa。例如,可以將移位寄存器、例如212a配置成生成位掩碼序列MGa,其可以是多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器106a所特定的。作為另一示例,可以將移位寄存器、例如212b配置成生成位掩碼序列MGb,其可以是多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器106b所特定的。
[0029]多個(gè)第二處理器106a、106b、106c、106d中的每一個(gè)可以包括位掩碼發(fā)生器108a、108b、108c、108d,其中,每個(gè)位掩碼發(fā)生器108a、108b、108c、108d可以包括被配置成生成處理器特定位掩碼序列MGa、MGb、MGc、MGd的移位寄存器。例如,多個(gè)第二處理器中的每一個(gè)、例如第二處理器106a可以包括位掩碼發(fā)生器,例如位掩碼發(fā)生器108a。例如,每個(gè)位掩碼發(fā)生器、例如位掩碼發(fā)生器108a可以包括被配置成生成處理器特定位掩碼序列、例如MGa的移位寄存器。多個(gè)第二處理器中的每一個(gè)、例如第二處理器106a可以包括位掩碼發(fā)生器,例如位掩碼發(fā)生器108a。作為另一示例,另一第二處理器、例如106b可以包括另一位掩碼發(fā)生器,例如位掩碼發(fā)生器108b,其可以包括被配置成生成另一處理器特定位掩碼序列、例如MGb的移位寄存器。
[0030]圖3示出了根據(jù)一個(gè)實(shí)施例的處理器布置302。
[0031]處理器布置302可以包括:第一處理器104 ;多個(gè)第二處理器106a、106b、106c、106d,每個(gè)第二處理器106a、106b、106c、106d包括被配置成生成處理器特定位掩碼序列MGa、MGb、MGc、MGd的位掩碼發(fā)生器(未示出,參見(jiàn)例如圖2中的位掩碼發(fā)生器108a_108d);其中,第一處理器104可以包括位掩碼發(fā)生器312NG,其被配置成生成第二處理器106a、106b、106c、106d的處理器特定位掩碼序列MGa、MGb、MGc、MGd ;其中,可以將第一處理器104配置成使用多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器所特定的處理器特定位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器的數(shù)據(jù)位序列BS加位掩碼,以從而生成將被傳送至所述一個(gè)第二處理器的處理器特定的被加位掩碼的數(shù)據(jù)序列。
[0032]處理器布置302可以包括已針對(duì)處理器布置102、202所述的特征中的一個(gè)或多個(gè)或者全部,不同的是根據(jù)一個(gè)實(shí)施例,第一處理器104可以包括位掩碼發(fā)生器312NG,其中,位掩碼發(fā)生器312NG可以包括真隨機(jī)數(shù)發(fā)生器(TRNG)。根據(jù)另一實(shí)施例,第一處理器104可以包括位掩碼發(fā)生器312NG,其中,位掩碼發(fā)生器312NG可以包括偽隨機(jī)數(shù)發(fā)生器(PRNG)。
[0033]第一處理器104可以包括位掩碼發(fā)生器312NG,例如TRNG,或者例如PRNG,位掩碼發(fā)生器312NG被配置成生成多個(gè)不同的處理器特定位掩碼序列MGa、MGb、MGc、MGd,其中,可以將第一處理器104配置成將所述多個(gè)第二處理器中的一個(gè)第二處理器所特定的處理器特定位掩碼序列傳送至所述多個(gè)第二處理器中的所述一個(gè)第二處理器,并且將所述多個(gè)第二處理器中的另一第二處理器所特定的另一處理器特定位掩碼序列傳送至所述多個(gè)第二處理器中的所述另一第二處理器。例如,可以將第一處理器104配置成將多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器106a所特定的處理器特定位掩碼序列MGa傳送至多個(gè)第二處理器106a、106b、106c、106d中的所述一個(gè)第二處理器106a,并將多個(gè)第二處理器106a、106b、106c、106d中的另一第二處理器106b所特定的另一處理器特定位掩碼序列MGb傳送至所述多個(gè)第二處理器106a、106b、106c、106d中的所述另一第二處理器106b??梢岳斫獾氖?,所傳送的處理器特定位掩碼序列僅可以被特定選擇的第二處理器使用而不可以被任何其他的另一第二處理器使用。換言之,可以將第一處理器104配置成將多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器106a所特定的處理器特定位掩碼序列MGa傳送至所述一個(gè)第二處理器106a而不是任何其他第二處理器,例如106b、106c、106d,并將多個(gè)第二處理器106a、106b、106c、106d中的另一第二處理器106b所特定的另一處理器特定位掩碼序列MGb傳送至所述另一第二處理器106b而不是任何其他處理器,例如106a、106c、106d。
[0034]可以將一個(gè)第二處理器配置成接收并存儲(chǔ)處理器特定位掩碼序列,并且可以將來(lái)自所述多個(gè)第二處理器的另一第二處理器配置成接收并存儲(chǔ)另一處理器特定位掩碼序列。例如,可以將一個(gè)第二處理器106a配置成接收并存儲(chǔ)處理器特定位掩碼序列MGa,并且可以將另一第二處理器106b配置成接收并存儲(chǔ)另一處理器特定位掩碼序列MGb。
[0035]在處理器特定位掩碼序列MGa存儲(chǔ)在一個(gè)第二處理器106a中且另一處理器特定位掩碼序列MGb存儲(chǔ)在另一第二處理器106b中的情況下,還可以將一個(gè)第二處理器106a配置成接收特定的被加位掩碼的數(shù)據(jù)序列BSlMGa,其可能已被第一處理器104使用處理器特定位掩碼序列MGa加位掩碼,并且可以將一個(gè)第二處理器106a配置成使用一個(gè)第二處理器106a所特定的處理器特定位掩碼序列MGa來(lái)檢索數(shù)據(jù)位序列BSl,其中,處理器特定位掩碼序列MGa可能已被從處理器104傳送至一個(gè)第二處理器106a,并且其中,處理器特定位掩碼序列MGa可以是一個(gè)第二處理器106a所特定的。此外,可以將另一第二處理器106b配置成接收特定的被加位掩碼的數(shù)據(jù)序列BS2MBb,其可能已被第一處理器104使用處理器特定位掩碼序列MGb加位掩碼,并且可以將另一第二處理器106b配置成使用另一第二處理器106b所特定的處理器特定位掩碼序列MGb來(lái)檢索數(shù)據(jù)位序列BS2,其中,處理器特定位掩碼序列MGa可能已被從處理器104傳送至另一第二處理器106b,并且其中,處理器特定位掩碼序列MGb可能是另一第二處理器106b所特定的。
[0036]根據(jù)一個(gè)實(shí)施例,多個(gè)第二處理器106a、106b、106c、106d中的每一個(gè)可以包括存儲(chǔ)器316a、316b、316c、316d,其被配置成存儲(chǔ)接收到的處理器特定位掩碼序列MGa、MGb、MGc、MGd。根據(jù)另一實(shí)施例,多個(gè)第二處理器106a、106b、106c、106d中的每一個(gè)可以包括被配置成存儲(chǔ)接收到的處理器特定位掩碼序列的地址空間。
[0037]第一處理器104可以可選地包括存儲(chǔ)器318,其被配置成存儲(chǔ)生成的多個(gè)不同的處理器特定位掩碼序列MGa、MGb、MGc、MGd??梢越?jīng)由一個(gè)或多個(gè)總線線路、例如214 (例如214a)將多個(gè)不同的處理器特定位掩碼序列MGa、MGb、MGc、MGd從存儲(chǔ)器318傳送至特定的多個(gè)第二處理器 106a、106b、106c、106d。
[0038]可以理解的是,根據(jù)各種實(shí)施例,已針對(duì)圖1至3描述的實(shí)施例甚至可以包括以一組特定的第二處理器為目標(biāo)。到目前為止,已將處理器特定序列示為包括可以僅僅是一個(gè)第二處理器所特定的位掩碼序列。例如,可以將第一處理器104配置成傳送多個(gè)第二處理器106a、106b、106c、106d中的一個(gè)第二處理器106a所特定的處理器特定位掩碼序列MGa ;換言之,是到一個(gè)第二處理器106a而不是到任何其他第二處理器,例如106b、106c、106d。然而,可以理解的是,根據(jù)其他實(shí)施例,處理器特定位掩碼序列可以是特定的一組第二處理器所特定的,指定的一組第二處理器包括一個(gè)或多個(gè)第二處理器。例如,可以將第一處理器104配置成傳送多個(gè)第二處理器106a、106b、106c、106d中的一組第二處理器106a、106b所特定的處理器特定位掩碼序列MGab。換言之,例如通過(guò)生成相同的位掩碼序列MGab或者接收并存儲(chǔ)可以從第一處理器104被傳送的位掩碼序列MGab,可以僅分配指定的一組第二處理器106a、106b使用特定位掩碼序列MGab??梢岳斫獾氖?,可能只有指定的一組第二處理器106a、106b能夠使用處理器特定位掩碼序列MGab來(lái)檢索該數(shù)據(jù)序列。
[0039]圖4示出了根據(jù)一個(gè)實(shí)施例的處理器布置402。
[0040]處理器布置402可以包括已針對(duì)處理器布置102、202、302描述的特征中的一個(gè)或多個(gè)或者全部,不同的是位掩碼發(fā)生器412可以包括移位寄存器。移位寄存器412可以包括多個(gè)輸出端,其可以被硬接線以產(chǎn)生多個(gè)不同的處理器特定位掩碼序列MGa、MGb、MGc、MGd。可以將不同的處理器特定位掩碼序列MGa、MGb、MGc、MGd中的每個(gè)傳送至所述多個(gè)第二處理器106a、106b、106c、106d中的特定第二處理器,其中,它們中的每個(gè)可以被存儲(chǔ)在所述多個(gè)第二處理器106a、106b、106c、106d中。根據(jù)其他實(shí)施例,作為將位掩碼序列MGa、MGb、MGc> MGd傳送至所述多個(gè)第二處理器的替代,多個(gè)第二處理器106a、106b、106c、106d可以包括位掩碼發(fā)生器(未示出),例如,其還可以包括被硬接線以產(chǎn)生所述多個(gè)不同的處理器特定位掩碼序列MGa、MGb、MGc、MGd的移位寄存器。
[0041]根據(jù)各種實(shí)施例,例如,可以將已針對(duì)處理器布置102、202、302、402、第一處理器104和多個(gè)第二處理器106a、106b、106c、106d所述的實(shí)施例集成在單個(gè)設(shè)備中。可以將第一處理器104和多個(gè)第二處理器106a、106b、106c、106d集成在芯片卡設(shè)備中,例如根據(jù)IS0/IEC 7810的智能卡。第一處理器104可以包括發(fā)射機(jī)422,其被配置成將處理器特定的被加位掩碼的數(shù)據(jù)序列傳送至所述一個(gè)第二處理器;并且多個(gè)第二處理器106a、106b、106c、106d可以包括接收機(jī)424,其被配置成從第一處理器接收第二處理器特定的被加位掩碼的數(shù)據(jù)序列。雖然僅在處理器布置402中示出了發(fā)射機(jī)-接收機(jī),但可以理解的是,也可以將它們包括在處理器布置102、202、302中。
[0042]各種實(shí)施例、例如已針對(duì)圖1至4中的處理器布置102、202、302、402所述的實(shí)施例示出了單主機(jī)多從屬總線系統(tǒng)(處理器布置102、202、302、402)的構(gòu)造,其中,可以經(jīng)由不同的掩碼發(fā)生器、例如108a、108b、108c、108d和112a、112b、112c、112d來(lái)應(yīng)用從屬單獨(dú)掩碼。每個(gè)從屬、例如每個(gè)第二處理器106可以相應(yīng)地屬于發(fā)生器,例如位掩碼發(fā)生器,其可以使掩碼生成同步(如圖2中的實(shí)施例中所示)??梢栽趶囊话阋莆患拇嫫鬟M(jìn)行的非常簡(jiǎn)單的執(zhí)行中生成掩碼發(fā)生器。例如,每個(gè)掩碼發(fā)生器可以是具有其自己的多項(xiàng)式(如圖2中所示)的其自己的移位寄存器。替換地,可以通過(guò)移位寄存器的不同排列(如圖4中的實(shí)施例中所示)來(lái)生成各個(gè)掩碼。替換地,可以使用數(shù)發(fā)生器、例如TRNG、例如PRNG來(lái)生成其自己的多項(xiàng)式(如圖3中所示)。
[0043]如圖2和4中所示,可以選擇附加掩碼、例如MGe以向?qū)Φ刂房臻g的未使用區(qū)域的訪問(wèn)提供單獨(dú)的掩碼。結(jié)果,數(shù)據(jù)僅作為數(shù)據(jù)垃圾而到達(dá)從屬處,例如可以用位序列MGe來(lái)對(duì)數(shù)據(jù)加掩碼,MGe可以被用于對(duì)數(shù)據(jù)垃圾加掩碼。當(dāng)存在鄰近于使用掩碼的從屬的、不使用掩碼數(shù)據(jù)進(jìn)行工作的從屬時(shí),其可能是特別關(guān)鍵的。因此,在最初可能已被分配給不再存在的安全從屬的地址上的攻擊可以保持沒(méi)有結(jié)果,因?yàn)閿?shù)據(jù)被發(fā)送到垃圾站。
[0044]圖5示出了根據(jù)一個(gè)實(shí)施例的用于傳送數(shù)據(jù)位序列的方法500。
[0045]方法500可以包括:
由多個(gè)第二處理器位掩碼發(fā)生器中的每一個(gè)生成處理器特定位掩碼序列(在510中); 由第一處理器位掩碼發(fā)生器生成第二處理器電路的處理器特定位掩碼序列(在520
中);
由第一處理器使用多個(gè)第二處理器中的一個(gè)第二處理器所特定的處理器特定位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼,以從而生成將被傳送至所述一個(gè)第二處理器的處理器特定的被加位掩碼的數(shù)據(jù)序列(在530中)。
[0046]各種實(shí)施例提供了一種處理器布置,包括:第一處理器電路;多個(gè)第二處理器電路,所述多個(gè)第二處理器電路中的每一個(gè)包括被配置成生成處理器特定位掩碼序列的位掩碼發(fā)生電路;其中,第一處理器電路包括被配置成生成第二處理器電路的處理器特定位掩碼序列的位掩碼發(fā)生電路;其中,第一處理器電路被配置成使用所述多個(gè)第二處理器中的一個(gè)第二處理器電路所特定的位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器電路的數(shù)據(jù)位序列加位掩碼,以從而生成將被傳送至所述一個(gè)第二處理器電路的處理器電路特定的被加位掩碼的數(shù)據(jù)序列。
[0047]各種實(shí)施例提供了一種處理器布置,包括:第一處理器;多個(gè)第二處理器;每個(gè)第二處理器包括被配置成生成處理器特定位掩碼序列的位掩碼發(fā)生器;其中,第一處理器包括被配置成生成第二處理器的處理器特定位掩碼序列的位掩碼發(fā)生器;其中,第一處理器被配置成使用所述多個(gè)第二處理器中的一個(gè)第二處理器所特定的處理器特定位掩碼序列對(duì)要傳送到所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼,以從而生成將被傳送至所述一個(gè)第二處理器的處理器特定的被加位掩碼的數(shù)據(jù)序列。
[0048]根據(jù)一個(gè)實(shí)施例,第一處理器包括中央處理單元。
[0049]根據(jù)一個(gè)實(shí)施例,第一處理器和所述多個(gè)第二處理器經(jīng)由一個(gè)或多個(gè)總線線路被連接。
[0050]根據(jù)一個(gè)實(shí)施例,第一處理器包括主處理電路且所述多個(gè)第二處理器每個(gè)均包括從屬處理電路。
[0051]根據(jù)一個(gè)實(shí)施例,第一處理器包括位掩碼發(fā)生器,其中,該位掩碼發(fā)生器包括多個(gè)移位寄存器。
[0052]根據(jù)一個(gè)實(shí)施例,第一處理器包括位掩碼發(fā)生器,其中,該位掩碼發(fā)生器包括多個(gè)移位寄存器,所述多個(gè)移位寄存器被配置成生成第二處理器的處理器特定位掩碼序列;其中所述多個(gè)移位寄存器中的一個(gè)移位寄存器被配置成生成所述多個(gè)第二處理器中的一個(gè)第二處理器所特定的處理器特定位掩碼序列,
根據(jù)一個(gè)實(shí)施例,所述多個(gè)第二處理器中的每一個(gè)包括位掩碼發(fā)生器,其中,每個(gè)位掩碼發(fā)生器包括被配置成生成處理器特定位掩碼序列的移位寄存器。
[0053]根據(jù)一個(gè)實(shí)施例,第一處理器包括位掩碼發(fā)生器,其中,所述位掩碼發(fā)生器包括真隨機(jī)數(shù)發(fā)生器。
[0054]根據(jù)一個(gè)實(shí)施例,第一處理器包括位掩碼發(fā)生器,其中,該位掩碼發(fā)生器包括偽隨機(jī)數(shù)發(fā)生器。
[0055]根據(jù)一個(gè)實(shí)施例,第一處理器包括被配置成生成多個(gè)不同的處理器特定位掩碼序列的位掩碼發(fā)生器,其中,所述第一處理器被配置成向所述多個(gè)第二處理器中的一個(gè)第二處理器傳送所述多個(gè)第二處理器中的所述一個(gè)第二處理器所特定的處理器特定位掩碼序列,并且向所述多個(gè)第二處理器中的另一第二處理器傳送所述多個(gè)第二處理器中的所述另一第二處理器所特定的另一處理器特定位掩碼序列。
[0056]根據(jù)一個(gè)實(shí)施例,所述一個(gè)第二處理器被配置成接收并存儲(chǔ)處理器特定位掩碼序列,并且其中,來(lái)自所述多個(gè)第二處理器的所述另一第二處理器被配置成接收并存儲(chǔ)所述另一處理器特定位掩碼序列。
[0057]根據(jù)一個(gè)實(shí)施例,所述多個(gè)第二處理器中的每一個(gè)包括被配置成存儲(chǔ)接收到的處理器特定位掩碼序列的存儲(chǔ)器。
[0058]根據(jù)一個(gè)實(shí)施例,所述多個(gè)第二處理器中的每一個(gè)包括被配置成存儲(chǔ)接收到的處理器特定位掩碼序列的地址空間。
[0059]根據(jù)一個(gè)實(shí)施例,第一處理器包括位掩碼發(fā)生器,其中,該位掩碼發(fā)生器包括移位寄存器。
[0060]根據(jù)一個(gè)實(shí)施例,第一處理器被配置成:使用所述一個(gè)第二處理器的處理器特定位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼;并使用另一第二處理器的另一處理器特定位掩碼序列對(duì)將被傳送至所述另一第二處理器的數(shù)據(jù)位序列加位掩碼。
[0061]根據(jù)一個(gè)實(shí)施例,所述一個(gè)第二處理器被配置成接收用所述一個(gè)第二處理器所特定的處理器特定位掩碼序列被加位掩碼的特定的被加位掩碼的數(shù)據(jù)序列,并且使用所述一個(gè)第二處理器所特定的處理器特定位掩碼序列來(lái)檢索所述數(shù)據(jù)位序列。
[0062]根據(jù)一個(gè)實(shí)施例,防止沒(méi)有所述一個(gè)第二處理器所特定的處理器特定位掩碼序列的另一第二處理器從被用所述一個(gè)第二處理器所特定的處理器特定位掩碼序列加位掩碼的所述特定的被加位掩碼的數(shù)據(jù)序列檢索所述數(shù)據(jù)位序列。
[0063]根據(jù)一個(gè)實(shí)施例,所述第一處理器和所述多個(gè)第二處理器被集成在單個(gè)設(shè)備中。
[0064]根據(jù)一個(gè)實(shí)施例,所述第一處理器和所述多個(gè)第二處理器被集成在芯片卡設(shè)備中。
[0065]根據(jù)一個(gè)實(shí)施例,第一處理器包括被配置成向所述一個(gè)第二處理器傳送處理器特定位掩碼數(shù)據(jù)序列的發(fā)射機(jī);并且其中,所述多個(gè)第二處理器包括被配置成接收來(lái)自第一處理器的第二處理器特定的被加位掩碼的數(shù)據(jù)序列的接收機(jī)。
[0066]各種實(shí)施例提供了一種處理器布置,包括:第一處理器電路;多個(gè)第二處理器電路,所述多個(gè)第二處理器電路中的每一個(gè)包括被配置成生成處理器特定位掩碼序列的位掩碼發(fā)生電路;其中,第一處理器電路包括位掩碼發(fā)生電路,所述位掩碼發(fā)生電路被配置成生成第二處理器電路的處理器特定位掩碼序列;其中,第一處理器電路被配置成使用所述多個(gè)第二處理器中的一個(gè)第二處理器電路所特定的位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器電路的數(shù)據(jù)位序列加位掩碼,以從而生成將被傳送至所述一個(gè)第二處理器電路的處理器電路特定的被加位掩碼的數(shù)據(jù)序列。
[0067]各種實(shí)施例提供了一種用于傳送數(shù)據(jù)位序列的方法,該方法包括:由所述多個(gè)第二處理器位掩碼發(fā)生器中的每一個(gè)生成處理器特定位掩碼序列;由第一處理器位掩碼發(fā)生器生成第二處理電路的處理器特定位掩碼序列;由第一處理器使用所述一個(gè)第二處理器所特定的處理器特定位掩碼序列對(duì)將被傳送至所述多個(gè)第二處理器中的所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼,以從而生成將被傳送至所述一個(gè)第二處理器的處理器特定的被加位掩碼的數(shù)據(jù)序列。
[0068]雖然已經(jīng)參考特定實(shí)施例特別地示出并描述了本發(fā)明,但本領(lǐng)域的技術(shù)人員應(yīng)理解的是,在不脫離由所附權(quán)利要求定義的本發(fā)明的精神和范圍的情況下可以在其中進(jìn)行形式和細(xì)節(jié)方面的各種修改。因此由所附權(quán)利要求來(lái)指示本發(fā)明的范圍,并且因此意圖涵蓋落在權(quán)利要求的等價(jià)物的意義和范圍內(nèi)的所有改變。
【權(quán)利要求】
1.處理器布置,包括: 第一處理器; 多個(gè)第二處理器,每個(gè)第二處理器包括被配置成生成處理器特定位掩碼序列的位掩碼發(fā)生器; 其中,所述第一處理器包括被配置成生成第二處理器的處理器特定位掩碼序列的位掩碼發(fā)生器; 其中,所述第一處理器被配置成使用所述多個(gè)第二處理器中的一個(gè)第二處理器所特定的處理器特定位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼,以從而生成將被傳送至所述一個(gè)第二處理器的處理器特定的被加位掩碼的數(shù)據(jù)序列。
2.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述第一處理器包括中央處理單元。
3.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述第一處理器和所述多個(gè)第二處理器經(jīng)由一個(gè)或多個(gè)總線線路被連接。
4.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述第一處理器包括主處理電路,以及 其中,所述多個(gè)第二處理器每個(gè)均包括從屬處理電路。
5.根據(jù)權(quán)利要求1所述的處理器布置, 其中,第一處理器包括位掩碼發(fā)生器,其中,所述位掩碼發(fā)生器包括多個(gè)移位寄存器。
6.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述第一處理器包括位掩碼發(fā)生器,其中,所述位掩碼發(fā)生器包括多個(gè)移位寄存器,所述多個(gè)移位寄存器被配置成生成第二處理器的處理器特定位掩碼序列; 其中,所述多個(gè)移位寄存器中的一個(gè)移位寄存器被配置成生成所述多個(gè)第二處理器的一個(gè)第二處理器所特定的處理器特定位掩碼序列。
7.根據(jù)權(quán)利要求6所述的處理器布置, 其中,所述多個(gè)第二處理器中的每一個(gè)包括位掩碼發(fā)生器,其中,每個(gè)位掩碼發(fā)生器包括被配置成生成處理器特定位掩碼序列的移位寄存器。
8.根據(jù)權(quán)利要求1所述的處理器布置, 其中,第一處理器包括位掩碼發(fā)生器,其中,所述位掩碼發(fā)生器包括真隨機(jī)數(shù)發(fā)生器。
9.根據(jù)權(quán)利要求1所述的處理器布置, 其中,第一處理器包括位掩碼發(fā)生器,其中,所述位掩碼發(fā)生器包括偽隨機(jī)數(shù)發(fā)生器。
10.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述第一處理器包括位掩碼發(fā)生器,所述位掩碼發(fā)生器被配置成生成多個(gè)不同的處理器特定位掩碼序列, 其中,所述第一處理器被配置成:將所述多個(gè)第二處理器中的一個(gè)第二處理器所特定的處理器特定各位掩碼序列傳送到所述多個(gè)第二處理器中的所述一個(gè)第二處理器,以及將所述多個(gè)第二處理器中的另一第二處理器所特定的另一處理器特定位掩碼序列傳送到所述多個(gè)第二處理器中的所述另一第二處理器。
11.根據(jù)權(quán)利要求10所述的處理器布置, 其中,所述一個(gè)第二處理器被配置成接收并存儲(chǔ)處理器特定位掩碼序列,以及其中,來(lái)自所述多個(gè)第二處理器的所述另一第二處理器被配置成接收并存儲(chǔ)所述另一處理器特定位掩碼序列。
12.根據(jù)權(quán)利要求11所述的處理器布置, 其中,所述多個(gè)第二處理器中的每一個(gè)包括被配置成存儲(chǔ)接收到的處理器特定位掩碼序列的存儲(chǔ)器。
13.根據(jù)權(quán)利要求11所述的處理器布置, 其中,所述多個(gè)第二處理器中的每一個(gè)包括被配置成存儲(chǔ)接收到的處理器特定位掩碼序列的地址空間。
14.根據(jù)權(quán)利要求1所述的處理器布置, 其中,第一處理器包括位掩碼發(fā)生器,其中,所述位掩碼發(fā)生器包括移位寄存器。
15.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述第一處理器被配置成:使用所述一個(gè)第二處理器的處理器特定位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼;以及 使用另一第二處理器的另一處理器特定位掩碼序列對(duì)將被傳送至所述另一第二處理器的數(shù)據(jù)位序列加位掩碼。
16.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述一個(gè)第二處理器被配置成接收被用所述一個(gè)第二處理器所特定的處理器特定位掩碼序列加位掩碼的特定的被加位掩碼的數(shù)據(jù)序列,并且使用所述一個(gè)第二處理器所特定的所述處理器特定位掩碼序列來(lái)檢索所述數(shù)據(jù)位序列。
17.根據(jù)權(quán)利要求16所述的處理器布置, 其中,防止沒(méi)有一個(gè)第二處理器所特定的處理器特定位掩碼序列的另一第二處理器從被用所述一個(gè)第二處理器所特定的處理器特定位掩碼序列加位掩碼的所述特定的被加位掩碼的數(shù)據(jù)序列檢索所述數(shù)據(jù)位序列。
18.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述第一處理器和所述多個(gè)第二處理器被集成在單個(gè)設(shè)備中。
19.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述第一處理器和所述多個(gè)第二處理器被集成在芯片卡設(shè)備中。
20.根據(jù)權(quán)利要求1所述的處理器布置, 其中,所述第一處理器包括被配置成向所述一個(gè)第二處理器傳送處理器特定位掩碼數(shù)據(jù)序列的發(fā)射機(jī);以及 其中,所述多個(gè)第二處理器包括被配置成從第一處理器接收第二處理器特定的被加位掩碼的數(shù)據(jù)序列的接收機(jī)。
21.—種處理器布置,包括: 第一處理器電路; 多個(gè)第二處理器電路,所述多個(gè)第二處理器電路中的每一個(gè)包括被配置成生成處理器特定位掩碼序列的位掩碼發(fā)生電路; 其中,所述第一處理器電路包括被配置成生成第二處理器電路的處理器特定位掩碼序列的位掩碼發(fā)生電路; 其中,所述第一處理器電路被配置成使用所述多個(gè)第二處理器中的一個(gè)第二處理器電路所特定的位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器電路的數(shù)據(jù)位序列加位掩碼,以從而生成將被傳送至所述一個(gè)第二處理器電路的處理器電路特定的被加位掩碼的數(shù)據(jù)序列。
22.一種用于傳送數(shù)據(jù)位序列的方法,該方法包括: 由多個(gè)第二處理器位掩碼發(fā)生器中的每一個(gè)生成處理器特定位掩碼序列; 由第一處理器位掩碼發(fā)生器生成第二處理器電路的處理器特定位掩碼序列; 由第一處理器使用所述多個(gè)第二處理器中的一個(gè)第二處理器所特定的處理器特定位掩碼序列對(duì)將被傳送至所述一個(gè)第二處理器的數(shù)據(jù)位序列加位掩碼,以從而生成將被傳送至所述一個(gè) 第二處理器的處理器特定的被加位掩碼的數(shù)據(jù)序列。
【文檔編號(hào)】G06F13/38GK103914422SQ201310734412
【公開(kāi)日】2014年7月9日 申請(qǐng)日期:2013年12月27日 優(yōu)先權(quán)日:2012年12月28日
【發(fā)明者】F.克盧格, S.佐內(nèi)卡爾布 申請(qǐng)人:英飛凌科技股份有限公司