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

用于執(zhí)行混淆算術(shù)的電子計(jì)算設(shè)備的制作方法

文檔序號(hào):11637056閱讀:191來(lái)源:國(guó)知局
用于執(zhí)行混淆算術(shù)的電子計(jì)算設(shè)備的制造方法與工藝

本發(fā)明涉及電子計(jì)算設(shè)備、環(huán)編碼設(shè)備、環(huán)解碼設(shè)備、表計(jì)算設(shè)備、電子計(jì)算方法、計(jì)算機(jī)程序以及計(jì)算機(jī)可讀介質(zhì)。



背景技術(shù):

在白盒密碼術(shù)和更一般地軟件混淆中,常常對(duì)已編碼值而不是明文值執(zhí)行計(jì)算。如果對(duì)已編碼值而不是對(duì)明文值本身執(zhí)行計(jì)算,則已混淆軟件的逆向工程是更難的。

在編碼之后,不再能使用計(jì)算機(jī)的內(nèi)置原語(yǔ)來(lái)執(zhí)行規(guī)則運(yùn)算,例如加法或乘法。已編碼值的簡(jiǎn)單加法正常地不導(dǎo)致值的加法的編碼。這也適用于乘法。有公式:對(duì)于大多數(shù)x和y而言,e(x)+e(y)≠e(x+y);e指代編碼函數(shù)。

此問(wèn)題的解決方案是引入加法(a)和乘法(m)表。該表取兩個(gè)已編碼值作為輸入并產(chǎn)生已編碼值作為輸出,其對(duì)應(yīng)于加法或乘法運(yùn)算的編碼。可以將該表定義為:a(e(x),e(y))=e(x+y);m(e(x),e(y))=e(xy)。這些表允許直接地對(duì)已編碼值執(zhí)行算術(shù)。

使用表的已混淆加法和乘法遭受至少兩個(gè)缺點(diǎn)的影響。首先,表可以變得相當(dāng)大。如果將x和y表示為l比特,每個(gè)表需要22ll比特。

其次,這樣的大的表在軟件中可以被容易地找到。更壞的是,表可能仍被標(biāo)識(shí)為加法或乘法運(yùn)算,即使其被編碼;例如,通過(guò)在編碼中保留的這些函數(shù)的性質(zhì)。例如,乘法表滿足m(e(0),e(x))=e(0)。攻擊者可以使用此性質(zhì)和類似性質(zhì)來(lái)猜測(cè)該表表示哪個(gè)運(yùn)算。



技術(shù)實(shí)現(xiàn)要素:

具有用于執(zhí)行混淆算術(shù)的改善方式將是有利的。提供了如在權(quán)利要求中定義的計(jì)算設(shè)備。

本發(fā)明人發(fā)現(xiàn)在某些情況下可以使用單個(gè)表來(lái)執(zhí)行對(duì)已編碼值的乘法和加法,而不必將多個(gè)值編碼成單個(gè)已編碼值。由于同一表被用于加法和乘法,所以在逆向工程期間將難以看到是執(zhí)行了加法還是乘法。當(dāng)從外部看時(shí),由于加法和乘法看起來(lái)是相同的運(yùn)算,所以本發(fā)明人將這種方法稱為“同構(gòu)混淆”。即使攻擊者能夠找到所使用的表,并且即使他能夠以某種方式計(jì)算出其作為增量表的函數(shù),但是他仍將不會(huì)知道是執(zhí)行了加法還是乘法運(yùn)算。表作用于整數(shù)列表的元素的方式對(duì)于加法和乘法而言將不同,然而這可以使用傳統(tǒng)混淆來(lái)容易地隱藏。

另外,所使用的單個(gè)表也小于在背景技術(shù)中所討論的表:需要大約2ll比特。即使僅使用加法,混淆加法所需的表也小于在背景技術(shù)中提出的表。本發(fā)明適用于許多不同交換環(huán)r,但并不是每個(gè)環(huán)都允許編碼為整數(shù)列表。交換環(huán)是數(shù)學(xué)概念,其包括許多不同的常見(jiàn)的數(shù)學(xué)結(jié)構(gòu),例如取數(shù)為模的整數(shù)或者取數(shù)和多項(xiàng)式為模的多項(xiàng)式域是交換環(huán)的特殊情況。如本文中將描述的,技術(shù)人員可以驗(yàn)證給定環(huán)是否允許混淆。

例如,可以將環(huán)元素編碼為兩個(gè)整數(shù)(a,b)。可以使用將已編碼環(huán)元素映射到已編碼環(huán)元素加增量值的增量表直接地對(duì)編碼執(zhí)行算術(shù)。例如,如果uc-ud=ua-ub+1,則該表可以將(a,b)映射到(c,d)。通過(guò)增量表的重復(fù)應(yīng)用來(lái)執(zhí)行加法和乘法兩者。

使用增量表來(lái)執(zhí)行加法和乘法兩者改善了混淆,因?yàn)榭梢詫⑾嗤谋碛糜诩臃ê统朔?,并且減小大小,因?yàn)樵隽窟\(yùn)算是一元而不是二元的;即,表可以作用于單個(gè)環(huán)元素而不是兩個(gè)環(huán)元素。然而,期望進(jìn)一步減小增量表的大小。

本發(fā)明人發(fā)現(xiàn)可以通過(guò)對(duì)基元素的指數(shù)施加限制并通過(guò)對(duì)表示環(huán)元素的整數(shù)列表中的整數(shù)的蘊(yùn)涵來(lái)進(jìn)一步減小增量表。特別地,可以使整數(shù)列表中的整數(shù)之間的差局限于特定允許差列表。此列表的大小小于基環(huán)元素(或者基環(huán)元素中的一個(gè),如果存在超過(guò)一個(gè)的話)的階數(shù)。

如在本文中將更全面地討論的,存在許多其它可能性和變體。在任何給定實(shí)施方式中許多變體中的哪一個(gè)變體已被選擇對(duì)于攻擊者而言通常將是未知的。

所述計(jì)算設(shè)備是電子設(shè)備,并且可以是移動(dòng)電子設(shè)備,例如移動(dòng)電話、機(jī)頂盒、計(jì)算機(jī)、智能卡等。

如本文中所述的混淆算術(shù)可以在大范圍的實(shí)際應(yīng)用中應(yīng)用。這樣的實(shí)際應(yīng)用可以包括在私有硬件上運(yùn)行的安全應(yīng)用,例如銀行應(yīng)用等,其中要預(yù)防逆向工程。其它應(yīng)用包括其中要預(yù)防數(shù)據(jù)的無(wú)意泄露的應(yīng)用。如果程序被哄騙釋放私有數(shù)據(jù),如果泄露的數(shù)據(jù)已被編碼,則這不那么令人擔(dān)心。還可以將混淆算術(shù)應(yīng)用于運(yùn)行應(yīng)用的服務(wù)器。如果用戶以編碼形式發(fā)送和接收數(shù)據(jù),則增加隱私性。

根據(jù)本發(fā)明的方法可以作為計(jì)算機(jī)實(shí)現(xiàn)方法在計(jì)算機(jī)上實(shí)現(xiàn)、或者在專用硬件中實(shí)現(xiàn)、或以兩者的組合的方式實(shí)現(xiàn)。用于根據(jù)本發(fā)明的方法的可執(zhí)行代碼或其部分可以存儲(chǔ)在計(jì)算機(jī)程序產(chǎn)品上。計(jì)算機(jī)程序產(chǎn)品的示例包括存儲(chǔ)器設(shè)備、光學(xué)存儲(chǔ)設(shè)備、集成電路、服務(wù)器、在線軟件等。優(yōu)選地,計(jì)算機(jī)程序產(chǎn)品包括存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上以便當(dāng)所述程序產(chǎn)品在計(jì)算機(jī)上執(zhí)行時(shí)執(zhí)行根據(jù)本發(fā)明的方法的非臨時(shí)程序代碼部件。

在優(yōu)選實(shí)施例中,計(jì)算機(jī)程序包括適合于當(dāng)計(jì)算機(jī)程序在計(jì)算機(jī)上運(yùn)行時(shí)執(zhí)行根據(jù)本發(fā)明的方法的所有步驟的計(jì)算機(jī)程序代碼部件。優(yōu)選地,在計(jì)算機(jī)可讀介質(zhì)上體現(xiàn)計(jì)算機(jī)程序。

附圖說(shuō)明

根據(jù)下文所述實(shí)施例,本發(fā)明的這些及其它目的是顯而易見(jiàn)的,并且將參考下述實(shí)施例來(lái)闡述本發(fā)明的這些及其它方面。在所述附圖中:

圖1a示意性地示出了計(jì)算設(shè)備100的實(shí)施例的示例,

圖1b示意性地示出了環(huán)加法單元130的實(shí)施例的示例,

圖1c示意性地示出了環(huán)乘法單元140的實(shí)施例的示例,

圖2示意性地示出了計(jì)算設(shè)備101的實(shí)施例的示例,

圖3示意性地示出了用于計(jì)算用于在計(jì)算設(shè)備中使用的增量表的表計(jì)算設(shè)備200的實(shí)施例的示例,

圖4示意性地示出了用于執(zhí)行混淆算術(shù)的計(jì)算方法300的實(shí)施例的示例,

圖5示意性地示出了加法方法400的實(shí)施例的示例,

圖6示意性地示出了乘法方法500的實(shí)施例的示例,

圖7a示出了根據(jù)實(shí)施例的具有包括計(jì)算機(jī)程序的可寫部分的計(jì)算機(jī)可讀介質(zhì),

圖7b示出了根據(jù)實(shí)施例的處理器系統(tǒng)的示意性表示。

在不同圖中具有相同參考標(biāo)號(hào)的項(xiàng)目具有相同的結(jié)構(gòu)特征和相同的功能,或者是相同的信號(hào)。在已解釋了這樣的項(xiàng)目的功能和/或結(jié)構(gòu)的情況下,在詳細(xì)描述中不需要其重復(fù)說(shuō)明。

