專利名稱:用于形成簽名的裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于從輸入信號形成簽名的裝置。此外,本發(fā)明 還涉及一種用于從輸入信號形成簽名的方法。
背景技術(shù):
例如在密碼學(xué)方法中,上述類型的裝置和方法被用于從可由用戶預(yù)先給定的輸入信號形成簽名。例如根據(jù)AES (高級加密標(biāo)準(zhǔn))的現(xiàn)代密碼學(xué)方法由于相對較大的密鑰長度和該方法的復(fù)雜度在目前的計算技術(shù)情況下通常足夠好地防止“蠻力”攻擊。因此,對密碼學(xué)方法的攻擊目前正日益增長地針對通常通過某些電子電路實(shí)現(xiàn)的特定實(shí)施。例如,在所謂的側(cè)通道攻擊范圍中,攻擊者嘗試通過實(shí)現(xiàn)密碼學(xué)方法的裝置的電流消耗來獲取信息,通過該信息可推斷由該裝置使用的算法或者密鑰。類似的推斷也可以從由該裝置輻射的電磁場來獲得。在亦被稱為差分功率分析(DPA)的攻擊方法中,在盡可能多地不同的輸入數(shù)據(jù)中確定密碼學(xué)方法的子函數(shù)的取決于操作數(shù)的電流變化過程,并且在使用受攻擊的密碼學(xué)算法的模型情況下使該方法經(jīng)受相關(guān)分析的不同密鑰。
發(fā)明內(nèi)容
因此,本發(fā)明的任務(wù)在于,改善開頭部分所提及類型的裝置和方法,以使得尤其基于差分功率分析方法的攻擊方法難以分析密碼學(xué)算法。根據(jù)本發(fā)明,在開頭部分所提及類型的裝置的情況下通過以下方式來解決該任務(wù)設(shè)置多個分別具有狀態(tài)自動機(jī)的變換元件,能將輸入信號和/或取決于該輸入信號的信號分別在輸入側(cè)輸送給這些變換元件,所有狀態(tài)自動機(jī)是相同類型的且如此構(gòu)造,尤其可初始化,以使得每個狀態(tài)自動機(jī)始終分別具有不同于所有其他狀態(tài)自動機(jī)的另一狀態(tài),并且簽名可根據(jù)至少一個狀態(tài)自動機(jī)的狀態(tài)信息來形成。通過根據(jù)本發(fā)明設(shè)置多個分別具有狀態(tài)自動機(jī)的變換元件有利地確保,根據(jù)本發(fā)明的裝置與傳統(tǒng)配置相比不會僅導(dǎo)致如在傳統(tǒng)地將單個變換元件用于形成簽名時所給出的那樣的電磁波輻射或者電流消耗或功率消耗的時間曲線。由此使得基于統(tǒng)計分析的攻擊方法變得困難,因?yàn)楦鶕?jù)本發(fā)明設(shè)置的其他變換元件連同其相應(yīng)的輻射或者關(guān)于電流消耗或功率消耗的附加時間曲線使得統(tǒng)計上重要的關(guān)于所實(shí)施算法的信息的獲取變得困難。特別有利地,在根據(jù)本發(fā)明的裝置的一個實(shí)施方式中提出,變換元件的數(shù)目對應(yīng)于狀態(tài)自動機(jī)的最大可能不同狀態(tài)的數(shù)目。即,根據(jù)狀態(tài)自動機(jī)的實(shí)施,選擇待使用的變換元件的數(shù)目。由此有利地確保,根據(jù)本發(fā)明的裝置的每個狀態(tài)自動機(jī)在特定的觀察時刻具有不同于所有其他狀態(tài)自動機(jī)的另一狀態(tài),并且此外所有最大可能的不同狀態(tài)在此觀察時刻實(shí)際上分別在根據(jù)本發(fā)明裝置的恰好一個變換元件中實(shí)現(xiàn)。這意味著,由外部進(jìn)行的對根據(jù)本發(fā)明裝置的分析始終僅能得到所有最大可能的狀態(tài)被同時實(shí)現(xiàn)的結(jié)果,以使得基于統(tǒng)計分析的側(cè)通道攻擊、尤其是根據(jù)DPA原理的這些側(cè)通道攻擊完全不成功,而與攻擊次數(shù)和所使用的輸入數(shù)據(jù)的類型無關(guān)。在根據(jù)本發(fā)明的裝置的另一個優(yōu)選實(shí)施方式中,可將輸入信號以可預(yù)先給定長度的數(shù)據(jù)字的形式并行地輸送給變換元件,并且簽名可被形成為表示多個變換元件的狀態(tài)自動機(jī)的狀態(tài)信息的數(shù)據(jù)字的級聯(lián)?!昂灻纬伞痹诒景l(fā)明中不是指不可擦除意義下的密碼學(xué)簽名形成,而是更確切地在一般意義上來說是將簽名中由輸入信號表示的輸入數(shù)據(jù)變換成相應(yīng)的輸出數(shù)據(jù)。這種一般的簽名形成可按本身已知的方式借助具有多個輸入端的移位寄存器、MISR、多輸入移位寄存器進(jìn)行。 為了確保通過根據(jù)本發(fā)明的變換元件來實(shí)現(xiàn)不同狀態(tài)的理論上最大可能的數(shù)目,所涉及的狀態(tài)自動機(jī)被構(gòu)造成根據(jù)輸入信號從初態(tài)轉(zhuǎn)入到次態(tài),從而對于任意的可預(yù)先給定的輸入信號分別具有明確的次態(tài),其中尤其不存在在相同輸入信號下導(dǎo)致相同次態(tài)的兩個不同的初態(tài)。為了在形成簽名時提高靈活性,因此在根據(jù)本發(fā)明裝置的另一個有利的實(shí)施方式中提出,設(shè)置多組變換元件,其中可以分別將相同的輸入信號和/或取決于該輸入信號的相同信號輸送給同一組的所有變換元件。根據(jù)本發(fā)明將變換元件分成多個組有利地使得能夠形成聚集簽名,該聚集簽名由第一組變換元件的輸出信號分量和第二組變換元件的輸出信號分量組成,由此進(jìn)一步使得用于簽名形成的算法的可追溯性變得困難。在將相同類型的狀態(tài)自動機(jī)既使用在第一組變換元件中又使用在第二組變換元件的情況下,可以有利地將輸入信號輸送給第一組變換元件并將經(jīng)反相的輸入信號輸送給第二組變換元件,以便確保在不同的組中盡管有相同類型地構(gòu)造的狀態(tài)自動機(jī),仍能分別得到不同的狀態(tài)變化過程。替換地或補(bǔ)充地可以提出,屬于不同組的變換元件的狀態(tài)自動機(jī)彼此不是相同類型的。在根據(jù)本發(fā)明裝置的另一個非常有利的實(shí)施方式中提出,能夠分別用可預(yù)先給定的初始狀態(tài)來初始化至少一個、但是優(yōu)選所有狀態(tài)自動機(jī),由此尤其能夠確保不能同時通過兩個不同的狀態(tài)自動機(jī)實(shí)現(xiàn)理論上可能的狀態(tài)。在根據(jù)本發(fā)明裝置的另一個特別可靠的實(shí)施方式中,能將初始狀態(tài)存儲在秘密存儲器中并能為了初始化而傳送到一個或多個狀態(tài)自動機(jī)中。秘密的存儲器可例如通過以下方式來實(shí)現(xiàn)該存儲器完全集成在根據(jù)本發(fā)明的裝置中并且該存儲器的存在不能從外部識別出。為了生成用于簽名形成的分別個體的初態(tài),根據(jù)另一個非常有利的本發(fā)明變型可以提出,在用初始狀態(tài)進(jìn)行初始化之后首先對狀態(tài)自動機(jī)施加基于隨機(jī)的輸入信號,以使得后續(xù)的簽名形成(其中最終對該裝置施加期望的輸入信號)始終從另一隨機(jī)的初態(tài)開始。在根據(jù)本發(fā)明裝置的另一個非常有利的在其中不需要用于對狀態(tài)自動機(jī)初始化的秘密數(shù)據(jù)的實(shí)施方式中提出,分別用可預(yù)先給定的初始狀態(tài)來初始化所有的狀態(tài)自動機(jī),其中每個狀態(tài)自動機(jī)是用另一個個別的初始狀態(tài)來初始化的。隨后,使?fàn)顟B(tài)自動機(jī)的各個初始狀態(tài)彼此轉(zhuǎn)置,這尤其可以取決于隨機(jī)地和/或根據(jù)密鑰進(jìn)行。在根據(jù)本發(fā)明裝置的另一個特別優(yōu)選的實(shí)施方式中提出,該裝置至少部分地是以優(yōu)選具有單片集成的電子元件和/或光學(xué)元件的電路裝置的形式實(shí)現(xiàn)的。
為了使由根據(jù)本發(fā)明的裝置輸出到周圍環(huán)境并由此輸出到潛在攻擊者的關(guān)于簽名形成的內(nèi)部過程的信息最小化,因此按照一個非常有利的本發(fā)明變型可以提出,此類元件組和/或接觸此類元件組的實(shí)現(xiàn)變換元件或其狀態(tài)自動機(jī)的數(shù)據(jù)線路是相同類型地構(gòu)造的,尤其是以與電路裝置對應(yīng)的布局中的重復(fù)結(jié)構(gòu)的形式構(gòu)造的。特別優(yōu)選地,在空間上盡可能緊密地彼此毗鄰地布置實(shí)現(xiàn)根據(jù)本發(fā)明狀態(tài)自動機(jī)的所有元件或者元件組,以便使通過對干擾輻射的差分分析獲得信息變得困難。在根據(jù)本發(fā)明裝置的另一個非常有利的實(shí)施方式中提出,借助優(yōu)選具有多個輸入端的非線性反饋的移位寄存器來實(shí)現(xiàn)至少一個狀態(tài)自動機(jī),但是優(yōu)選所有狀態(tài)自動機(jī)。此類在英語中稱為“nonlinear multiple input shift register (非線性多輸入移位寄存器)”NLMISR的移位寄存器特別良好地適用于實(shí)現(xiàn)根據(jù)本發(fā)明地將輸入信號變換成對于簽名形成而言必需的輸出信息。NLMISR還特別合適用于 實(shí)現(xiàn)狀態(tài)自動機(jī)。本發(fā)明的一個特別優(yōu)選的變型提出,NLMISR具有多個串聯(lián)的、優(yōu)選被構(gòu)造為觸發(fā)器的存儲元件,以及轉(zhuǎn)接單元,該轉(zhuǎn)接單元被構(gòu)造成根據(jù)輸入信號來修改NLMISR的反饋支路,以便可通過NLMISR來實(shí)現(xiàn)對應(yīng)于輸入信號的狀態(tài)的多項(xiàng)式。在這個本發(fā)明變型中,由NLMISR實(shí)現(xiàn)的狀態(tài)自動機(jī)的狀態(tài)信息通過存儲元件或觸發(fā)器的內(nèi)容形成。例如,NLMISR可被構(gòu)造成處理I位到4位寬的輸入信號并且選擇性地實(shí)現(xiàn)本原多項(xiàng)式X4 + X3 + I和X4 + X +1。此類NLMISR優(yōu)選具有總共四個觸發(fā)器,以使得由NLMISR實(shí)現(xiàn)的狀態(tài)自動機(jī)的不同狀態(tài)的最大可能數(shù)目對應(yīng)于24=16。在根據(jù)本發(fā)明裝置的另一個優(yōu)選的實(shí)施方式中,NLMISR被構(gòu)造成處理I位到3位寬的輸入信號并且選擇性地實(shí)現(xiàn)本原多項(xiàng)式X3 + X + I和X3 + X2 + I。根據(jù)本發(fā)明的用于形成簽名的裝置由于為每個狀態(tài)轉(zhuǎn)移設(shè)置了多個變換元件而精確地具有相同的電流消耗,從而得到與傳統(tǒng)配置相比顯著提升的抗DPA攻擊的穩(wěn)健性。相反,在根據(jù)現(xiàn)有技術(shù)的所謂的“dual-rail (雙軌)”方法中,通過同時進(jìn)行的“高-低”轉(zhuǎn)換來補(bǔ)償數(shù)字開關(guān)元件的低-高轉(zhuǎn)換。然而,此傳統(tǒng)方法不利地要求兩個所涉及的轉(zhuǎn)換的準(zhǔn)確的平衡。此外,例如充電晶體管(CMOS中P溝道)的閾值電壓相對于放電晶體管(CMOS中N溝道)的技術(shù)波動會導(dǎo)致平衡被破壞。此問題在根據(jù)本發(fā)明的原理中不存在。在根據(jù)本發(fā)明裝置的一個優(yōu)選實(shí)施中,其中尤其是還將連接所有不同元件組的數(shù)據(jù)線路對稱地構(gòu)造并且因此在不同的經(jīng)信號處理的分量之間僅有最小的時延,DPA攻擊的成功率不僅通過測量次數(shù)的提升來改善,因?yàn)楦鶕?jù)本發(fā)明的裝置具有完全獨(dú)立于經(jīng)信號處理的分量的內(nèi)部狀態(tài)的電流消耗和電磁波輻射。作為本發(fā)明的任務(wù)的另一種解決方案,說明根據(jù)權(quán)利要求21的方法。根據(jù)本發(fā)明的方法提出,在輸入側(cè)分別將輸入信號和/或取決于該輸入信號的信號輸送給多個分別具有狀態(tài)自動機(jī)的變換元件,所有狀態(tài)自動機(jī)是相同類型的,并且優(yōu)選被初始化,以使得每個狀態(tài)自動機(jī)始終分別具有不同于所有其他狀態(tài)自動機(jī)的另一狀態(tài),并且根據(jù)至少一個狀態(tài)自動機(jī)的狀態(tài)信息來形成簽名。通過根據(jù)本發(fā)明地設(shè)置多個相同類型的變換元件和相應(yīng)的狀態(tài)自動機(jī),有利地使從根據(jù)本發(fā)明運(yùn)行的裝置的電功率消耗或者從由該裝置發(fā)射的電磁波得到關(guān)于內(nèi)部處理狀態(tài)的推斷的可能性大為降低。
特別有利地,使用與狀態(tài)自動機(jī)的最大可能的不同狀態(tài)一樣多的變換元件,以使得在根據(jù)本發(fā)明的裝置的每個處理周期中各個狀態(tài)機(jī)自動機(jī)分別具有一個可能的狀態(tài),并且總體通過所有狀態(tài)自動機(jī)實(shí)現(xiàn)該處理周期中的每個可能狀態(tài)。在后一處理周期中,根據(jù)由每個狀態(tài)自動機(jī)實(shí)現(xiàn)的多項(xiàng)式和根據(jù)對于該狀態(tài)自動機(jī)存在的輸入數(shù)據(jù),該狀態(tài)自動機(jī)改變其狀態(tài),以使得根據(jù)本發(fā)明的裝置的每個狀態(tài)自動機(jī)又具有可能的狀態(tài)之一。結(jié)果,這導(dǎo)致在該后一處理周期中,所有理論上可能的狀態(tài)通過根據(jù)本發(fā)明的裝置的恰好一個狀態(tài)自動機(jī)實(shí)現(xiàn),并且因此不能從電流消耗和/或功率消耗的觀察或者從根據(jù)本發(fā)明的裝置的干擾輻射信號推斷出簽名形成范圍內(nèi)的內(nèi)部處理過程。本發(fā)明的其他有利的設(shè)計方案是從屬權(quán)利要求的主題。
從以下參照附圖示出本發(fā)明的不同實(shí)施例的描述中得到其他的優(yōu)點(diǎn)、特征和細(xì)節(jié)。在此,在權(quán)利要求和說明書中所提及的特征可以分別各自獨(dú)立地或任意組合地對于本發(fā)明而言是重要的。在附圖中
圖I示出根據(jù)本發(fā)明的裝置的第一實(shí)施方式,
圖2、3、4分別示出根據(jù)本發(fā)明的具有多組變換元件的裝置的其他實(shí)施方式,
圖5a、5b分別示出圖I中的本發(fā)明裝置在初始化過程期間的不同運(yùn)行狀態(tài),
圖6a示出根據(jù)本發(fā)明的非線性反饋移位寄存器形式的狀態(tài)自動機(jī)的實(shí)現(xiàn),
圖6b示出根據(jù)本發(fā)明的非線性反饋移位寄存器形式的狀態(tài)自動機(jī)的另一實(shí)現(xiàn),
圖7示出經(jīng)修改的用于容易地設(shè)置初始化狀態(tài)的非線性反饋移位寄存器,
圖8示意性地示出用于實(shí)現(xiàn)根據(jù)本發(fā)明的裝置的簡化電路布置,
圖9示出根據(jù)圖6a的非線性反饋移位寄存器的狀態(tài)轉(zhuǎn)換圖,
圖10a、10b示出根據(jù)本發(fā)明的分別具有用于實(shí)現(xiàn)狀態(tài)自動機(jī)的非線性反饋移位寄存器的變換元件,
圖10c、10d、IOeUOf示出用于與根據(jù)圖10a、IOb的變換元件一同使用的電路布置以及對應(yīng)的運(yùn)行參數(shù)的時間變化過程,
圖Ila示出根據(jù)本發(fā)明的具有5位狀態(tài)存儲器的、非線性反饋移位寄存器形式的狀態(tài)自動機(jī)的實(shí)現(xiàn),
圖IlbUlc示出通過根據(jù)圖Ila的移位寄存器實(shí)現(xiàn)的線性反饋移位寄存器,
圖12示出根據(jù)圖11 a的非線性反饋移位寄存器的狀態(tài)轉(zhuǎn)換圖,
圖13示出根據(jù)本發(fā)明的具有3位狀態(tài)存儲器的、非線性反饋移位寄存器形式的狀態(tài)自動機(jī)的實(shí)現(xiàn),以及
圖14示出根據(jù)圖13的非線性反饋移位寄存器的狀態(tài)轉(zhuǎn)換圖。
具體實(shí)施例方式圖I示意性地示出根據(jù)本發(fā)明的用于從輸入信號input形成簽名S的裝置100的第一實(shí)施方式。在此,輸入信號input以亦被稱為nibble (半字節(jié))的半字節(jié)的形式輸送給裝置100。為此,如從圖I可見,相應(yīng)地設(shè)置四條數(shù)據(jù)線路,它們與變換元件TE_0、TE_1、TE_2.....TE_15的相應(yīng)輸入端連接。始終存在使用較少輸入線路的可能性。為清楚明了
的目的,在圖I中僅描繪了總共16個變換元件TE_0.....TE_15中的四個。根據(jù)本發(fā)明,數(shù)
據(jù)連接是如下實(shí)現(xiàn)的將相同的輸入數(shù)據(jù)input或者相同的輸入信號輸送給每個變換元件TE_0、…、TE_15。變換元件TE_0.....TE_15按以下更詳細(xì)描述的方式從輸送給其的輸入信號
input形成在此未詳細(xì)命名的輸出信號。根據(jù)本 發(fā)明,輸出信號例如在級聯(lián)意義下由多個變換元件TE_0、TE_15組成,以便獲得簽名S。因?yàn)樵诒臼纠?,每個變換元件TE_0、TE_1...生成4位寬的輸出信號(S卩,半字節(jié)),因而通過所有16個變換元件的輸出信號合計得到具有總共64位的簽名S。根據(jù)本發(fā)明的變換元件TE_0.....TE_15分別具有狀態(tài)自動機(jī)ZA,該狀態(tài)自動機(jī)
ZA的狀態(tài)信息例如以可預(yù)先給定寬度的數(shù)字?jǐn)?shù)據(jù)字的形式存儲。例如,狀態(tài)自動機(jī)ZA可具有4位存儲容量,以使得總共16個不同的狀態(tài)是可能的。根據(jù)本發(fā)明,變換元件TE_0.....TE_15的所有狀態(tài)自動機(jī)ZA是相同類型地構(gòu)造
的。在本發(fā)明的意義下,相同類型意味著每個狀態(tài)自動機(jī)ZA-從相同的輸入信號input
和相同的初始化狀態(tài)出發(fā)——在下一處理周期中采用與另一相同類型的狀態(tài)自動機(jī)ZA相同的次態(tài)。根據(jù)本發(fā)明還提出,每個狀態(tài)自動機(jī)ZA始終分別具有不同于簽名裝置100的所有其他狀態(tài)自動機(jī)ZA的另一狀態(tài)。由此有利地使DPA攻擊變得困難,這些DPA攻擊根據(jù)對本發(fā)明裝置100的電流消耗和/或功率消耗的分析或者從本發(fā)明裝置100的干擾輻射來嘗試推斷裝置100或各個變換元件TE_0.....TE_15的內(nèi)部處理狀態(tài)。特別有利地,根據(jù)本發(fā)明設(shè)置的變換元件TE_0.....TE_15的數(shù)目對應(yīng)于狀態(tài)自
動機(jī)ZA的最大可能不同狀態(tài)的數(shù)目,即在此為16。由此,在根據(jù)本發(fā)明的裝置100中,在狀態(tài)自動機(jī)ZA的恰好之一中始終(即,在每個處理周期中)存在每個理論上可能的狀態(tài),以使得所有16個可能狀態(tài)的分別僅一個組合向外(S卩,相對于執(zhí)行DPA攻擊的可能的攻擊者而目)是“可見的”。在盡管各個狀態(tài)自動機(jī)ZA分別按照預(yù)先給定的規(guī)則改變其狀態(tài)的后一處理周期中,又總共在16個狀態(tài)自動機(jī)ZA的每個狀態(tài)自動機(jī)中存在16個可能狀態(tài)中的恰好一個狀態(tài),從而所有16個狀態(tài)又向外是同時“可見”的。這意味著,可能的攻擊者不能從在借助電子元件實(shí)現(xiàn)根據(jù)本發(fā)明的裝置100時給
出的相應(yīng)的電子輻射或者從裝置100的電功率消耗推斷出變換元件TE_0.....TE_15中的
內(nèi)部信號處理的狀態(tài),因?yàn)樵谒薪M件的理想對稱設(shè)計情況下,電功率消耗始終恒定,并且所輻射的電磁場在相繼的處理周期之間的狀態(tài)轉(zhuǎn)換時分別不經(jīng)歷顯著的變化。為了形成次態(tài),除了例如與定義相繼的處理周期的時鐘信號同步地變化的輸入信號input之外,所涉及的狀態(tài)自動機(jī)ZA的相應(yīng)的當(dāng)前狀態(tài)也以本身已知的方式共同起作用。以下參照圖6a、6b說明對此的示例。這意味著,在每個處理周期之后,在變換元件TE_0、...的輸出端存在具有4位的輸出數(shù)據(jù),該輸出數(shù)據(jù)是根據(jù)輸入數(shù)據(jù)input和所涉及的狀態(tài)自動機(jī)ZA的狀態(tài)信息形成的。所有狀態(tài)自動機(jī)ZA或者包括這些狀態(tài)自動機(jī)ZA的變換元件TE_0.....TE_15的
輸出信號的可以例如在級聯(lián)意義下執(zhí)行的連結(jié)最終得到具有64位的簽名S。
在根據(jù)本發(fā)明的簽名裝置100的后一處理周期中,參與的變換元件TE_0、...、TE_15的輸出信號又相應(yīng)地變化,從而隨后存在另一簽名S。盡管設(shè)置與所使用的狀態(tài)自動機(jī)ZA的不同狀態(tài)的最大可能數(shù)目對應(yīng)的變換元件的這種數(shù)目是特別合適的,但是本發(fā)明的裝置100配備有較小數(shù)目的變換元件、例如總共僅配備有三個變換元件也是可能的。即使在這種情形中也已有利地使DPA攻擊變得困難,因?yàn)椴煌男盘柣蛘呖偣踩齻€變換元件的功率消耗重疊并且因此降低了能由攻擊者檢測的關(guān)于簽名裝置100中的信號處理的信號的重要性。如果希望具有不同于64位長度的簽名S,那么可以例如僅分別使用存在的變換元件TE_0.....TE_15的輸出信號的子集。
圖2示出了根據(jù)本發(fā)明的簽名裝置的另一實(shí)施方式100_1,其中設(shè)置兩組變換元件G_0、G_1。每一組G_0、G_1具有總共16個不同的變換元件TE_0、 、TE_15或TE_16、 、TE_31,這些變換元件均是相同類型地構(gòu)造的并且擁有相同類型地構(gòu)造的狀態(tài)自動機(jī)。為了清楚明了未在圖2中描繪狀態(tài)自動機(jī)。根據(jù)圖2的第一組變換元件G_0實(shí)現(xiàn)與上述參照圖I解釋的原理相當(dāng)?shù)母鶕?jù)本發(fā)明的簽名形成。第二組變換元件6_1以相當(dāng)?shù)姆绞焦ぷ鳎欢⒉粚⑤斔徒o第一組G_0的變換元
件TE_0.....TE_15的常規(guī)輸入信號input作為輸入信號。屬于第二組G_1的變換元件
TE_17.....TE_31更確切地說將通過反相器101從常規(guī)的輸入信號input獲得的經(jīng)反相的
輸入信號input’作為輸入信號。例如,形成輸入信號input的半字節(jié)中的每一位本身是通過反相器101反相的,以便形成經(jīng)反相的半字節(jié)input’。通過圖2中說明的本發(fā)明變型有利地處理組G_0、G_1的彼此互補(bǔ)的或反相的輸入信號input、input’,從而相應(yīng)地補(bǔ)償輸入信號input的變化。當(dāng)輸入信號input本身不是已知的并且還應(yīng)當(dāng)對可能的攻擊者保密時,這種補(bǔ)償是特別有利的。通過根據(jù)圖2的簽名裝置100_1總共得到128位的最大簽名長度。圖3示出了根據(jù)本發(fā)明的簽名裝置的另一實(shí)施方式100_2,其中又設(shè)置兩組變換元件 G_0、G_1。與以上參照圖2描述的本發(fā)明變型不同,將相同的輸入信號input輸送給圖3中描繪的簽名裝置100_2的兩個組G_0、G_1。通過第二組G_1的變換元件TE_16、. . .、TE_31生成不同的輸出信號在此是通過以下方式來確保的屬于第二組G_1的變換元件的狀態(tài)自動機(jī)ZA’被構(gòu)造成不同于第一組G_0的變換元件的狀態(tài)自動機(jī)ZA。通過參與的變換元件的所有輸出信號的組合,又有利地得到具有128位長度的簽名。圖4示出根據(jù)本發(fā)明的簽名裝置的另一實(shí)施方式100_3。在此實(shí)施方式中,將具有3位的數(shù)據(jù)字形式的輸入信號input_l輸送給在此僅具有8個變換元件而不是迄今16個變換元件的第二組變換元件G_l。狀態(tài)自動機(jī)ZA’生成具有同樣3位字寬的輸出信號。總共可以從參與的變換元件TE_0.....TE_23的輸出信號得到具有88位最大長度的簽名。與圖4中的描繪不同,第二組變換元件G_1的狀態(tài)自動機(jī)ZA’也可以被構(gòu)造成與第一組G_0的狀態(tài)自動機(jī)ZA相同,然而提供不同的輸出信號,因?yàn)閷⑴c第一組G_0的第一輸入信號input_0不同的第二輸入信號input_l輸送給第二組G_1的狀態(tài)自動機(jī)。然而,由于第一組G_0的狀態(tài)自動機(jī)ZA在此包括四個存儲元件并且第二組G_1的狀態(tài)自動機(jī)ZA’僅包括三個存儲元件,因而不能實(shí)現(xiàn)第一組G_1中所有可能的初態(tài),這可通過將多達(dá)8個其他的變換元件添加到第二組G_1加以改變。以下參照圖5a、5b、5c來描述根據(jù)本發(fā)明的簽名裝置100的初始化過程。在此情況下,從根據(jù)圖I的簽名裝置100的基本結(jié)構(gòu)出發(fā)。對于簽名裝置100的初始化,在第一步驟中(參見圖5a),用可預(yù)先給定的初始狀態(tài)init來初始化在此未詳細(xì)命名的變換單元的所有狀態(tài)自動機(jī)TA。特別有利地,在此情況下用與其余狀態(tài)自動機(jī)ZA不同的個體初始狀態(tài)來初始化每個狀態(tài)自動機(jī)TA,這意味著用唯一的初始狀態(tài)來初始化根據(jù)圖5a的簽名裝置100的總共16個狀態(tài)自動機(jī)ZA中的每個狀態(tài)自動機(jī)ZA。 此個體初始狀態(tài)在此從秘密存儲器102調(diào)用并且在初始化期間傳送到狀態(tài)自動機(jī)ZA的狀態(tài)存儲器中。輸入信號input的狀態(tài)在上述步驟期間對于初始化而言不是決定性的,因此相應(yīng)的信號流通過虛線來表示。同樣,在此時刻,在變換元件的輸出端處還未施加有意義的簽名值S。在第二步驟中,參見圖5b,對每個狀態(tài)自動機(jī)ZA施加基于隨機(jī)的輸入信號input_rnd。由此有利地確保,用于后續(xù)的簽名形成的每個隨機(jī)自動機(jī)ZA位于與例如在先前的簽名形成時或者直接在初始化之后呈現(xiàn)的初態(tài)不同的初態(tài)。這意味著,盡管秘密存儲器102包括用于狀態(tài)自動機(jī)的個體初始化的在簽名裝置100的壽命上恒定的初始狀態(tài),但是對于簽名裝置100的每個操作周期,在使用基于隨機(jī)的輸入信號input_rnd的情況下從存儲的初始狀態(tài)init (圖5a)可以得到較新的特定于隨機(jī)的(zufal Isbestimmt)初態(tài)??梢詾橐粋€或多個處理周期對狀態(tài)自動機(jī)ZA施加基于隨機(jī)的輸入信號input_rnd。在這些處理周期期間,同樣尚不存在對應(yīng)于特定的輸入數(shù)據(jù)input的有效簽名S。直至圖5c中所示的、對簽名裝置100施加常規(guī)的輸入信號input的運(yùn)行狀態(tài),才在變換元件的輸出端處存在由狀態(tài)自動機(jī)ZA生成的簽名S。圖6a示出非線性反饋移位寄存器200的簡化電路布置,該非線性反饋移位寄存器200具有能與輸入信號input的不同位連接的多個輸入端input
、input [I]、input [2]、input [3]。如從圖6a可見,被簡稱為NLMISR(非線性多輸入移位寄存器)的移位寄存器200具有多個串聯(lián)的優(yōu)選被構(gòu)造為觸發(fā)器的存儲元件204a、204b、204c、204d。存儲元件204a、204b、204c、204d以本身已知的方式通過異或元件202a、202b、202c、202d彼此連結(jié),這些異或元件對輸送給其的輸入量執(zhí)行模2加法。非線性反饋移位寄存器200具有有利地實(shí)現(xiàn)可變反饋支路的轉(zhuǎn)接單元210。根據(jù)輸入信號input
和存儲元件204d的狀態(tài)或輸出信號,轉(zhuǎn)接單元210修改移位寄存器200的反饋機(jī)制,從而選擇性地通過移位寄存器200來實(shí)現(xiàn)第一本原多項(xiàng)式或第二本原多項(xiàng)式。其他輸入信號input [I]、...、input [3]也可流入到轉(zhuǎn)接單元210中。特別優(yōu)選地,非線性反饋移位寄存器200在此被構(gòu)造成處理總共4位寬的輸入信號input (圖I),該輸入信號的位分量與輸入端input
、input [I ]、input [2]、input [3]對應(yīng)。
在圖6a中描繪的轉(zhuǎn)接單元210的配置中,存儲元件204d的輸出信號和輸入信號input
對UND元件210c起作用,UND元件210c的輸出信號又對異或元件202b起作用。此外,輸入信號input
和存儲元件204d的經(jīng)反相的輸出信號對實(shí)現(xiàn)“或”邏輯的功能塊210a起作用。如從圖6a可見,功能塊210a的輸出信號被引到異或元件202d上。存儲元件204d的經(jīng)反相的輸出信號在此通過反相器210b獲得?;谵D(zhuǎn)接單元210的上述電路配置,非線性反饋移位寄存器200根據(jù)輸入信號input
選擇性地實(shí)現(xiàn)本原多項(xiàng)式X4 + X3 + I和X4 + x+1。由此有利地得到借助移位寄存器200實(shí)現(xiàn)的狀態(tài)自動機(jī)的在圖9中示意性地描繪的狀態(tài)或狀態(tài)轉(zhuǎn)移。在圖9中通過相應(yīng)地描繪的橢圓來表征總 共16個不同的可能狀態(tài)Z0、ZU ,Z15。如果最低有效位(least significant bit,LSB)存儲在存儲元件204a中并且最高有效位(most significant bit, MSB)存儲在存儲元件204d中,那么狀態(tài)的序號在此情況下對應(yīng)于由移位寄存器200的存儲器204a.....204d表示的半字節(jié)的十進(jìn)制表示。用虛線箭頭和用實(shí)線箭頭來表征不同狀態(tài)之間的狀態(tài)轉(zhuǎn)移。在此,虛線箭頭說明由于為I的輸入信號input
的輸入信號值而得到的狀態(tài)轉(zhuǎn)移,而實(shí)線箭頭說明由于為0的輸入信號值而得到的狀態(tài)轉(zhuǎn)移。對于圖9中所示的狀態(tài)轉(zhuǎn)移,認(rèn)為輸入信號input [I]=input[2] = input[3] = O。此外在圖9中,由于為0的輸入信號值而導(dǎo)致的從初態(tài)到次態(tài)的狀態(tài)轉(zhuǎn)移(替代于實(shí)線箭頭)的特征還在于,表示初態(tài)和次態(tài)的橢圓部分重疊,其中圖9中的次態(tài)分別直接位于對應(yīng)于該次態(tài)的初態(tài)的右下方。例如,如果輸入信號input
具有為0的值,那么通過根據(jù)圖6a的非線性反饋移位寄存器200實(shí)現(xiàn)的狀態(tài)自動機(jī)從初態(tài)Zl轉(zhuǎn)到次態(tài)Z2。相反,如果輸入信號input
具有為I的值(參見從初態(tài)Zl出發(fā)指向另一次態(tài)Z6的虛線箭頭),那么狀態(tài)自動機(jī)從初態(tài)Zl轉(zhuǎn)到次態(tài)Z6。通過根據(jù)圖6a的非線性反饋移位寄存器200的配置有利地確保,根據(jù)輸入信號向次態(tài)的轉(zhuǎn)移恰好如此進(jìn)行,即對于輸入信號的任意的固定占用都占據(jù)明確的次態(tài),并且不存在兩個不同的、在輸入信號的相同占用情況下導(dǎo)致相同次態(tài)的狀態(tài)。由根據(jù)圖6a的移位寄存器200實(shí)現(xiàn)的狀態(tài)自動機(jī)的在圖9中描繪的可能狀態(tài)中的每個狀態(tài)因此在恒定的輸入信號的情況下分別對于恒定的輸入信號具有恰好一個次態(tài)和恰好一個前態(tài)。由此,在與以上參照圖5a、5b、5c描述的初始化相組合的情況下有利地確保,簽名裝置100 (圖I)的每個狀態(tài)自動機(jī)在每個處理周期具有與所有其他狀態(tài)自動機(jī)ZA在相同的處理周期中的狀態(tài)不同的狀態(tài)。圖6b示出以特別的方式適用于執(zhí)行根據(jù)本發(fā)明的方法的非線性反饋移位寄存器200_1的另一實(shí)施方式。不同于參照圖6a描述的方式,將輸入信號input
、input [I]、input [2]、input [3]輸送給圖6b中描繪的移位寄存器200_1。圖6a中說明的非線性反饋移位寄存器200可以例如用于實(shí)施具有以第一方式構(gòu)造的狀態(tài)自動機(jī)的第一組變換元件G_0,而根據(jù)圖6b的非線性反饋移位寄存器200_1例如適用于構(gòu)造第二組變換元件G_1的狀態(tài)自動機(jī)ZA’。圖7示出具有相對于圖6a、6b修改過的電路拓?fù)涞姆蔷€性反饋移位寄存器200_2。圖7中描繪的非線性反饋移位寄存器200_2附加地具有功能塊206,該功能塊206在存儲元件204d的輸出信號out與控制信號shift之間實(shí)現(xiàn)NOR邏輯。由此可以根據(jù)控制信號shift的邏輯狀態(tài)來激活或禁用根據(jù)圖7的非線性反饋移位寄存器200_2的反饋。這在簽名裝置100或其狀態(tài)自動機(jī)ZA的初始化范圍中不應(yīng)當(dāng)使用存儲在秘密存儲器102 (圖5a)中的初始狀態(tài)時是特別有利的。更確切地說,通過控制信號shift的狀態(tài)的相應(yīng)選擇和以下參照圖IOa更詳細(xì)描述的在環(huán)形存儲器的意義下對根據(jù)本發(fā)明的簽名裝置100的多個狀態(tài)自動機(jī)ZA的特殊接線,可以對這些狀態(tài)自動機(jī)之間的狀態(tài)值進(jìn)行轉(zhuǎn)置,從而不必設(shè)置秘密存儲器102,這對制造成本而 言起積極作用。為此,圖IOa示出根據(jù)本發(fā)明的變換元件TE_1的電路布置,該變換元件TE_1具有被構(gòu)造為根據(jù)圖7的非線性反饋移位寄存器200_2的狀態(tài)自動機(jī)。除了移位寄存器200_2之外,變換元件TE_1還具有輸入復(fù)用器220、功能塊230和輸出復(fù)用器240。所描繪的變換元件TE_1的配置允許變換元件TE_1連同相同類型地構(gòu)造的其他變換元件TE_0、TE_2... 一起連接成環(huán)形移位寄存器,其中每個變換元件的輸入復(fù)用器220位于所觀察的變換元件TE_1的移位寄存器200_2與在環(huán)形結(jié)構(gòu)中前部的變換元件TE_0的輸出復(fù)用器240之間。在使用以上參照圖7描述的控制信號shift的情況下,為所有變換元件禁用反饋機(jī)制,以使得每個處理周期均分別移位存儲在環(huán)形移位寄存器中的位,而不是在例如簽名形成的意義下進(jìn)行修改??刂骗h(huán)形移位寄存器TE_0、TE_1、...的第n級的復(fù)用器220、240的位X應(yīng)當(dāng)在此如從圖IOa可見的那樣既取決于隨機(jī)位Z’又取決于密鑰的至少一位Git5所有Xi值是同時施加的并且分別對于四個處理周期而言保持恒定。位Xi分別決定所涉及的非線性反饋移位寄存器200_2是否是大移位寄存器環(huán)的組成部分,或者是否跳過該大移位寄存器環(huán)。根據(jù)Xi的值,按照以上描述的四個處理周期,在非線性移位寄存器200_2的四個存儲元件204a、204b、204c、204d (圖7)中或者存在先前的狀態(tài)值,或者存在移位寄存器環(huán)中的前部非線性反饋移位寄存器200_2的狀態(tài)值。隨著分別變化的Xi的值,在特定數(shù)目的處理周期之后,有利地存在狀態(tài)自動機(jī)的初始狀態(tài)的隨機(jī)的且對于可能的攻擊者而言未知的轉(zhuǎn)置。例如,形成位Xi的功能塊230可被構(gòu)造為UND元件,從而在假定輸入信號消失(即,input
=input [I ]=input[2]=input[3]=0)并且借助控制信號 shift (圖 7)禁用的內(nèi)部反饋的情況下,每個移位寄存器200_2得到以下情景
隨機(jī)位V =0
簽名裝置100的所有移位寄存器200_2的所有觸發(fā)器204a、204b、204c、204d在環(huán)形拓?fù)渲斜舜私泳€,以使得關(guān)于環(huán)形拓?fù)涞牡趎個移位寄存器的觸發(fā)器204a在后一處理周期中的狀態(tài)對應(yīng)于第(n-1)個移位寄存器的觸發(fā)器204d的狀態(tài)等。因此,屬于變換元件T_15(圖I)的最后一個(即此處的第16個)移位寄存器202_2的觸發(fā)器204d的狀態(tài)值在周期變化時移至屬于變換元件T_0 (圖I)的第一移位寄存器200_2的觸發(fā)器204a中。隨機(jī)位Z’ =1并目.密鑰的位Gi= I
所觀察的移位寄存器200_2通過用邏輯I的值控制其輸出復(fù)用器240而從環(huán)形拓?fù)涑?。在移位寄存?00_2內(nèi)進(jìn)行狀態(tài)值的局部反饋,從而在四個周期之后再次產(chǎn)生該輸出狀態(tài)。位于電流上游的移位寄存器的狀態(tài)位將在繞過從環(huán)形拓?fù)涑サ囊莆患拇嫫鞯那闆r下直接傳送至位于電流下游的移位寄存器中。隨機(jī)位Z’ =1并目密鑰的位Gi= 0
所觀察的移位寄存器200_2是環(huán)形拓?fù)涞囊徊糠?。對于秘密位Gi有Gi=O的那些移位寄存器200_2的所有觸發(fā)器204a、204b、204c、204d彼此接線在環(huán)形拓?fù)渲?,并且相?yīng)的狀態(tài)值在周期變化時在環(huán)形拓?fù)鋬?nèi)繼續(xù)移位。移位寄存器200_2的所有狀態(tài)位連續(xù)地由位于環(huán)形拓?fù)渲须娏魃嫌?圖IOa中的左邊)的移位寄存器200_2的狀態(tài)位取代。如果在根據(jù)圖IOa的電路布置中施加多個不同的隨機(jī)值Z’分別達(dá)4個時鐘周期,那么移位寄存器200_2的初態(tài)按照以上實(shí)施方式交換和移動。由于這些交換取決于具有其秘密位Gi的密鑰G并且這些交換在隨機(jī)值Z’ =0時由移位取代,因而在足夠數(shù)目的隨機(jī)位的情況下達(dá)到用于根據(jù)本發(fā)明的簽名形成的初態(tài) ,該初態(tài)一方面是隨機(jī)的(由于隨機(jī)位序列Z’的使用)并且對于攻擊者而言也是不可預(yù)測的,這是因?yàn)樵摮鯌B(tài)即使在知道隨機(jī)位Z’的情況下也不能計算當(dāng)前的轉(zhuǎn)置,因?yàn)樗_(dá)到的狀態(tài)還取決于密鑰G。與將整個初態(tài)存儲在根據(jù)圖5a的秘密存儲器102中不同,密鑰G通常具有較小的位寬,這在存儲在秘密存儲器時被證明是有利的。上述移位操作的電流消耗是恒定的,因?yàn)橐莆淮鎯ζ?00_2中的位數(shù)不變。復(fù)用器220、240始終驅(qū)動相同的負(fù)載。但是,復(fù)用器的輸出信號的狀態(tài)根據(jù)該復(fù)用器的所選擇的輸入端處的值而變。圖IOa中所有輸入復(fù)用器220的總和在每個周期中均呈現(xiàn)相同的狀態(tài)位,僅分別在環(huán)形拓?fù)渲械牟煌恢锰?。對于輸出?fù)用器240,不施加所有理論上可能的位值;旁通支路的位不通過此復(fù)用器240上引導(dǎo)。這取決于有多少位Xi=I以及有多少I依次相鄰(級聯(lián))。此處,如果級聯(lián)變得過大,則在電流消耗并且主要在時延方面存在差異。因此,通過秘密位Gi的合適設(shè)計來避免級聯(lián)可以是有意義的。如果例如Gg = 1,則例如得出Gi = O。這種確定可以在選擇秘密位Gi時就已經(jīng)考慮或者還通過在獨(dú)立于秘密位Gi的選擇的情況下防止兩個為I的位值彼此相繼的電路來考慮。在圖IOb中示出了具有根據(jù)本發(fā)明的變換元件TE_1的電路布置,如果多個位Xi相繼具有為I的值,則該電路布置實(shí)現(xiàn)兩個方向上的級聯(lián)。這是通過附加的復(fù)用器241、221達(dá)成的。第i個變換元件TE_1的復(fù)用器根據(jù)前一元件TE_0或后一元件TE_2的Xi值進(jìn)行切換。復(fù)用器221由Xp1控制并且復(fù)用器241由Xi+1控制。此電路布置由此提供以下優(yōu)點(diǎn)在其他情況下不被包括在級聯(lián)中的位對電流消耗具有相應(yīng)的影響。這些位被接線成單獨(dú)的局部環(huán)。因此,前向支路中的旁通操作由后向支路疊加。兩條支路中的定時是等效的在前向支路中通過復(fù)用器240并且在后向支路中通過復(fù)用器241。同樣,子環(huán)中的定時也是相同的在全局環(huán)中通過復(fù)用器240、220,在子環(huán)中通過復(fù)用器221、220。轉(zhuǎn)置的生成因此也在級聯(lián)時非常難以通過電流消耗來觀察。此外,根據(jù)圖IOb的電路布置導(dǎo)致用于狀態(tài)自動機(jī)的初始化的初值的較大混勻,因?yàn)閳DIOb中的狀態(tài)信息的移動也可以向左進(jìn)行。如果現(xiàn)在在根據(jù)圖IOb的電路中同樣將諸如圖IOa中的電路用來生成調(diào)節(jié)移位鏈的轉(zhuǎn)接的Xi值,那么潛在的攻擊由此是可能的,因?yàn)樗褂玫拿孛芪籊i的值是恒定的。在圖IOc中說明有利地從秘密位Gi生成可變值Xi的電路布置。為此,其他隨機(jī)值Zi"連同秘密位Gi —起流入控制位Xi的生成。如從圖IOc可見,例如對應(yīng)于根據(jù)本發(fā)明的簽名裝置100的第i個變換元件TE_i的控制位Xi是根據(jù)另一隨機(jī)值Zi'秘密位Gi和控制位Xi形成,其中當(dāng)前該另一隨機(jī)值Zi"和秘密位Gi被輸送給XOR元件250。XOR元件250的輸出信號連同隨機(jī)位Z’ 一起被輸送給UND元件251,因此在該UND元件251的輸出端處得到控制位Xi。為了向潛在的攻擊者提供更少的攻擊可能性,尤其在隨機(jī)值是已知的或甚至外部預(yù)先給定的情況下,考慮此隨機(jī)值不直接接到根據(jù)圖IOa或圖IOc的電路的輸入端Z’上。有利的是,隨機(jī)值Z例如通過經(jīng)修改的線性反饋移位寄存器LFSR生成具有隨機(jī)值Z’的許多信號變化的偽隨機(jī)序列。為此,隨機(jī)值例如被輸送給根據(jù)圖IOf的LFSR 260。LFSR 260具有通過異或元件262a、262b彼此 連接的四個觸發(fā)器261a、261b、261c、261d。各個觸發(fā)器261a、261b、261c、261d的狀態(tài)值如從圖IOf可見的那樣通過不同的未更詳細(xì)命名的邏輯元件連同隨機(jī)值Z—起反饋到異或元件262a。在LFSR 260的輸出端處,最后得到經(jīng)修改的隨機(jī)值Z’作為LFSR 260的最高有效的狀態(tài)位。其他觸發(fā)器261a、261b、261c的輸出可被用作根據(jù)圖IOc的電路中的經(jīng)修改的隨機(jī)值Zi"。在使用通過LFSR 260在簽名裝置100內(nèi)部中生成的隨機(jī)值Z’、Zi〃并結(jié)合足夠長的用于狀態(tài)自動機(jī)ZA的初始化的轉(zhuǎn)置階段的情況下,考慮初始值的充分交換并且因此考慮關(guān)于根據(jù)本發(fā)明的簽名形成的降低的攻擊可能性。圖IOd說明根據(jù)本發(fā)明的用于從傳統(tǒng)地獲得的隨機(jī)位Z生成根據(jù)本發(fā)明經(jīng)修改的隨機(jī)位Z’的裝置。隨機(jī)位Z可以或者在簽名裝置100內(nèi)部生成或者由外部源提供。LFSR260在此以通過分頻器270從參考時鐘T獲得的時鐘頻率T/4來以時鐘方式工作。參考時鐘T被直接輸送給根據(jù)本發(fā)明的移位寄存器200_2 (圖IOa)并且定義其處理周期。圖IOe示例性地示出參考時鐘T和根據(jù)本發(fā)明獲得的隨機(jī)位Z’的時序圖。在使用根據(jù)本發(fā)明獲得的隨機(jī)值Z’、Zi"的情況下確定的Xi值(參見圖IOc)有利地實(shí)現(xiàn)了包括或跳過整個環(huán)形拓?fù)涞母鱾€移位寄存器200_2 (圖IOa)的可變設(shè)計。因此,達(dá)成了不同的移位寄存器200_2或狀態(tài)自動機(jī)下的狀態(tài)值的較好混勻,但是還使攻擊者的可觀察性變得困難。在本發(fā)明的另一個設(shè)計方案中,可以在根據(jù)圖IOc的電路中限制在移動狀態(tài)值時跳過的初始值的最大數(shù)目。為此,使控制位值Xi取決于先前級i_l、i-2的值Xi+ Xi_2。如果兩個等式Xp1= 0或\_2: 0中的至少一個成立,則例如在電路技術(shù)上僅允許值Xi= I。由此例如將級聯(lián)限制到兩級。以上的初始化過程可應(yīng)用于兩組變換元件G_0、G_1 (圖2)的所有狀態(tài)自動機(jī)ZA??梢詾榈诙MG_1的狀態(tài)自動機(jī)或移位寄存器設(shè)置附加的秘密位(Gi值)。替換地,還可以使用用于第一組G_0的狀態(tài)自動機(jī)的秘密位Gi或從中推導(dǎo)出的值。此外,使用經(jīng)反相的秘密位也是可能的,以便還關(guān)于初始化達(dá)成組G_0、G_1之間的進(jìn)一步補(bǔ)償。還存在如下可能性將第一組G_0的狀態(tài)自動機(jī)的所生成或載入的原始初始狀態(tài)載入第二組G_1的狀態(tài)自動機(jī)并且隨后在必要時還進(jìn)一步操縱該初始狀態(tài),例如通過施加隨機(jī)的輸入序列input_rnd(參見圖5b)。在圖10a、10b、IOc中描繪的組件應(yīng)當(dāng)在電路技術(shù)的實(shí)現(xiàn)中盡可能被實(shí)現(xiàn)為簽名裝置100的布局中的重復(fù)結(jié)構(gòu),以使得對根據(jù)本發(fā)明的裝置100或各個組件的電磁輻射的未經(jīng)授權(quán)的分析變得困難。圖8示意性地示出根據(jù)本發(fā)明的電路布置形式的簽名裝置100的實(shí)現(xiàn),該電路布置具有多個電子元件。電路布置100具有時鐘輸入端CLK作為輸入連接端,以及例如可通過其提供輸入信號input (圖I)的數(shù)據(jù)輸入端DAT。此外,電路布置100擁有電源連接端Vsup和可以例如是接地連接端的另一參考電位連接端GND。為清楚明了,圖8中僅描繪了時鐘線路CLK的線路段110,該線路段110向示例性
地描繪的四個變換元件TE_0.....TE_3提供時鐘信號。同樣,這樣的線路段120由數(shù)據(jù)線
路來描繪,該數(shù)據(jù)線路將變換元件TE_0.....TE_3與電路布置100的輸出連接端OUT相連接。
根據(jù)本發(fā)明,時鐘線路CLK和數(shù)據(jù)線路OUT的線路段110、120在長度、傳輸特性、容量等方面彼此協(xié)調(diào)一致,以使得經(jīng)由線路段110、120從共用的連接端CLK傳送的信號或者傳送至共用的連接端OUT的信號同時抵達(dá)各個組件TE_0、TE_1、...。通過由此得到的關(guān)于變換元件TE_0.....TE_3的信號處理的對稱性和同步性使得DPA攻擊進(jìn)一步變得困難。圖Ila示出根據(jù)本發(fā)明的非線性反饋移位寄存器220_3的另一個實(shí)施方式,該非線性反饋移位寄存器220_3擁有總共5個存儲元件204a、204b、204c、204d、204e,這些存儲元件如從圖Ila可見的那樣通過異或元件202a、202b、202c、202d彼此連結(jié)。在圖11中所描繪的拓?fù)渲?,非線性反饋是通過包括功能塊205、206的反饋支路實(shí)現(xiàn)的。附加地將輸入信號input
輸送給功能塊206。以上參照圖Ila描述的非線性反饋移位寄存器220_3的拓?fù)涓鶕?jù)輸入信號input
實(shí)現(xiàn)兩個不同的本原多項(xiàng)式X5 + X2 + I和X5 + X3 + X2 + X + I ,參見結(jié)構(gòu)圖llb、llc,這些本原多項(xiàng)式說明了圖Ila中的移位寄存器220_3的根據(jù)輸入信號input
得到的基本結(jié)構(gòu)。圖12示出狀態(tài)轉(zhuǎn)換圖,其說明了由根據(jù)圖Ila的非線性反饋移位寄存器220_3實(shí)現(xiàn)的狀態(tài)自動機(jī)的所有可能的狀態(tài)Z0、. . .、Z31。已參照根據(jù)圖9的狀態(tài)轉(zhuǎn)換圖解釋的相互關(guān)系適用于這些狀態(tài)轉(zhuǎn)換。圖13示例性地示出具有三個存儲元件204a、204b、204c的非線性反饋移位寄存器220_4,這些存儲元件通過未詳細(xì)命名的異或元件彼此連結(jié)。通過其他功能塊207、208、209根據(jù)輸入信號input
引起非線性反饋。圖13中描繪的非線性反饋移位寄存器220_4又根據(jù)輸入信號input
的狀態(tài)實(shí)現(xiàn)本原多項(xiàng)式X3 + X +1和X3 + X2 + I。圖14示出圖13中的非線性反饋移位寄存器220_4的可能狀態(tài)的狀態(tài)轉(zhuǎn)換圖。由于NLMISR類型的移位寄存器具有沖突,即可從不同、兩者都進(jìn)入NLMISR的相同終態(tài)的輸入數(shù)據(jù)序列的某個初態(tài)得出的特性,因而根據(jù)本發(fā)明可有利地提出,如此構(gòu)造根據(jù)NLMISR原理工作的根據(jù)本發(fā)明的狀態(tài)自動機(jī)TA、ZA’,以使得它們在無沖突的情況下工作。為此必須確保,輸入信號input (圖I)對于相繼處理周期的可預(yù)先給定的最大數(shù)目不保持恒定。這可有利地例如通過如下方式達(dá)成向輸入信號input添加至少一個奇偶校驗(yàn)位,其中該奇偶校驗(yàn)位如同輸入信號本身一樣被輸送給變換元件TE_0,...以供處理。通過在輸入信號的合適位值處添加奇偶校驗(yàn)位有利地確保了,輸入信號以不長于處理周期的最大數(shù)目的方式保持恒定。替換地或補(bǔ)充地,還可向輸入信號input補(bǔ)償具有相同效果的填充位。用于根據(jù)上述準(zhǔn)則修改輸入信號input的合適裝置可被設(shè)置在各個根據(jù)本發(fā)明的變換元件TE_0,…中。
權(quán)利要求
1.ー種用于從輸入信號(input)形成簽名(S)的裝置(100),其特征在于,設(shè)置多個分別具有狀態(tài)自動機(jī)(ZA)的變換元件(TE_0、TE_1、 ),所述輸入信號(input)和/或取決于所述輸入信號的信號(input’ )能分別在輸入側(cè)輸送給所述變換元件,所有狀態(tài)自動機(jī)(ZA)是相同類型的且如此構(gòu)造,尤其能初始化,以使得每個狀態(tài)自動機(jī)(ZA)始終分別具有不同于所有其他狀態(tài)自動機(jī)(ZA)的另ー狀態(tài),并且所述簽名(S)能根據(jù)至少ー個狀態(tài)自動機(jī)(ZA)的狀態(tài)信息來形成。
2.根據(jù)權(quán)利要求I所述的裝置(100),其特征在于,所述變換元件(TE_0、TE_1、 )的數(shù)目對應(yīng)于所述狀態(tài)自動機(jī)的最大可能不同狀態(tài)的數(shù)目。
3.根據(jù)以上權(quán)利要求之一所述的裝置(100),其特征在于,所述輸入信號(input)能并行地以能預(yù)先給定長度的數(shù)據(jù)字的形式輸送給所述變換元件(TE_0、TE_1、. . . ;TE_16、TE_17,…)。
4.根據(jù)以上權(quán)利要求之一所述的裝置(100),其特征在于,所述簽名(S)能被形成為表示多個變換元件(TE_0、TE_1、 ;TE_16、TE_17,...)的狀態(tài)自動機(jī)的狀態(tài)信息的數(shù)據(jù)字的級聯(lián)。
5.根據(jù)以上權(quán)利要求之一所述的裝置(100),其特征在干,所述狀態(tài)自動機(jī)被構(gòu)造成根據(jù)所述輸入信號(input、input’)進(jìn)行從初態(tài)(Z8)到次態(tài)(Z9)的轉(zhuǎn)移,從而對于任意的能預(yù)先給定的輸入信號(input、input’ )分別得到明確的次態(tài)(Z9),其中尤其不存在在相同輸入信號(input、input’ )的情況下導(dǎo)致相同次態(tài)(Z9)的兩個不同的初態(tài)。
6.根據(jù)以上權(quán)利要求之一所述的裝置(100),其特征在于,設(shè)置多組(G_0、G_1)變換元件(TE_0、TE_1、 ;TE_16、TE_17, ),其中相同的輸入信號(input)和/或取決于所述輸入信號的相同信號(input’ )能分別被輸送給同一組(G_0、G_l)的所有變換元件(TE_0、TE_1、. . ;TE_16、TE_17, )。
7.根據(jù)權(quán)利要求6所述的裝置(100),其特征在于,所述輸入信號(input)能輸送給第ー組(G_0)的變換元件(TE_0、TE_1、...),并且經(jīng)反相的輸入信號(input’ )能輸送給第二組(G_l)的變換元件(TE_16、TE_17、. .)。
8.根據(jù)權(quán)利要求6到7之一所述的裝置(100),其特征在于,屬于不同組(G_0、G_1)的變換元件(TE_0、TE_1、. ;TE_16、TE_17、.)的狀態(tài)自動機(jī)(ZA、ZA’ )彼此不是相同類型的。
9.根據(jù)以上權(quán)利要求之一所述的裝置(100),其特征在于,能分別用能預(yù)先給定的初始狀態(tài)(init)來初始化至少ー個狀態(tài)自動機(jī)(ZA)、但是優(yōu)選所有狀態(tài)自動機(jī)(ZA)。
10.根據(jù)權(quán)利要求9所述的裝置(100),其特征在于,所述初始狀態(tài)(init)能存儲在秘密存儲器(102)中并且為了所述初始化能傳送至所述ー個或多個狀態(tài)自動機(jī)(ZA)中。
11.根據(jù)權(quán)利要求10所述的裝置(100),其特征在于,在用所述初始狀態(tài)(init)進(jìn)行初始化之后能對所述狀態(tài)自動機(jī)(ZA)施加基于隨機(jī)的輸入信號(input_rnd)。
12.根據(jù)權(quán)利要求9到11之一所述的裝置(100),其特征在于,能分別用能預(yù)先給定的初始狀態(tài)(init)來初始化所有狀態(tài)自動機(jī)(ZA、ZA’),其中能用另ー個個體初始狀態(tài)來初始化每個狀態(tài)自動機(jī)。
13.根據(jù)權(quán)利要求12所述的裝置(100),其特征在于,所述狀態(tài)自動機(jī)(ZA;ZA’ )的各個初始狀態(tài)能尤其是取決于隨機(jī)地和/或根據(jù)密鑰彼此轉(zhuǎn)置。
14.根據(jù)以上權(quán)利要求之一所述的裝置(100),其特征在于,所述裝置(100)至少部分地是以優(yōu)選具有單片集成的電子元件和/或光學(xué)元件的電路布置的形式實(shí)現(xiàn)的。
15.根據(jù)權(quán)利要求14所述的裝置(100),其特征在于,實(shí)現(xiàn)所述變換元件(TE_0、TE_1、...)或其狀態(tài)自動機(jī)(ZA)的元件組和/或接觸所述元件組的數(shù)據(jù)線路尤其以對應(yīng)于所述電路布置的布局中的重復(fù)結(jié)構(gòu)的形式被相同類型地構(gòu)造。
16.根據(jù)權(quán)利要求14到15之一所述的裝置,其特征在干,時鐘線路和/或數(shù)據(jù)線路和/或供電線路的、與實(shí)現(xiàn)所述多個變換元件(了£_03£_1、...)或其狀態(tài)自動機(jī)(ZA)的元件組相連接的線路段彼此協(xié)調(diào)一致,以使得從共用連接端(CLK、OUT)通過所述線路段傳送的信號同時抵達(dá)所述各個組。
17.根據(jù)以上權(quán)利要求之一所述的裝置(100),其特征在于,至少ー個狀態(tài)自動機(jī)(ZA、ZA’)、但是優(yōu)選所有狀態(tài)自動機(jī)(ZA、ZA’)是借助優(yōu)選具有多個輸入端的非線性反饋移位寄存器 NLMISR (200、200_1、200_2、200_3、200_4)實(shí)現(xiàn)的。
18.根據(jù)權(quán)利要求17所述的裝置(100),其特征在于,所述NLMISR(200)具有多個串聯(lián)的優(yōu)選被構(gòu)造為觸發(fā)器的存儲元件(204a、204b、204c、204d),以及轉(zhuǎn)接單元(210、210’),所述轉(zhuǎn)接單元被構(gòu)造成根據(jù)所述輸入信號(input
、input [I]、input [2]、input [3])修改所述NLMISR (200)的至少一條反饋支路,以使得能夠通過所述NLMISR (200)實(shí)現(xiàn)與所述輸入信號(input
、input [I]、input [2]、input [3])的狀態(tài)對應(yīng)的多項(xiàng)式。
19.根據(jù)權(quán)利要求17到18之一所述的裝置(100),其特征在于,所述NLMISR(200)被構(gòu)造成處理4位寬的輸入信號(input_0)并且選擇性地實(shí)現(xiàn)本原多項(xiàng)式x4+x3+l和x4+x+l。
20.根據(jù)權(quán)利要求17到19之一所述的裝置(100),其特征在于,所述NLMISR(200)被構(gòu)造成處理3位寬的輸入信號(input_l)并且選擇性地實(shí)現(xiàn)本原多項(xiàng)式x3+x+l和x3+x2+l。
21.ー種用于從輸入信號(input)形成簽名(S)的方法,其特征在于,在輸入側(cè)分別將所述輸入信號(input)和/或取決于所述輸入信號的信號(input’)輸送給多個分別具有狀態(tài)自動機(jī)(ZA)的變換元件(TE_0、TE_1、…),所有狀態(tài)自動機(jī)(ZA)是相同類型的且優(yōu)選被初始化為使得每個狀態(tài)自動機(jī)(ZA)始終分別具有不同于所有其他狀態(tài)自動機(jī)(ZA)的另ー狀態(tài),并且所述簽名(S)根據(jù)至少一個狀態(tài)自動機(jī)(ZA)的狀態(tài)信息來形成。
22.根據(jù)權(quán)利要求21所述的方法,其特征在于,使用與所述狀態(tài)自動機(jī)(ZA)的最大可能不同狀態(tài)(Z0、Z1、 、Z15) 一樣多的變換元件(TE_0、TE_1、…、TE_15)。
23.根據(jù)權(quán)利要求21到22之一所述的方法,其特征在干,所述輸入信號(input)并行地以能預(yù)先給定長度的數(shù)據(jù)字的形式輸送給所述變換元件(TE_0、TE_1、. . . ;TE_16、TE_17,...)和/或所述簽名(S)能被形成為表示多個變換元件(TE_0、TE_1、. . . ;TE_16、TE_17,...)的狀態(tài)自動機(jī)(ZA)的狀態(tài)信息的數(shù)據(jù)字的級聯(lián)。
24.根據(jù)權(quán)利要求21到23之一所述的方法,其特征在于,每個狀態(tài)自動機(jī)(ZA)根據(jù)所述輸入信號(input, input’ )從初態(tài)(Z8)轉(zhuǎn)入次態(tài)(Z9),使得對于任意的能預(yù)先給定的輸入信號(input,input’)分別得到明確的次態(tài)(Z9),其中尤其不存在在相同輸入信號(input, input’ )的情況下導(dǎo)致相同次態(tài)(Z9)的兩個不同的初態(tài)。
25.根據(jù)權(quán)利要求21到24之一所述的方法,其特征在于,設(shè)置多組(G_0,G_l)變換元件(TE_0,TE_1, ; TE_16, TE_17, ),其中相同的輸入信號(input)和/或取決于所述輸入信號的相同信號(input’ )分別被輸送給同一組(G_0,G_l)的所有變換元件(TE_0,TE_1, ; TE_16, TE_17,...),其中尤其將所述輸入信號(1即此)輸送給第一組(6_0)的變換元件(TE_0、TE_1、...),并且將經(jīng)反相的輸入信號(input’ )輸送給第二組(G_l)的變換元件(TE_16、TE_17、.)。
26.根據(jù)權(quán)利要求21到25之一所述的方法,其特征在于,分別用能預(yù)選給定的初始狀態(tài)(init)初始化至少ー個、但是優(yōu)選所有的狀態(tài)自動機(jī)(ZA),其中尤其用另ー個個體初始狀態(tài)來初始化組(G_0、G_1)內(nèi)的每個狀態(tài)自動機(jī)(ZA)。
27.根據(jù)權(quán)利要求26所述的方法,其特征在于,所述初始狀態(tài)(init)被存儲在秘密存儲器(102)中并且為了所述初始化被傳送至所述ー個或多個狀態(tài)自動機(jī)(ZA)中。
28.根據(jù)權(quán)利要求26到27之一所述的方法,其特征在于,在用所述初始狀態(tài)(init)進(jìn)行初始化之后對所述狀態(tài)自動機(jī)(ZA)施加基于隨機(jī)的輸入信號(input_rnd)0
29.根據(jù)權(quán)利要求26到28之一所述的方法,其特征在于,所述狀態(tài)自動機(jī)(ZA)的各個初始狀態(tài)尤其是取決于隨機(jī)地和/或根據(jù)密鑰彼此轉(zhuǎn)置。
全文摘要
本發(fā)明涉及一種用于從輸入信號(input)形成簽名(S)的裝置(100)。根據(jù)本發(fā)明,設(shè)置多個分別具有狀態(tài)自動機(jī)(ZA)的變換元件(TE_0、TE_1、…),可分別將輸入信號(input)和/或取決于該輸入信號的信號(input')輸送給這些變換元件,所有狀態(tài)自動機(jī)(ZA)是相同類型的并且被如此構(gòu)造,尤其是能初始化,以使得每個狀態(tài)自動機(jī)(ZA)始終分別具有不同于所有其他狀態(tài)自動機(jī)的另一狀態(tài),并且簽名(S)能根據(jù)至少一個狀態(tài)自動機(jī)(ZA)的狀態(tài)信息來形成。
文檔編號H04L9/32GK102804681SQ201080027909
公開日2012年11月28日 申請日期2010年6月8日 優(yōu)先權(quán)日2009年6月23日
發(fā)明者E.伯爾, M.伯爾, P.杜普利斯 申請人:羅伯特·博世有限公司