圖1中的參考標(biāo)號(hào)列表:

100計(jì)算設(shè)備

110被布置成存儲(chǔ)增量表的存儲(chǔ)裝置

120環(huán)求反單元

130環(huán)補(bǔ)充單元

140環(huán)乘法單元

150操作數(shù)存儲(chǔ)庫(kù)

160解碼單元

170編碼單元

172被布置成存儲(chǔ)編碼表的存儲(chǔ)裝置。

具體實(shí)施方式

雖然本發(fā)明可以有許多不同形式的實(shí)施例,但在圖中示出且將在本文中詳細(xì)地描述一個(gè)或多個(gè)特定實(shí)施例,并且應(yīng)理解的是應(yīng)將本公開(kāi)內(nèi)容視為本發(fā)明的原理的示例且其并不意圖使本發(fā)明局限于所示和所述的特定實(shí)施例。

在下文中,為了便于理解,在操作中描述實(shí)施例的元件。然而,將顯而易見(jiàn)的是,相應(yīng)元件被布置成執(zhí)行被描述為由其執(zhí)行的功能。

實(shí)施例允許使用同一表來(lái)執(zhí)行乘法和加法運(yùn)算。下面,首先討論計(jì)算設(shè)備的實(shí)施例的許多可能架構(gòu)。接下來(lái),討論用以執(zhí)行混淆算術(shù)的許多替換方式。

圖1示意性地示出了計(jì)算設(shè)備100的實(shí)施例的示例。計(jì)算設(shè)備100是用于在有限交換環(huán)中執(zhí)行混淆算術(shù)的電子設(shè)備。交換環(huán)的許多示例是已知的。下面針對(duì)兩個(gè)這樣的環(huán)給出示例:取數(shù)為模的整數(shù)或者取數(shù)和多項(xiàng)式為模的多項(xiàng)式其它實(shí)施例可以使用其它交換環(huán)。

環(huán)的元素被稱為環(huán)元素。關(guān)于環(huán)元素,定義加法和乘法,后者稱為環(huán)加法和環(huán)乘法。

如果需要的話,可以用任何適當(dāng)形式來(lái)表示環(huán)元素。例如,可以將的元素表示為整數(shù);將的元素表示為多項(xiàng)式。然而,在計(jì)算設(shè)備100中,將環(huán)元素表示為整數(shù)列表。例如,在計(jì)算設(shè)備100中用列表(a1,a2)來(lái)表示環(huán)元素a。后者甚至適用于非整數(shù)環(huán),例如多項(xiàng)式環(huán)。整數(shù)列表根據(jù)環(huán)元素與整數(shù)列表之間的某種映射將環(huán)元素編碼;給定任何環(huán)元素,存在表示環(huán)元素的至少一個(gè)整數(shù)列表,并且給定任何整數(shù)列表,存在其表示的恰好一個(gè)環(huán)元素。在實(shí)施例中,可以將任何環(huán)元素表示為整數(shù)列表。

整數(shù)列表包括至少兩個(gè)整數(shù),并且將環(huán)元素編碼,使得環(huán)元素等于基環(huán)元素的冪的線性組合,其中,冪具有由整數(shù)列表確定的指數(shù)。例如,整數(shù)列表(a1,a2)可以將環(huán)元素a編碼,使得環(huán)元素等于冪的線性組合,例如使用基環(huán)元素u的基環(huán)元素在環(huán)中具有階數(shù)。基環(huán)元素u的階數(shù)被定義為最小正整數(shù)k,使得在環(huán)中uk=1。有時(shí)將該階數(shù)指代為order(u)=k。

指數(shù)之間的差被包括在允許差列表中。如果指數(shù)本身在整數(shù)列表中,則整數(shù)列表的第一整數(shù)(例如,a1)和整數(shù)列表的第二整數(shù)(例如,a2)被包括在允許差列表中。另一方面這不是必需的。例如,整數(shù)列表(a1,a2)還可以映射到等。在這種情況下,僅要求整數(shù)列表的一個(gè)元素被包括在允許差列表中。從整數(shù)列表到指數(shù)的其它映射是可能的。允許差列表的大小小于基元素的階數(shù)。這意味著減少了用于整數(shù)列表的選擇的數(shù)目。例如,給定單個(gè)具有階數(shù)k的基環(huán)元素u,不同表示的總數(shù)是k2。然而,當(dāng)要求差在大小c的允許差列表中時(shí),表示的總數(shù)變成kc,其小于k2。我們將使用字母a來(lái)指代允許差列表。

整數(shù)列表具有至少兩個(gè)元素。如事實(shí)證明的,如果整數(shù)列表較短,則加法和乘法運(yùn)算要求較少的步驟。因此,在實(shí)施例中,整數(shù)列表總是具有兩個(gè)元素。在主要描述中,我們將假設(shè)整數(shù)列表是整數(shù)對(duì),然而,提供了具有多于兩個(gè)元素的整數(shù)列表的示例。

作為示例,整數(shù)列表(a1,a2)可以映射到環(huán)元素其中,u是特殊環(huán)元素,其稱為基環(huán)元素。此外,我們將假設(shè)使用單個(gè)基環(huán)元素u。下面討論了許多變體,包括使用多個(gè)基元素。然而,在主要討論中,我們將作為“示例編碼”而假設(shè)給定整數(shù)列表(a1,a2)映射到環(huán)元素并且a1-a2∈a,其中,a表示允許差列表;請(qǐng)注意存在其它選項(xiàng)。

可以將允許差列表視為的子集??梢詫⒃摬钤试S差列表表示為列表(例如陣列)或正整數(shù)。驗(yàn)證差是否在列表中可以要求執(zhí)行取模k運(yùn)算。然而,在實(shí)際實(shí)現(xiàn)方式中,允許差列表的使用將是隱含的;編碼操作產(chǎn)生滿足條件的整數(shù)列表,對(duì)整數(shù)列表的操作產(chǎn)生滿足條件的整數(shù)列表作為輸出。

在實(shí)施例中,整數(shù)列表中的整數(shù)是非負(fù)的。這簡(jiǎn)化了計(jì)算,但并不是必需的。此外,在實(shí)施例中,對(duì)整數(shù)列表中的整數(shù)取基元素的階數(shù)的模。基元素u的階數(shù)是最小整數(shù)k,使得uk=1。例如通過(guò)執(zhí)行取模k運(yùn)算來(lái)使整數(shù)列表中的值保持在范圍[0,k-1]中是方便的。

計(jì)算設(shè)備100可以包括操作數(shù)存儲(chǔ)庫(kù)150。操作數(shù)被作為整數(shù)列表存儲(chǔ)在操作數(shù)存儲(chǔ)庫(kù)150中??梢詫?duì)存儲(chǔ)在操作數(shù)存儲(chǔ)庫(kù)150中的操作數(shù)執(zhí)行算術(shù)。可以將所述算術(shù)的結(jié)果存儲(chǔ)在操作數(shù)存儲(chǔ)庫(kù)150中,其中,所述結(jié)果可以在新運(yùn)算中使用,或者可以輸出到不同設(shè)備等。

可以用若干不同方式來(lái)表示整數(shù)列表,例如操作數(shù)存儲(chǔ)庫(kù)150中的操作數(shù)??梢詫⒄麛?shù)列表表示為整數(shù)的列表,例如陣列。例如,整數(shù)列表的第一整數(shù)與整數(shù)列表的第二整數(shù)之間的算術(shù)差被包括在允許差列表中。例如,采取具有兩個(gè)元素的整數(shù)列表的優(yōu)選情況,可以將整數(shù)列表表示為有序列表(k1,k2),使得k1-k2∈a。在該示例中,參數(shù)k1和k2兩者可以是被選模k(即,取基環(huán)元素的階數(shù)為模)。這并不是嚴(yán)格必需的,參數(shù)可以是任何整數(shù),在這種情況下,可以將該要求實(shí)現(xiàn)為例如(k1-k2)modk∈a。

作為另一示例,可以通過(guò)從允許差列表中選擇整數(shù)列表中的整數(shù)中的一個(gè)整數(shù)來(lái)表示增量列表。例如,此表示可以采取整數(shù)列表(k1,k2),其中,例如k2被包括在允許差列表中,可以對(duì)其它一個(gè)或者多個(gè)整數(shù)取基環(huán)元素u的階數(shù)k為模。允許差列表可以明顯小于該階數(shù),在此表示中,可以要求較少的比特來(lái)表示的a元素,因此降低了空間要求。在實(shí)施例中,要求是允許差列表a的成員的整數(shù)列表中的整數(shù)處于固定位置,例如第一或第二位置。但是后者不是必需的;該位置可以作為另一混淆度量而改變。

計(jì)算設(shè)備100包括被布置成存儲(chǔ)針對(duì)增量環(huán)元素定義的增量表t的存儲(chǔ)裝置110。增量表將輸入環(huán)元素映射到對(duì)輸出環(huán)元素進(jìn)行編碼的輸出整數(shù)列表,使得輸出環(huán)元素等于增量環(huán)元素與輸入環(huán)元素進(jìn)行環(huán)相加。在實(shí)施例中,將輸入環(huán)元素表示為整數(shù)列表。這樣,表t將整數(shù)列表映射到整數(shù)列表;兩者都是根據(jù)同一編碼的,例如同一映射。然而,存在其中在替換編碼中將輸入環(huán)元素表示為整數(shù)列表的實(shí)施例。在任何情況下,用數(shù)字形式來(lái)表示輸入環(huán)元素,允許表將輸入環(huán)元素映射到輸出環(huán)元素。

增量表的輸出整數(shù)列表滿足這樣的要求,即:輸出整數(shù)列表表示的輸出環(huán)元素等于基環(huán)元素(u)的冪的線性組合,其中,冪具有由輸出整數(shù)列表確定的指數(shù),第一指數(shù)(l1)與第二指數(shù)(l2)之間的差被包括在允許差列表(a)中。這將稱為有限差要求。在實(shí)施例中,有限差要求轉(zhuǎn)換成對(duì)整數(shù)列表的整數(shù)的要求,例如,整數(shù)列表中的整數(shù)的函數(shù)被包括在允許差列表中。

表可以以某種格式列出輸入環(huán)元素以及關(guān)聯(lián)輸出整數(shù)列表。還可以通過(guò)省略輸入環(huán)并僅列出輸出整數(shù)列表來(lái)在存儲(chǔ)裝置中表示表。例如,這可以在用規(guī)范格式來(lái)表示輸入環(huán)的情況下完成。

例如,假設(shè)示例編碼,可以用表t將輸入環(huán)元素映射到輸出整數(shù)列表。在這種情況下,可以將輸入環(huán)元素表示為整數(shù)列表,使得我們可以具有(t(k1,k2))=(l1,l2)。后者對(duì)輸出環(huán)元素進(jìn)行編碼。輸出環(huán)元素等于增量環(huán)元素與輸入環(huán)元素進(jìn)行環(huán)相加。例如,如果增量環(huán)元素是1,則l=k+1。在實(shí)施例中,增量元素可以是1,然而這并不是需要的。例如,使用示例編碼,可以針對(duì)t的某個(gè)值(例如,0<=t<o(jì)rder(u)的任何值)將增量元素選擇為ut。

不需要在表中表示輸入整數(shù)列表的所有可能組合,因?yàn)樵S多整數(shù)列表并不根據(jù)有限差要求表示環(huán)元素。

增量表比在背景技術(shù)中描述的表小得多。后者采取兩個(gè)輸入,例如用以產(chǎn)生已編碼輸出的兩個(gè)已編碼數(shù)。然而,表t僅采取一個(gè)已編碼輸出來(lái)產(chǎn)生一個(gè)已編碼輸出;增量環(huán)元素是固定的。假設(shè)編碼采取類似的空間量,t的輸入空間被減小大約至平方根。這是顯著的大小改善。

僅用增量表,計(jì)算設(shè)備可以以混淆方式表示環(huán)元素,并且可以將增量元素與這樣的已編碼環(huán)元素相加。這可以例如用來(lái)實(shí)現(xiàn)計(jì)數(shù)器。

在實(shí)施例中,計(jì)算設(shè)備100包括環(huán)加法單元130和環(huán)乘法單元140。計(jì)算設(shè)備100還可以包括環(huán)求反單元120。在實(shí)施例中,環(huán)乘法單元140可以使用加法單元130來(lái)執(zhí)行加法;加法單元130可以使用求反單元120。這已在圖1中用單元120、130和140之間的線指示。然而,各單元可以被重復(fù);例如,加法單元130可以完成其自己的求反,并且乘法單元140可以完成其自己的加法。求反也稱為“符號(hào)的改變”。

求反單元120可以接收對(duì)求反輸入環(huán)元素a進(jìn)行編碼的求反輸入整數(shù)列表(a1,a2)。求反單元120被布置成確定對(duì)求反輸出環(huán)元素b進(jìn)行編碼的求反輸出整數(shù)列表(b1,b2)。求反輸出環(huán)元素是求反輸入環(huán)元素的負(fù)數(shù),例如求反輸出環(huán)元素等于用于加法的中性環(huán)元素(0)減求反輸入環(huán)元素。因此b=-a。

在實(shí)施例中,求反單元可以通過(guò)對(duì)求反輸入整數(shù)列表改變次序來(lái)計(jì)算輸出整數(shù)列表。使用示例編碼,輸出整數(shù)列表可以是(a2,a1)。通過(guò)改變次序來(lái)求反可以通過(guò)改變從其讀取元素的地址而用代碼來(lái)高效地實(shí)現(xiàn),并且其不一定改變存儲(chǔ)器中的實(shí)際順序。這在允許差列表滿足a∈a意味著-a∈a的要求的情況下是可能的。

在實(shí)施例中,求反單元可以通過(guò)將常數(shù)與整數(shù)列表的每個(gè)整數(shù)相加來(lái)計(jì)算輸出整數(shù)。例如,在使用整數(shù)m、使得um=-1的在示例編碼中;例如,輸出整數(shù)列表可以是(a1+m,a2+m)。

在實(shí)施例中,求反單元包括求反表。求反表被配置成接收對(duì)求反輸入環(huán)元素a進(jìn)行編碼的求反輸入整數(shù)列表((a1,a2)),并產(chǎn)生對(duì)求反輸出環(huán)元素b進(jìn)行編碼的求反輸出整數(shù)列表((b1,b2)),使得b=-a。求反表并不是非常大的,因?yàn)槠涫且辉?,此外,求反表是僅需要包含用于滿足對(duì)整數(shù)列表的有限差要求的輸入的求反輸出整數(shù)列表。在加法和乘法運(yùn)算期間以相同方式使用求反表。

環(huán)加法單元130被布置成接收對(duì)第一加法輸入環(huán)元素進(jìn)行編碼的第一加法輸入整數(shù)列表(a1,a2)和對(duì)第二加法輸入環(huán)元素進(jìn)行編碼的第二加法輸入整數(shù)列表(b1,b2)。例如,環(huán)加法單元130可以從操作數(shù)存儲(chǔ)庫(kù)150接收兩個(gè)操作數(shù)。環(huán)加法單元130被布置成通過(guò)對(duì)根據(jù)第一和第二加法輸入整數(shù)列表確定的環(huán)元素應(yīng)用增量表來(lái)確定對(duì)加法輸出環(huán)元素進(jìn)行編碼的加法輸出整數(shù)列表,加法輸出環(huán)元素等于第一加法輸入環(huán)元素和第二加法輸入環(huán)元素的環(huán)加法。

在實(shí)施例中,整數(shù)列表到特定環(huán)元素的映射包括多個(gè)子映射,每個(gè)子映射與整數(shù)列表的整數(shù)相關(guān)聯(lián),子映射將整數(shù)映射到環(huán)元素。映射是應(yīng)用于關(guān)聯(lián)整數(shù)的子映射的線性組合,例如,和(sum)。子映射可以將基元素提高至由關(guān)聯(lián)整數(shù)確定的冪。例如,在示例編碼中,可以將(a1,a2)說(shuō)成是子映射的和。

圖1b圖示出加法單元130的實(shí)施例。加法單元130接收第一加法輸入整數(shù)列表131以及第二加法輸入整數(shù)列表132。加法單元130包括中間加法單元134,其被布置成重復(fù)地將從第二加法輸入整數(shù)列表132的整數(shù)獲得的環(huán)元素與第一加法輸入環(huán)元素相加。例如,中間加法單元134可以向被初始化成第一整數(shù)列表元素的中間和133做加法。加法涉及到來(lái)自存儲(chǔ)裝置110的增量表的應(yīng)用。

環(huán)乘法單元140被配置成接收對(duì)第一乘法輸入環(huán)元素進(jìn)行編碼的第一乘法輸入整數(shù)列表(r1,r2)和對(duì)第二乘法輸入環(huán)元素進(jìn)行編碼的第二乘法輸入整數(shù)列表(s1,s2)。例如,乘法單元140可以從操作數(shù)存儲(chǔ)庫(kù)150接收兩個(gè)操作數(shù)。環(huán)乘法單元140被布置成通過(guò)對(duì)根據(jù)第一和第二乘法輸入整數(shù)列表確定的環(huán)元素應(yīng)用增量表來(lái)確定對(duì)乘法輸出環(huán)元素進(jìn)行編碼的乘法輸出整數(shù)列表,乘法輸出環(huán)元素等于第一乘法輸入環(huán)元素和第二乘法輸入環(huán)元素的環(huán)乘法。

圖1c示出了乘法單元140的可能實(shí)施例。乘法單元140接收第一乘法輸入整數(shù)列表141和第二乘法輸入整數(shù)列表142。乘法單元140包括中間乘法單元144,其被布置成根據(jù)第一和第二乘法輸入整數(shù)列表141、142來(lái)確定第一中間乘法整數(shù)列表145(t1,t2)和第二中間乘法整數(shù)列表146(u1,u2),其分別地對(duì)第一和第二中間乘法環(huán)元素進(jìn)行編碼。乘法單元140被布置成通過(guò)環(huán)加法單元130將第一中間乘法整數(shù)列表145和第二中間乘法整數(shù)列表146相加。確定中間整數(shù)列表可以涉及到對(duì)整數(shù)列表中的整數(shù)的算術(shù)運(yùn)算,但是不要求增量表。

計(jì)算設(shè)備100可選地包括用于將交換環(huán)的環(huán)元素編碼為整數(shù)列表的環(huán)編碼單元170以及用于將整數(shù)列表(a,b)解碼成交換環(huán)的環(huán)元素(x)的環(huán)解碼單元160。編碼單元170和/或解碼單元160可以不存在,例如當(dāng)計(jì)算設(shè)備100接收已編碼輸入和/或在已編碼輸出中報(bào)告時(shí)。可以將編碼單元170和/或解碼單元160實(shí)現(xiàn)為獨(dú)立單元,例如作為編碼設(shè)備和/或解碼設(shè)備160。

環(huán)編碼單元170可以包括被布置成存儲(chǔ)針對(duì)基環(huán)元素(u)定義的編碼表的存儲(chǔ)裝置172,所述編碼表將環(huán)元素(x)映射到整數(shù)列表((a,b)),使得環(huán)元素等于基環(huán)元素的冪的線性組合(x=ua-ub),其中,冪具有由整數(shù)列表確定的指數(shù)。編碼單元170可以將已編碼環(huán)元素存儲(chǔ)在算子存儲(chǔ)庫(kù)150中。編碼單元170允許系統(tǒng)用明文信息進(jìn)行工作。

編碼表將環(huán)元素(x)映射到整數(shù)列表((a,b)),使得環(huán)元素等于基環(huán)元素的冪的線性組合(x=ua-ub),其中,冪具有由整數(shù)列表確定的指數(shù),第一指數(shù)(a1)與第二指數(shù)(a2)之間的差被包括在允許差列表(a)中,并且其中,允許差列表的大小小于階數(shù)(k)。

環(huán)解碼單元160被布置成針對(duì)一個(gè)或多個(gè)基環(huán)元素(u)確定環(huán)元素(x),使得環(huán)元素等于一個(gè)或多個(gè)基環(huán)元素的冪的線性組合(x=ua-ub),其中,冪具有由整數(shù)列表確定的指數(shù)。例如,解碼單元160可以包括存儲(chǔ)將整數(shù)列表映射到環(huán)元素的解碼表的存儲(chǔ)庫(kù)。例如,解碼單元160可以包括用以計(jì)算冪及其線性組合的計(jì)算單元。

解碼表只需要映射滿足有限差要求的整數(shù)列表,使得解碼表具有比需要映射所有可能差的解碼表的更小的大小。

許多有趣的實(shí)施例省略編碼單元170和解碼單元160中的一者或兩者。例如,計(jì)算設(shè)備100可以被配置成通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)(例如互聯(lián)網(wǎng))來(lái)接收已編碼信息?;煜?jì)算設(shè)備100在其上面運(yùn)行的系統(tǒng)的所有者(例如執(zhí)行混淆計(jì)算軟件的計(jì)算機(jī))可能不知道用于輸入信息的編碼,也不知道由系統(tǒng)100輸出(例如通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)發(fā)送回)的信息。因此,即使計(jì)算是在云中執(zhí)行的,信息的所有者也具有某些這樣的保證,即:他信息是安全的。使用密碼術(shù)(例如加密)對(duì)采取編碼形式的信息進(jìn)行操作通常是不可能的。即使如在背景技術(shù)中概述的那樣使用表系統(tǒng),這也要求雙重的表。

通常,計(jì)算設(shè)備100包括微處理器(未示出),其執(zhí)行存儲(chǔ)在設(shè)備100處的適當(dāng)軟件;例如,該軟件可能已被下載和/或存儲(chǔ)在對(duì)應(yīng)的存儲(chǔ)器中,例如,諸如ram之類的易失性存儲(chǔ)器或諸如閃存(未示出)之類的非易失性存儲(chǔ)器。替換地,設(shè)備100可以完全或部分地用可編程邏輯(例如作為現(xiàn)場(chǎng)可編程門陣列(fpga))實(shí)現(xiàn)。設(shè)備100可以完全地或部分地實(shí)現(xiàn)為所謂的專用集成電路(asic),即針對(duì)其特定用途而自定義的集成電路(ic)。

在實(shí)施例中,電子計(jì)算設(shè)備包括被布置成執(zhí)行對(duì)應(yīng)單元的功能的環(huán)加法電路和環(huán)乘法電路。計(jì)算設(shè)備還可以包括求反電路。電路可以是例如通過(guò)用硬件描述語(yǔ)言(諸如verilog和vhdl)來(lái)描述功能而獲得的集成電路,諸如cmos。電路可以是處理器電路和存儲(chǔ)電路,所述處理器電路執(zhí)行在存儲(chǔ)電路中以電子方式表示的指令。電路還可以是fpga、asic等。

可以將表存儲(chǔ)庫(kù)110和操作數(shù)存儲(chǔ)庫(kù)150實(shí)現(xiàn)為電子存儲(chǔ)裝置,例如存儲(chǔ)器。兩個(gè)存儲(chǔ)庫(kù)可以是同一存儲(chǔ)器的一部分,但是它們也可以是不同的存儲(chǔ)器。表存儲(chǔ)庫(kù)110可以是易失性、不可寫的,例如rom或一寫多讀(worm)存儲(chǔ)器。操作數(shù)存儲(chǔ)庫(kù)150可以是易失性或非易失性可寫存儲(chǔ)器,例如閃存或ram。

圖2示意性地示出了計(jì)算設(shè)備101的實(shí)施例的示例。計(jì)算設(shè)備101是計(jì)算設(shè)備100的細(xì)化。在實(shí)施例中,計(jì)算設(shè)備101包括多個(gè)環(huán)加法單元、多個(gè)環(huán)乘法單元以及可選地多個(gè)求反單元。例如,圖2示出了三個(gè)乘法單元1401.1、140.2和140.3,以及兩個(gè)加法單元130.1和130.2。這些單元可以分別具有與單元140和130相同的設(shè)計(jì)。乘法和加法單元占用相對(duì)少的空間,例如當(dāng)用軟件實(shí)現(xiàn)時(shí),這些單元需要不多于幾百個(gè)低級(jí)計(jì)算機(jī)指令。特別地,可以將加法和/或乘法單元的拷貝用于在計(jì)算機(jī)程序中需要的每個(gè)乘法或加法。這允許傳統(tǒng)混淆技術(shù)。作為示例,圖2示出了可以如何使用混淆算術(shù)來(lái)計(jì)算多項(xiàng)式ax2+bx+c。

多個(gè)算術(shù)單元(例如,加法、乘法、求反)的運(yùn)算可以按照其數(shù)據(jù)相關(guān)性允許的任何順序排序。例如,可以在130.1之前的任何點(diǎn)處在排序140.1、140.2、130.1和130.2中插入運(yùn)算140.3。此外,可以將后續(xù)乘法或加法的排序顛倒。因此,可以用許多方式按照用于軟件程序的線性排序而轉(zhuǎn)換類似于圖2的圖。將單元嚴(yán)格地分離是不需要的;可以將用于第一單元的指令與用于另一單元的指令散置。

圖3示意性地示出了用于計(jì)算用于在計(jì)算設(shè)備中使用的增量表的表計(jì)算設(shè)備200的實(shí)施例的示例。在類似于計(jì)算設(shè)備100的設(shè)備中可以使用增量表??梢詫⒃撛隽勘泶鎯?chǔ)在非臨時(shí)存儲(chǔ)設(shè)備(例如,硬盤、非易失性存儲(chǔ)器芯片等)上。表計(jì)算設(shè)備200包括被布置成構(gòu)造增量表的表創(chuàng)建單元210。例如,表創(chuàng)建單元可以被布置成:

-重復(fù)地選擇輸入環(huán)元素,例如x,

-確定輸出環(huán)元素,其等于增量環(huán)元素環(huán)與輸入環(huán)元素進(jìn)行環(huán)相加。例如,如果增量值是1,則y=x+1。

-確定用于輸出環(huán)元素的輸出整數(shù)列表編碼。例如,表計(jì)算設(shè)備200可以包括類似于編碼單元170的編碼單元。

-向?qū)⑤斎氕h(huán)元素映射到滿足有限差要求的輸出整數(shù)列表的增量表添加條目。

可以執(zhí)行這些步驟直至所有環(huán)元素已被映射到整數(shù)列表為止。在某些實(shí)施例中,可以跳過(guò)元素,構(gòu)建部分增量表;例如,其可以從某些環(huán)元素將不會(huì)發(fā)生的上下文已知。

給定環(huán)r、潛在基環(huán)元素u、編碼(例如示例編碼)和整數(shù)列表長(zhǎng)度(例如2),可以如下面給定的那樣生成解碼表。使k為u的階數(shù)。

-例如通過(guò)生成所述整數(shù)列表長(zhǎng)度、具有模k整數(shù)的所有整數(shù)列表來(lái)生成滿足有限差要求的所有整數(shù)列表,并且整數(shù)列表的第一整數(shù)和輸出整數(shù)列表的整數(shù)被包括在允許差列表a中。

例如,針對(duì)長(zhǎng)度二的整數(shù)列表,可以使用以下示例算法:針對(duì)從0至(k-1)的k1;針對(duì)a中的所有d;生成(k1,k1+dmodk)。例如,針對(duì)可生成的差列表a={0,1,4,5,902,903,906},生成:(0,0),(0,1),(0,4),...,(1,1),(1,5),...等。在本示例,差列表可以與環(huán)z907、u=10、k=151一起使用。

-針對(duì)每個(gè)生成的整數(shù)列表計(jì)算由該整數(shù)列表編碼的環(huán)元素,并且向?qū)⒄麛?shù)列表關(guān)聯(lián)到解碼的解碼表添加條目。例如,繼續(xù)上述示例,可以計(jì)算1511-1515mod907=76。因此,解碼表可以接收(1,5)解碼成76的條目。

雖然解碼可以使用解碼表或者可以不使用解碼表,這樣的表也是有用的,因?yàn)榭梢岳缤ㄟ^(guò)將用于環(huán)元素的表分類而從解碼表生成編碼表。環(huán)元素具有多個(gè)編碼是可以發(fā)生的。例如,在用于任何a的示例編碼中可以將環(huán)元素0(用于加法的中性元素)表示為(a,a)??梢詮谋砣コ@樣的多個(gè)編碼,例如通過(guò)刪除用于給定環(huán)元素的多個(gè)條目中的除1之外的全部項(xiàng);或者通過(guò)留下表中的多個(gè)編碼并使用編碼表來(lái)編碼成多個(gè)條目中的隨機(jī)的一個(gè)條目。

構(gòu)造解碼或編碼表還可以用來(lái)找出環(huán)元素u是否是基環(huán)元素。如果構(gòu)造編碼表失敗,則由于證明了某些環(huán)元素不具有編碼,所以u(píng)不是基環(huán)元素。

下面,呈現(xiàn)了編碼、增量表、環(huán)加法方法和環(huán)乘法方法的許多實(shí)施例。可以針對(duì)這些實(shí)施例中的任何一個(gè)實(shí)施例配置計(jì)算設(shè)備100的求反、加法和乘法單元。所有示例適用于任何交換環(huán),特別是在本文中n是正整數(shù)。此外,很優(yōu)選的是,可以在所選編碼中表示交換環(huán)的任何元素。并不是所有交換環(huán)都允許在給定編碼中表示所有元素,例如作為給定類型的整數(shù)列表表示。給定交換環(huán)r,如果可以使用給定編碼類型將r中的任何元素表示為整數(shù)列表,則我們將說(shuō)所述交換環(huán)r允許全同構(gòu)混淆。本領(lǐng)域的技術(shù)人員可以驗(yàn)證給定交換環(huán)是否在給定編碼的情況下允許全同構(gòu)混淆,例如通過(guò)生成所有可允許編碼并驗(yàn)證其一起表示給定環(huán)的所有元素。針對(duì)某些應(yīng)用,可以允許編碼具有某些間隙。這可以具有不能對(duì)那些間隙執(zhí)行算術(shù)(至少不使用混淆整數(shù)列表編碼)的后果。下面進(jìn)一步呈現(xiàn)允許特定類型的編碼的交換環(huán)的特定示例。

下面,首先給出其中參數(shù)局限于落在允許差列表中的示例編碼的描述。存在許多類型的編碼,其共同地具有的是:可以將環(huán)元素表示為整數(shù)列表。這些整數(shù)不是環(huán)元素,例如,即使環(huán)不是整數(shù)環(huán)(例如多項(xiàng)式環(huán)),然后仍然可以將元素表示為整數(shù)列表。所使用的編碼、給定整數(shù)列表如何映射到環(huán)元素被稱為編碼。通常,整數(shù)列表將總是具有相同的長(zhǎng)度,然而這并不是必需的。一般地,由于編碼允許更多類型的整數(shù)列表,例如更長(zhǎng)的列表,所以可以用不同方式將給定環(huán)元素編碼為整數(shù)列表變得更有可能。給定具有基環(huán)元素u的交換環(huán)r,使得針對(duì)某些整數(shù)a1和a2,可以將r的任何元素a寫為使得a1-a2∈a。并不是所有交換環(huán)都可以用這種方式編碼,但是這些交換環(huán)中的許多交換環(huán)足以用于使編碼有用。整數(shù)a1和a2本身不是環(huán)r的環(huán)元素:它們是取基元素的階數(shù)為模而操作的整數(shù)。要注意,環(huán)元素a等于基元素u的冪、即的線性組合;在這種情況下,通過(guò)將冪乘以+1或-1并將其求和、更特別地通過(guò)用第一冪減去第二冪而獲得線性組合。計(jì)算設(shè)備對(duì)被以上述方式編碼的環(huán)元素進(jìn)行操作。加法、求反和乘法單元可以在此編碼中對(duì)環(huán)元素進(jìn)行操作。

增量表t在加法和乘法運(yùn)算兩者中起到重要作用。增量表映射輸入環(huán)元素,在這種情況下可以將輸入環(huán)元素表示為整數(shù)列表。例如,給定表示輸入環(huán)元素的輸入整數(shù)列表(k1,k2),表t將其映射到輸出整數(shù)列表,例如對(duì)輸出環(huán)元素進(jìn)行編碼的t((k1,k2))=(l1,l2)。輸出環(huán)元素等于增量環(huán)元素與輸入環(huán)元素進(jìn)行環(huán)相加。在本示例中,可以將增量元素取作1,即,作為用于環(huán)乘法的單位元素的環(huán)元素;在這種情況下l=k+1??梢詫⒈碇苯拥貞?yīng)用于使用相同編碼的環(huán)元素且因此可以將該表應(yīng)用于具有整數(shù)列表表示的環(huán)元素是方便的。盡管如此,存在其中在替換編碼中將表應(yīng)用于環(huán)元素的實(shí)施例。該替換編碼也可以是整數(shù)列表,但是替換類型的。同樣,增量環(huán)元素不需要是1。

下面描述運(yùn)算:求反、加法以及乘法。

求反。給定表示求反輸入環(huán)元素的求反輸入整數(shù)列表(a1,a2),可以通過(guò)對(duì)整數(shù)列表改變順序(在這種情況下通過(guò)將順序顛倒)來(lái)獲得求反輸出整數(shù)列表。求反輸出整數(shù)列表可以是(a2,a1)。通過(guò)改變順序進(jìn)行的求反要求a=-a。假設(shè)存在m,使得um=-1(這針對(duì)許多環(huán)r發(fā)生),可以替換地通過(guò)將常數(shù)(例如m)與整數(shù)列表的每個(gè)整數(shù)相加來(lái)獲得求反。在后一種情況下,求反輸出整數(shù)列表可以是(a1+m,a2+m)。這是適用的,因?yàn)?imgfile="bpa0000241954360000194.gif"wi="700"he="51"img-content="drawing"img-format="gif"orientation="portrait"inline="no"/>優(yōu)選地取基元素的階數(shù)為模來(lái)完成整數(shù)列表中的算術(shù)。在這里,整數(shù)列表的整數(shù)對(duì)應(yīng)于基元素的指數(shù),因此同樣地取基元素的階數(shù)為模的整數(shù)對(duì)相同環(huán)元素進(jìn)行編碼。在任何情況下,可以由將表示第一環(huán)元素的第一整數(shù)列表映射到表示負(fù)的第一環(huán)元素的第二整數(shù)列表的求反表來(lái)完成求反。當(dāng)表被用于求反時(shí),在描述環(huán)元素的參數(shù)與描述負(fù)環(huán)元素的參數(shù)之間不需要存在任何固定關(guān)系。

加法。為了將對(duì)第一加法輸入環(huán)元素進(jìn)行編碼的接收到的第一加法輸入整數(shù)列表(a1,a2)與對(duì)第二加法輸入環(huán)元素進(jìn)行編碼的第二加法輸入整數(shù)列表(b1,b2)相加,首先確定對(duì)中間加法環(huán)元素進(jìn)行編碼的中間加法整數(shù)列表((c1,c2))。

環(huán)元素c可以是第一加法輸入環(huán)元素a加上根據(jù)第二加法輸入整數(shù)列表(特別是第二加法輸入整數(shù)列表的第一整數(shù))確定的冪次的基元素u。在本示例中,我們可以具有為了計(jì)算后者,我們觀察到括號(hào)中的項(xiàng)可以使用增量表在編碼中重寫。要注意,整數(shù)列表(a1-b1,a2-b1)仍滿足有限差要求,如果(a1,a2)滿足的話。

通過(guò)將增量表第一次應(yīng)用于環(huán)元素獲得元素例如,通過(guò)t((a1-b1,a2-b1))=(d1,d2)。我們?nèi)缓缶哂衏1=d1+b1和c2=d2+b1,因此確定中間加法整數(shù)列表((c1,c2))還可以包括將根據(jù)第二加法輸入整數(shù)列表確定的整數(shù)與從第一次應(yīng)用得到的整數(shù)列表中的整數(shù)相加。將與整數(shù)列表表示中的環(huán)元素(在這種情況下與a)相加有時(shí)稱為正縮減步驟。

因此,加法單元已獲得中間相加環(huán)元素作為整數(shù)列表(c1,c2)。中間加法環(huán)元素因此是一個(gè)或多個(gè)基元素的冪的線性組合,其中,冪是根據(jù)第一和第二加法輸入整數(shù)列表確定的。在這種情況下,將增量表應(yīng)用于環(huán)元素所述環(huán)元素由被自乘至第一整數(shù)列表(a1)的第一整數(shù)減去第二整數(shù)列表(b1)的第一整數(shù)的冪次的基環(huán)元素(u)減去被自乘至第一整數(shù)列表(a2)的第二整數(shù)減去第二整數(shù)列表(b1)的第一整數(shù)的冪次的基環(huán)元素(u)而形成。

在本示例中,可以通過(guò)將增量表第二次應(yīng)用于根據(jù)中間加法整數(shù)列表和第二加法輸入整數(shù)列表確定的環(huán)元素來(lái)確定加法輸出整數(shù)列表。這可以包括計(jì)算中間加法環(huán)元素c與負(fù)的、被自乘至根據(jù)第二加法輸入整數(shù)列表(例如第二加法輸入整數(shù)列表b2的第二整數(shù))確定的冪次的基元素的和這可以通過(guò)在第二次應(yīng)用增量表之前對(duì)中間加法整數(shù)列表所表示的中間加法環(huán)元素求反來(lái)實(shí)現(xiàn)??梢匀缟纤甘镜赝瓿蒫的求反。作為示例,我們使用改變順序,但是可以通過(guò)將常數(shù)與指數(shù)相加來(lái)執(zhí)行相同操作。在求反之后,和可以使用正的(而不是負(fù)的)、被自乘至根據(jù)第二加法輸入整數(shù)列表確定的冪次的基元素:后一運(yùn)算是與上述相同類型的,并且可以以與加上相同的方式通過(guò)表應(yīng)用來(lái)執(zhí)行。此后,再次地對(duì)結(jié)果求反。全加法可以使用同一增量表t的兩個(gè)求反以及兩個(gè)表應(yīng)用。

從整數(shù)列表表示中的環(huán)元素(在這種情況下從c)減去有時(shí)被稱為負(fù)縮減步驟??梢酝ㄟ^(guò)求反、執(zhí)行正縮減步驟以及再次求反來(lái)執(zhí)行該負(fù)縮減步驟。通過(guò)經(jīng)由第一參數(shù)a和差d(例如通過(guò)表示環(huán)元素ua-ua+d)來(lái)對(duì)增量表編索引,實(shí)現(xiàn)了計(jì)算時(shí)間的減少。在這種情況下,可以用t(a,d)對(duì)增量表編索引。考慮用于加上ub的正縮減步驟。這可以用來(lái)完成,在這種情況下將表編索引為t(a-b,d)。因此,只需要取k為模的單個(gè)減法運(yùn)算。

乘法。為了將對(duì)第一乘法輸入環(huán)元素進(jìn)行編碼的接收到的第一乘法輸入整數(shù)列表(r1,r2)與對(duì)第二乘法輸入環(huán)元素進(jìn)行編碼的第二乘法輸入整數(shù)列表((s1,s2))相乘,確定第一中間乘法整數(shù)列表(t1,t2)和第二中間乘法整數(shù)列表(u1,u2)。根據(jù)第一和第二中間元素來(lái)確定對(duì)乘法輸出環(huán)元素進(jìn)行編碼的乘法輸出整數(shù)列表。在其它實(shí)施例中,可以存在多于兩個(gè)中間乘法整數(shù)列表。我們具有可以用不同方式來(lái)完成相對(duì)于兩個(gè)項(xiàng)t和u來(lái)劃分?jǐn)U展乘積中的項(xiàng),例如作為

因此,為了將表示為整數(shù)列表的兩個(gè)環(huán)元素相乘,可以將其變換成可以被相加以獲得乘法的答案的兩個(gè)新整數(shù)列表。加法可以如上所述地完成。例如,乘法單元可以計(jì)算中間整數(shù)列表并將其發(fā)送到乘法單元。例如,第一中間乘法整數(shù)列表的第一整數(shù)t1可以包括第一乘法輸入整數(shù)列表的第一整數(shù)r1加第二乘法輸入整數(shù)列表的第一整數(shù)s1,并且第一中間乘法整數(shù)列表的第二整數(shù)t2可以包括第一乘法輸入整數(shù)列表的第一整數(shù)r1加第二乘法輸入整數(shù)列表的第二整數(shù)s2,t1=r1+s1,t2=r1+s2;第二中間乘法整數(shù)列表的第一整數(shù)u1可以包括第一乘法輸入整數(shù)列表的第二整數(shù)r2加第二乘法輸入整數(shù)列表的第二整數(shù)s2,并且第二中間乘法整數(shù)列表的第二整數(shù)u2可以包括第一乘法輸入整數(shù)列表的第二整數(shù)r2加第二乘法輸入整數(shù)列表的第一整數(shù)s1,u1=r2+s2,u2=r2+s1。

在實(shí)施例中,例如,在剛剛公開(kāi)的示例中,對(duì)整數(shù)列表執(zhí)行算術(shù),不需要將環(huán)元素計(jì)算為某些自然表示中的環(huán)元素。現(xiàn)在討論許多變體。變體中的許多變體是獨(dú)立的,例如可以將變體編碼與變體組合以執(zhí)行加法。

通過(guò)混淆算術(shù),當(dāng)在整數(shù)列表中執(zhí)行計(jì)算時(shí),例如對(duì)應(yīng)于等,可以取u的階數(shù)為模將值縮減。例如,如果u的階數(shù)是30,則可以取模30來(lái)執(zhí)行所有計(jì)算。

增量值。增量值不需要是1。存在使用不同增量值的至少兩個(gè)方式。首先,可以將等式修改成這意味著可以構(gòu)造加上值ut的增量表。此增量表被應(yīng)用于相同的整數(shù)列表,除了添加了整數(shù)t之外。在第一次應(yīng)用增量表之后,加上數(shù)b1-t,而不是b1。改變?cè)隽恐档牧硪环绞绞侨的兩個(gè)元素g和p,使得在環(huán)中對(duì)g的重復(fù)相加給出了p。例如,存在整數(shù)h,使得h·g=g+…+g=p。假設(shè)存在具有增量值p的增量表tp,例如p=1或p=ut??梢葬槍?duì)作為增量值的g構(gòu)造增量表tg??梢詫⒈韙g應(yīng)用h次以獲得與直接地應(yīng)用tp相同的效果。在單個(gè)實(shí)施例中,甚至可以將使用具有不同增量值的不同增量表組合,例如以增加混淆。后一種構(gòu)造具有如下優(yōu)點(diǎn),即:在不改變以下加法計(jì)算的情況下可以將多個(gè)增量值組合。

可以將針對(duì)示例編碼舉例說(shuō)明的原理應(yīng)用于許多替換編碼。第一替換編碼是使用編碼將環(huán)元素a編碼為整數(shù)列表(a1,a2),仍要求a1-a2∈a。具有基環(huán)元素u、使得任何環(huán)元素可以被以這種方式編碼的環(huán)被說(shuō)成是允許正混淆算術(shù)。示例編碼將稱為負(fù)混淆算術(shù)。可以數(shù)學(xué)證明的是,對(duì)于允許具有基環(huán)元素u的正混淆算術(shù)的任何環(huán)而言,存在整數(shù)m,使得um=-1。此外,允許負(fù)混淆算術(shù)的環(huán)當(dāng)且僅當(dāng)存在這樣的值m時(shí)才允許正混淆算術(shù)。允許正混淆算術(shù)的任何環(huán)還允許負(fù)混淆算術(shù),但相反情況不適用。正混淆算術(shù)主要遵循如針對(duì)上文概述的負(fù)混淆算術(shù)的相同方針。簡(jiǎn)要地,可以通過(guò)將值m與整數(shù)列表的所有整數(shù)相加來(lái)完成整數(shù)列表的符號(hào)改變。給定加法輸入可以通過(guò)計(jì)算中間值(例如通過(guò)而執(zhí)行加法。增量值適用于并具有增量值1;假設(shè)整數(shù)列表(a1,a2)滿足要求,此后一個(gè)數(shù)也是如此。

可以針對(duì)應(yīng)用正縮減兩次,不一定需要負(fù)縮減。這簡(jiǎn)化了加法??梢匀缟纤甘镜赝ㄟ^(guò)將u的不同冪作為因數(shù)計(jì)入而改變?cè)隽勘淼臉?gòu)造。可以如上所指示的那樣改變?cè)隽恐?。正混淆算術(shù)具有如下優(yōu)點(diǎn),即:增量表始終是對(duì)稱的,并且可以以壓縮形式存儲(chǔ)。正混淆的缺點(diǎn)是較少的環(huán)允許此類編碼。到目前為止給出的編碼可以可選地針對(duì)某些v乘以常數(shù)環(huán)元素w=uv。因此,整數(shù)列表(a1,a2)可以表示環(huán)元素求反步驟不改變。負(fù)縮減步驟變成增量表可以用作增量值w,并且應(yīng)用于具有相同編碼類型的可以如上所指示的那樣從正縮減步驟導(dǎo)出負(fù)縮減步驟。乘法可以使用將表示為整數(shù)列表(r1,r2)和整數(shù)列表(s1,s2)的相乘。

整數(shù)列表中的整數(shù)的數(shù)目。在到目前為止討論的示例中,整數(shù)列表中的元素的數(shù)目總是兩個(gè)。此數(shù)目具有如下優(yōu)點(diǎn),即:其減少了計(jì)算步驟的數(shù)目。另一方面,允許整數(shù)列表中的更多元素?cái)U(kuò)展了允許混淆的環(huán)的數(shù)目。下面的示例考慮每個(gè)列表三個(gè)整數(shù),但是更多整數(shù)是可能的,并且類似地工作。

考慮分別地對(duì)元素進(jìn)行編碼的第一整數(shù)列表(a1,a2,a3)和第二整數(shù)列表(b1,b2,b3)。可以通過(guò)將常數(shù)m與列表中的整數(shù)相加來(lái)完成求反。可以通過(guò)用于第二整數(shù)列表中的每個(gè)整數(shù)的增量表的應(yīng)用(在這種情況下為三次)來(lái)完成加法??梢愿鶕?jù)來(lái)計(jì)算第一中間加法整數(shù)列表。在這種情況下,增量值是1且增量表適用于為了做乘法,實(shí)現(xiàn)與在第二整數(shù)列表中相同數(shù)目的中間乘法整數(shù)列表,例如:(a1+b1,a2+b1,a3+b1)、(a1+b2,a2+b2,a3+b2)、(a1+b3,a2+b3,a3+b3)。

如果整數(shù)列表(a1,a2,a3)滿足兩個(gè)特定數(shù)目的列表具有允許差列表中的差,例如a1-a2∈a1,則也是如此,因?yàn)?a1-b3)-(a2-b3)=a1-a2。對(duì)于長(zhǎng)度大于二的整數(shù)列表而言,還可以施加附加限制,例如在另一允許差列表中包括整數(shù)列表的另一第一整數(shù)和整數(shù)列表的另一第二整數(shù),例如,a2-a3∈a2的附加限制。可以具有a1=a2。

下面給出用于允許負(fù)和/或正混淆的環(huán)的示例和如何找到允許差列表。環(huán)r可以是用于模數(shù)n的整數(shù)環(huán)環(huán)r還可以是用于某個(gè)模數(shù)n和縮減多項(xiàng)式f(x)的多項(xiàng)式環(huán)

使r為具有可混算術(shù)和基數(shù)u的環(huán),并且使k=order(u)。如果存在使得中的兩個(gè)元素r1和r2兩者將被稱為等價(jià)的。要注意,此條件意味著非正式地,如果將兩個(gè)整數(shù)中的一個(gè)添加到允許差列表給出與添加另一個(gè)相同的效果,則可以說(shuō)這兩個(gè)整數(shù)在此條件下是等價(jià)的。例如,取基元素u=2,具有階數(shù)k=15。元素2和8是等價(jià)的,因?yàn)?22-1)211=28-1。同樣地,元素4和10是等價(jià)的,因?yàn)?24-1)213=210-1。

可以數(shù)學(xué)證明如果r是環(huán),使得um=-1,則r和-r總是等價(jià)的。

此等價(jià)關(guān)系引入了對(duì)的等價(jià)類,例如其中所有元素相互等價(jià)的集合?,F(xiàn)在可以通過(guò)除了從包括0的等價(jià)類之外選擇每個(gè)等價(jià)類的相同數(shù)目的元素來(lái)確定允許差列表。如果需要表示環(huán)元素0,則元素0也將被包括在允許差集合中。用于配置電子計(jì)算設(shè)備(100)以便在交換環(huán)中執(zhí)行混淆算術(shù)的這種方法可以由電子配置設(shè)備(例如包括用于執(zhí)行軟件的微處理器和軟件)執(zhí)行。

我們提供以下示例:

使其是具有256個(gè)元素、被生成為的域,其中f(x)=x8+x4+x3+x+1,并且具有基環(huán)元素u=x5+x4+x+1,所述基環(huán)元素具有階數(shù)51且其是用于域r中的混淆算術(shù)的基。請(qǐng)注意,由于r具有特性2,所以正和負(fù)混淆是相同的。等價(jià)類是:

[0]

[1;3;11;16;21;23;28;30;35;40;48;50]

[2;5;6;9;19;22;29;32;42;45;46;49]

[4;7;10;12;13;18;33;38;39;41;44;47]

[8;14;15;20;24;25;26;27;31;36;37;43]

[17;34]

可以通過(guò)從每個(gè)類選擇至少一個(gè)元素獲得允許差集合(例如,a={0,1,2,4,8,17})。

使其是具有212個(gè)元素、被生成為的域,其中f(x)=x12+x7+x6+x5+x3+x+1,并且具有基環(huán)元素u=x11+x10+x7+x5+x3+x2+x+1,所述基環(huán)元素具有階數(shù)195,并且其是用于域r中的混淆算術(shù)的基。等價(jià)類是:

[0]

[13;26;39;52;65;78;91;104;117;130;143;156;169;182]

[1;8;64;73;84;87;108;111;122;131;187;194]

[2;16;21;27;49;67;128;146;168;174;179;193]

[4;32;42;54;61;97;98;134;141;153;163;191]

[3;47;72;83;112;123;148;192]

[6;29;51;94;101;144;166;189]

[7;12;58;93;102;137;183;188]

[9;14;24;79;116;171;181;186]

[18;28;37;48;147;158;167;177]

[36;56;74;96;99;121;139;159]

[5;25;40;70;125;155;170;190]

[10;50;55;80;115;140;145;185]

[20;35;85;95;100;110;160;175]

[11;69;76;90;105;119;126;184]

[15;22;43;57;138;152;173;180]

[30;44;81;86;109;114;151;165]

[23;33;60;88;107;135;162;172]

[19;46;66;75;120;129;149;176]

[38;45;63;92;103;132;150;157]

[17;53;62;68;77;82;113;118;127;133;142;178]

[31;34;41;59;71;89;106;124;136;154;161;164]

再次地,可以通過(guò)從每個(gè)等價(jià)類選擇至少一個(gè)元素來(lái)獲得允許差集合。選擇可以是隨機(jī)的。

使具有基環(huán)元素u=10,所述基環(huán)元素具有階數(shù)151且其是用于域r中的混淆算術(shù)的基。七個(gè)等價(jià)類是:

[0]

±[1;3;8;16;18;30;31;32;33;43;53;56;62;75;78;79;101;102;113;116;124;126;128;140;149]

±[4;9;12;15;28;44;45;47;55;57;66;67;69;71;81;83;92;99;112;114;115;127;137;138]

±[5;6;7;21;26;29;34;40;41;51;54;61;63;64;74;86;91;93;103;105;109;129;131;132;134;141]

要注意,等價(jià)類具有對(duì)稱性,其被用來(lái)以簡(jiǎn)略形式指代類。

使具有基環(huán)元素u=2,所述基環(huán)元素具有階數(shù)100。要注意,此環(huán)不是域。17個(gè)等價(jià)類是:

[0]

±[1;23;25;27;42;49;94]

±[2;34;54;55;57;67;74;83;93;95]

±[3;11;39;47;82;90]

[4;16;24;48;52;76;84;96]

[8;44;56;92]

±[9;19;31;38;41;70;78]

[12;20;28;72;80;88]

±[13;14;21;29;37;65;85]

[32;40;60;68]

[36;64]

[50]

可以證明在域中,給定r,我們有:(ur-1)us對(duì)于的所有值而言是困難的。因此,每個(gè)類可以恰好表示k個(gè)元素。因此我們針對(duì)域有公式k(c-1)=n-1。數(shù)值實(shí)驗(yàn)示出了對(duì)于不是域的交換環(huán)而言,比率k(c-1)/(n-1)尤其是隨著增長(zhǎng)而接近于1。

這還意味著給定域以及通過(guò)從每個(gè)等價(jià)類恰好選擇一個(gè)元素而獲得的允許差列表和長(zhǎng)度2的整數(shù)列表給出了每個(gè)域元素的唯一表示。通過(guò)從每個(gè)等價(jià)類選擇更多元素,環(huán)元素獲得多個(gè)表示。

下面概括許多示例并給出附加示例。針對(duì)多項(xiàng)式環(huán),上文給出了基環(huán)元素和發(fā)生器的細(xì)節(jié)。要注意(歐拉函數(shù)),這就是為什么給定的情況下的環(huán)具有僅1000個(gè)元素的原因。

如從上文的表還可以看到的,可以通過(guò)用混淆算術(shù)生成環(huán)并計(jì)算等價(jià)類來(lái)獲得具有各種大小的允許差列表的環(huán)。

具有較小的允許差列表具有如下優(yōu)點(diǎn),即:這減小了增量表的大小。在實(shí)施例中,如果冪不具有滿足有限差要求的指數(shù)(例如,所述指數(shù)由整數(shù)列表確定,對(duì)于所述指數(shù)的差在允許差列表(a)中,并且其中,允許差列表的大小小于階數(shù)(k)),則增量表不將輸入整數(shù)列表所表示的輸入環(huán)元素映射為基環(huán)元素(u)的冪的線性組合

通過(guò)搜索更多環(huán),可以將允許差列表的大小選擇為相對(duì)于階數(shù)k而言是小的??梢酝ㄟ^(guò)選擇每個(gè)等價(jià)類的僅一個(gè)元素來(lái)在大小方面減小允許差列表;可以通過(guò)選擇每個(gè)等價(jià)類的多于一個(gè)元素在大小方面擴(kuò)展允許差列表。如果允許差列表的大小小于階數(shù)的50%、更優(yōu)選地小于階數(shù)的20%、甚至更優(yōu)選地小于階數(shù)的10%、甚至更優(yōu)選地小于階數(shù)的5%,則是優(yōu)選的。在域中的唯一表示的情況下,期望的是c/k小于0.5、0.2、0.1和0.05。

通過(guò)選擇每個(gè)等價(jià)類的僅一個(gè)元素,獲得的是這為表提供較大縮減。(在這里c表示允許差列表中的元素的數(shù)目。)對(duì)于并非域的環(huán)而言,界限可以略微大于1,例如小于2。在后一種情況下,表示有時(shí)是唯一的,但并不是總是唯一的。另一方面,可能合期望的是,針對(duì)環(huán)元素具有多個(gè)不同的表示。這可以通過(guò)擴(kuò)增允許差列表以使得來(lái)實(shí)現(xiàn)。

圖4示意性地示出了在交換環(huán)中執(zhí)行混淆算術(shù)的計(jì)算方法300的實(shí)施例的示例,該環(huán)具有有限數(shù)目的環(huán)元素,對(duì)環(huán)元素定義了環(huán)加法和環(huán)乘法,計(jì)算方法對(duì)將環(huán)元素編碼的整數(shù)列表((a1,a2))進(jìn)行操作,所述整數(shù)列表包括至少兩個(gè)整數(shù),其中,整數(shù)列表((a1,a2))將環(huán)元素(a)編碼,使得環(huán)元素等于基環(huán)元素(u)的冪的線性組合基環(huán)元素在環(huán)中具有階數(shù)(k),其中,冪具有由整數(shù)列表確定的指數(shù),第一指數(shù)(a1)與第二指數(shù)(a2)之間的差被包括在允許差列表(a)中,并且其中,允許差列表的大小小于階數(shù)(k)。計(jì)算方法包括:

-存儲(chǔ)305針對(duì)增量環(huán)元素(1;ut)定義的增量表(t),增量表將輸入環(huán)元素映射到將輸出環(huán)元素編碼的輸出整數(shù)列表(t((k1,k2))=(l1,l2)),使得輸出環(huán)元素等于增量環(huán)元素環(huán)與輸入環(huán)元素進(jìn)行環(huán)相加(l=k+1),輸出環(huán)元素等于基環(huán)元素(u)的冪的線性組合,其中,冪具有由輸出整數(shù)列表確定的指數(shù),第一指數(shù)(l1)和第二指數(shù)(l2)之間的差被包括在允許差列表(a)中,并且其中,允許差列表的大小小于階數(shù)(k)。

所述方法還可以包括環(huán)相加:

-接收310對(duì)第一加法輸入環(huán)元素進(jìn)行編碼的第一加法輸入整數(shù)列表((a1,a2))和對(duì)第二加法輸入環(huán)元素進(jìn)行編碼的第二加法輸入整數(shù)列表((b1,b2)),

-通過(guò)對(duì)根據(jù)第一和第二加法輸入整數(shù)列表確定的環(huán)元素應(yīng)用增量表來(lái)確定320對(duì)加法輸出環(huán)元素進(jìn)行編碼的加法輸出整數(shù)列表,加法輸出環(huán)元素等于第一加法輸入環(huán)元素和第二加法輸入環(huán)元素的環(huán)加法。

所述方法還可以包括環(huán)乘法:

-接收330對(duì)第一乘法輸入環(huán)元素進(jìn)行編碼的第一乘法輸入整數(shù)列表((r1,r2))和對(duì)第二乘法輸入環(huán)元素進(jìn)行編碼的第二乘法輸入整數(shù)列表((s1,s2)),

-通過(guò)對(duì)根據(jù)第一和第二乘法輸入整數(shù)列表確定的環(huán)元素應(yīng)用增量表來(lái)確定340對(duì)乘法輸出環(huán)元素進(jìn)行編碼的乘法輸出整數(shù)列表,乘法輸出環(huán)元素等于第一乘法輸入環(huán)元素和第二乘法輸入環(huán)元素的環(huán)乘法。

圖5示意性地示出了可以在設(shè)備100中或者在方法300中等使用的加法方法400的實(shí)施例的示例。本示例使用示例編碼。本方法可以適應(yīng)于其它編碼。本文中所述的所有變體可以被應(yīng)用;本示例使用增量值1,并且通過(guò)對(duì)提出因數(shù)來(lái)構(gòu)造增量表。

方法400包括接收加法操作數(shù)410。這可以包括接收410第一加法輸入整數(shù)列表,例如(a1,a2),并接收420第二加法輸入整數(shù)列表,例如(b1,b2)。

加法輸入整數(shù)列表每個(gè)將環(huán)元素編碼,使得環(huán)元素等于基環(huán)元素的冪的線性組合,基環(huán)元素在環(huán)中具有階數(shù),其中,冪具有由整數(shù)列表確定的指數(shù)。指數(shù)滿足第一指數(shù)與第二指數(shù)之間的差被包括在允許差列表中的要求。

方法400還包括確定420中間加法整數(shù)列表,例如(c1,c2)。例如,這可以包括將增量表應(yīng)用于根據(jù)第一和第二加法輸入整數(shù)列表確定的環(huán)元素。特別地,可以將增量表應(yīng)用于整數(shù)列表,整數(shù)中的元素是從輸入整數(shù)列表中的元素導(dǎo)出的。表的輸出滿足要求。例如,確定420可以包括將增量表應(yīng)用422于(a1-b1,a2-b1),例如獲得(d1,d2);并且將根據(jù)第二加法輸入整數(shù)列表確定的整數(shù)b1與從第一次應(yīng)用得到的整數(shù)列表中的整數(shù)相加,例如(c1,c2)=(d1+b1,d2+b1)。

方法400還包括通過(guò)將增量表第二次應(yīng)用于根據(jù)中間加法整數(shù)列表和第二加法輸入整數(shù)列表確定的環(huán)元素來(lái)確定430加法輸出整數(shù)列表。針對(duì)更長(zhǎng)的整數(shù)列表,這可以涉及到附加的增量表應(yīng)用。例如,這可以包括對(duì)中間加法整數(shù)列表求反431,例如改變順序成為(c2,c1)。應(yīng)用432增量表以及加法434與應(yīng)用422和加法424相同,只是除了用中間整數(shù)列表(c2,c1)替換加法輸入整數(shù)列表(a1,a2)并用b2替換b1之外。最后,對(duì)434的結(jié)果求反453以獲得混淆加法的結(jié)果。

如果作為負(fù)混淆的替代,如在這里一樣使用正混淆,則可以省略求反431、435。

圖6示意性地示出了可以在設(shè)備100中或者在方法300中等使用的乘法方法500的實(shí)施例的示例。本示例使用與方法400相同的編碼和增量表。如針對(duì)加法一樣,乘法的輸入和輸出滿足要求。

方法500包括接收乘法操作數(shù)510。這可以包括接收510第一乘法輸入整數(shù)列表,例如(r1,r2),并接收514第二乘法輸入整數(shù)列表(s1,s2)。

方法500還包括確定520第一和第二中間乘法整數(shù)列表。例如,520可以包括確定522第一中間乘法整數(shù)列表并確定524第二中間乘法整數(shù)列表。這些可以例如被分別地選擇為(s1+r1,s1+r2)和(s2+r2,s2+r1),但是存在其它選擇。乘法通過(guò)在加法方法400中將這些數(shù)相加而繼續(xù)。

要注意,僅在應(yīng)用422和應(yīng)用432中使用表,而在方法400和500中的其它地方不使用。加法和乘法兩者使用相同的表,并且兩者將表使用相同次數(shù)(2)。其它操作包括對(duì)整數(shù)列表中的整數(shù)的小的算術(shù)運(yùn)算,例如取基環(huán)元素的階數(shù)為模。如對(duì)于本領(lǐng)域的技術(shù)人員而言將顯而易見(jiàn)的,可以有執(zhí)行本方法的許多不同方式。例如,可改變步驟的順序或者可并行地執(zhí)行某些步驟。此外,在各步驟之間可插入其它方法步驟。插入的步驟可表示諸如本文所述的方法的細(xì)化,或者可與本方法無(wú)關(guān)。此外,給定步驟可能在開(kāi)始下一步驟之前并未完全結(jié)束。

根據(jù)實(shí)施例的方法可以使用軟件來(lái)執(zhí)行,該軟件包括用于促使處理器系統(tǒng)執(zhí)行方法300、400和500中的任何一項(xiàng)的指令。軟件可以僅包括由系統(tǒng)的特定子實(shí)體所采取的那些步驟。軟件可以被存儲(chǔ)在適當(dāng)存儲(chǔ)介質(zhì)中,諸如硬盤、軟盤、存儲(chǔ)器等。軟件可以作為信號(hào)沿著電線或以無(wú)線方式或使用數(shù)據(jù)網(wǎng)絡(luò)(例如,互聯(lián)網(wǎng))發(fā)送??梢允沟迷撥浖捎糜谙螺d和/或用于在服務(wù)器上的遠(yuǎn)程使用。方法可以使用被布置成將可編程邏輯(例如,現(xiàn)場(chǎng)可編程門陣列(fpga))配置成執(zhí)行所述方法的比特流來(lái)執(zhí)行。

將認(rèn)識(shí)到的是實(shí)施例還擴(kuò)展至適合于將實(shí)施例付諸實(shí)踐的計(jì)算機(jī)程序,特別是在載體上或載體中的計(jì)算機(jī)程序。該程序可以是源代碼、目標(biāo)代碼、代碼中間源和目標(biāo)代碼(諸如部分編譯形式)的形式,或者是適合于在實(shí)現(xiàn)根據(jù)實(shí)施例的方法時(shí)使用的任何其它形式。涉及計(jì)算機(jī)程序產(chǎn)品的實(shí)施例包括對(duì)應(yīng)于所闡述方法中的至少一個(gè)方法的處理步驟中的每個(gè)處理步驟的計(jì)算機(jī)可執(zhí)行指令??梢詫⑦@些指令再分成子例程和/或存儲(chǔ)在可被靜態(tài)地或動(dòng)態(tài)地鏈接的一個(gè)或多個(gè)文件中。涉及計(jì)算機(jī)程序產(chǎn)品的另一實(shí)施例包括對(duì)應(yīng)所闡述的系統(tǒng)和/或產(chǎn)品中的至少一項(xiàng)的裝置中的每個(gè)裝置的計(jì)算機(jī)可執(zhí)行指令。

圖7a示出了具有包括計(jì)算機(jī)程序1020的可寫部分1010的計(jì)算機(jī)可讀介質(zhì)1000,計(jì)算機(jī)程序1020包括用于促使處理器系統(tǒng)執(zhí)行根據(jù)實(shí)施例的用于執(zhí)行混淆算術(shù)的計(jì)算方法的指令??蓪懖糠挚梢员徊贾贸捎糜诙啻螌懟蛘哂糜趦H一次寫??梢栽谟?jì)算機(jī)可讀介質(zhì)1000上作為物理標(biāo)記或者借助于計(jì)算機(jī)可讀介質(zhì)1000的磁化來(lái)體現(xiàn)計(jì)算機(jī)程序1020。然而,也可設(shè)想任何其它適當(dāng)實(shí)施例。此外,將認(rèn)識(shí)到的是,雖然計(jì)算機(jī)可讀介質(zhì)1000在這里被示為光盤,但計(jì)算機(jī)可讀介質(zhì)1000可以是任何適當(dāng)?shù)挠?jì)算機(jī)可讀介質(zhì),諸如硬盤、固態(tài)存儲(chǔ)器、閃速存儲(chǔ)器等,并且可以是不可記錄或可記錄的。計(jì)算機(jī)程序1020包括用于促使處理器系統(tǒng)執(zhí)行用于執(zhí)行混淆算術(shù)的所述計(jì)算方法的指令。

計(jì)算機(jī)可讀介質(zhì)(例如,計(jì)算機(jī)可讀介質(zhì)1000)可以包括增量表和/或解碼表和/或編碼表。

圖7b示出了根據(jù)實(shí)施例的處理器系統(tǒng)1100的示意性表示。處理器系統(tǒng)包括一個(gè)或多個(gè)集成電路1110。在圖7b中示意性地示出了一個(gè)或多個(gè)集成電路1110的架構(gòu)。電路1110包括處理單元1120(例如cpu),以用于運(yùn)行計(jì)算機(jī)程序組件以執(zhí)行根據(jù)實(shí)施例的方法和/或?qū)崿F(xiàn)其模塊或單元。電路1110包括用于存儲(chǔ)編程代碼、數(shù)據(jù)等的存儲(chǔ)器1122。存儲(chǔ)器1122的一部分可以是只讀的。電路1110可以包括通信元件1126,例如天線、連接器或兩者等。電路1110可以包括用于執(zhí)行在方法中定義的處理的一部分或全部的專用集成電路1124。處理器1120、存儲(chǔ)器1122、專用ic1124和通信元件1126可以經(jīng)由互連1130(例如總線)相互連接。處理器系統(tǒng)1110可以被布置成用于分別使用天線和/或連接器的接觸式和/或無(wú)接觸式通信。

應(yīng)注意的是,上述實(shí)施例舉例說(shuō)明而不是限制本發(fā)明,并且本領(lǐng)域的技術(shù)人員將能夠設(shè)計(jì)許多替換實(shí)施例。

在權(quán)利要求中,不應(yīng)將放入括號(hào)之間的任何參考標(biāo)號(hào)理解為限制權(quán)利要求。動(dòng)詞“包括”及其變化的使用并不排除在權(quán)利要求中敘述的那些之外的元件或步驟的存在。在元件前面的冠詞“一”或“一個(gè)”不排除多個(gè)這樣的元件的存在??山柚诎ㄈ舾刹煌约敖柚谶m當(dāng)編程的計(jì)算機(jī)來(lái)實(shí)現(xiàn)本發(fā)明。在枚舉若干裝置的設(shè)備權(quán)利要求中,可用硬件的同一項(xiàng)來(lái)體現(xiàn)這些裝置中的若干裝置。在相互不同的從屬權(quán)利要求中敘述某些措施的僅有事實(shí)并不指示這些措施的組合不能被有利地使用。在權(quán)利要求中,括號(hào)中的提及指的是實(shí)施例的圖中的參考符號(hào)或?qū)嵤├墓?,因此增加?quán)利要求的可理解性。這些提及并不是窮舉的,并且不應(yīng)理解為限制權(quán)利要求。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1