32位DeepCover安全微控制器(MAXQ1050、MAXQ1850和MAXQ1103)為執行模塊化運算提供硬件支持。這是使用稱為模塊化算術加速器 (MAA) 的引擎完成的。本應用筆記給出了各種模量尺寸、關鍵類型和優化級別的典型執行時間。
介紹
模冪用于幾種加密算法,特別是RSA公鑰算法和橢圓曲線數字簽名算法(ECDSA)。它還用于發現素數和查找模逆。本應用筆記描述了什么是模冪,概述了MAA,并列出了執行各種大小冪的典型時間。
MAXQ30架構采用精簡指令集計算機(RISC),所有指令長度為16位,在一個周期內執行。32 位算術和邏輯單元 (ALU) 在連接到 32 位總線時與 32 位寄存器和值一起工作。
模冪
模冪由以下等式描述:
結果 = 基數指數模量。
例如:9 = 72 mod 10。
在此示例中,9 是結果,7 是底數,2 是指數,10 是模數。在這種情況下,由于模數 10 在二進制中為 4 位長,因此大小為 4。
MAA 執行模加法、減法、乘法、平方、平方,然后乘法和模冪。所有這些操作都可以以最大 2048 位長度的模數完成。
MAA 從加密時鐘運行。該時鐘可能來自系統時鐘,該系統時鐘由外部晶體頻率決定,或者從加密環運行。DeepCover安全微控制器(MAXQ1050和MAXQ1850)的內部加密環工作頻率為55MHz至75MHz,典型速度為65MHz。DeepCover安全微控制器(MAXQ1103)的內部加密環可以以45MHz至65MHz的速度運行,典型速度為55MHz。?
MAXQ1050和MAXQ1850上的MAA相同,因此從加密環運行時的時序相同。這兩部分的MAA使用32位×16位乘法器和32位數據總線。在MAXQ1103上實現MAA具有64位×32位乘法器和64位數據總線。MAXQ1103上的MAA執行速度更快,但代價是使用更多的硅面積。
在啟用優化的情況下運行時,簡單功耗分析 (SPA) 和差分功耗分析 (DPA) 等功耗分析攻擊可能能夠提取指數信息。建議始終使用私鑰進行非優化計算。
表 1 至 3 中的數據是典型的運行時間。每個條目是 400 次計算的平均時間,使用基數、模數和指數的統一隨機數,最高有效位設置為模數。在公鑰計算的情況下,使用 0x10001 的十六進制值而不是隨機數。這是 RSA 中公共指數的典型值。計算的時間是從操作開始到完成。不包括將值加載到內存中進行計算的時間。
通過采用中國余數定理(CRT),可以實現模指數運算的顯著速度改進。使用 CRT 需要兩個較小的模塊化冪運算,而不是一個大的運算。不是對大模量執行模塊化指數計算,而是對模量的兩個因子進行模塊化指數計算。例如,在 RSA 中,模數是兩個素數 p 和 q 的乘積。如果p和q都是1024位,使用MAXQ1103對這些位進行兩次模指數運算大約需要165ms。如果沒有 CRT,則需要 2048 位模塊化指數運算,大約需要 557 毫秒。CRT算法需要額外的計算,這將增加總時間,但預計速度會快兩倍以上。
表1左側的數據最有趣。這些是在非優化模式下從加密環運行時執行模塊化冪運算的典型經過時間。使用優化和公鑰的典型運行時間位于右側兩列中。
表 1.從加密環運行時的典型時間 | ||||||||
從加密環運行的 MAA(以毫秒為單位的時間) | ||||||||
私鑰 | 公鑰 = 0x10001 | |||||||
未優化 | 優化 | 未優化 | 優化 | |||||
大小 | MAXQ1050/MAXQ1850 在 65MHz | MAXQ1103 在 55MHz | MAXQ1050/MAXQ1850 在 65MHz | MAXQ1103 在 55MHz | MAXQ1050/MAXQ1850 在 65MHz | MAXQ1103 在 55MHz | MAXQ1050/MAXQ1850 在 65MHz | MAXQ1103 在 55MHz |
160 | 1.89 | 1.07 | 1.42 | 0.809 | 0.21 | 0.123 | 0.116 | 0.0723 |
192 | 2.91 | 1.36 | 2.19 | 1.02 | 0.26 | 0.130 | 0.147 | 0.0768 |
224 | 4.22 | 2.16 | 3.18 | 1.62 | 0.32 | 0.173 | 0.182 | 0.101 |
256 | 5.87 | 2.59 | 4.41 | 1.95 | 0.39 | 0.183 | 0.220 | 0.107 |
384 | 16.5 | 6.72 | 12.4 | 5.05 | 0.73 | 0.310 | 0.404 | 0.178 |
512 | 35.2 | 13.6 | 26.4 | 10.2 | 1.16 | 0.466 | 0.642 | 0.266 |
640 | 64.4 | 24.0 | 48.3 | 18.0 | 1.69 | 0.650 | 0.933 | 0.368 |
768 | 106.0 | 38.5 | 79.7 | 28.9 | 2.32 | 0.864 | 1.28 | 0.487 |
1024 | 237.0 | 82.5 | 178.0 | 61.9 | 3.86 | 1.38 | 2.12 | 0.772 |
1536 | 750.0 | 249.0 | 563.0 | 187.0 | 8.12 | 2.75 | 4.46 | 1.53 |
2048 | 1,720.0 | 557.0 | 1,290.0 | 418.0 | 13.9 | 4.58 | 7.64 | 2.54 |
表 2 列出了在優化和非優化模式下對私鑰數據執行模塊化冪的典型時間。表 3 列出了在優化和非優化模式下使用公鑰對這三個部分執行模冪的典型時間。
表 2.從系統時鐘運行時的典型私鑰時間 | ||||||
從系統時鐘運行的 MAA(以毫秒為單位的時間) | ||||||
私鑰/未優化 | 公鑰/優化 | |||||
大小 | MAXQ1050 在 25MHz | MAXQ1850 在 16MHz | MAXQ1103 在 25MHz | MAXQ1050 在 25MHz | MAXQ1850 在 16MHz | MAXQ1103 在 25MHz |
160 | 4.93 | 7.68 | 2.37 | 3.71 | 5.78 | 1.79 |
192 | 7.58 | 11.8 | 3.00 | 5.70 | 8.88 | 2.26 |
224 | 11.0 | 17.2 | 4.75 | 8.27 | 12.9 | 3.58 |
256 | 15.3 | 23.9 | 5.71 | 11.5 | 17.9 | 4.29 |
384 | 42.9 | 67.0 | 14.8 | 32.2 | 50.3 | 11.1 |
512 | 91.7 | 143.0 | 30.0 | 68.9 | 107.0 | 22.5 |
640 | 167.0 | 262.0 | 52.9 | 126.0 | 196.0 | 39.6 |
768 | 276.0 | 432.0 | 84.8 | 208.0 | 324.0 | 63.6 |
1024 | 617.0 | 964.0 | 182.0 | 463.0 | 722.0 | 136.0 |
1536 | 1,950.0 | 3,050.0 | 549.0 | 1,460.0 | 2,290.0 | 412.0 |
2048 | 4,480.0 | 6,990.0 | 1,230.0 | 3,360.0 | 5,250.0 | 921.0 |
表 3.從系統時鐘運行時的典型公鑰時間 | ||||||
從系統時鐘運行的 MAA(以毫秒為單位的時間) | ||||||
公鑰 = 0x10001/未優化 | 公鑰 = 0x10001/優化 | |||||
大小 | MAXQ1050 在 25MHz | MAXQ1850 在 16MHz | MAXQ1103 在 25MHz | MAXQ1050 在 25MHz | MAXQ1850 在 16MHz | MAXQ1103 在 25MHz |
160 | 0.532 | 0.831 | 0.269 | 0.299 | 0.468 | 0.158 |
192 | 0.679 | 1.06 | 0.285 | 0.381 | 0.595 | 0.168 |
224 | 0.840 | 1.31 | 0.381 | 0.470 | 0.736 | 0.221 |
256 | 1.02 | 1.59 | 0.401 | 0.570 | 0.889 | 0.234 |
384 | 1.89 | 2.96 | 0.681 | 1.05 | 1.64 | 0.392 |
512 | 3.02 | 4.71 | 1.02 | 1.67 | 2.61 | 0.584 |
640 | 4.40 | 6.87 | 1.43 | 2.43 | 3.79 | 0.811 |
768 | 6.03 | 9.42 | 1.90 | 3.32 | 5.19 | 1.07 |
1024 | 10.1 | 15.7 | 3.03 | 5.53 | 8.64 | 1.70 |
1536 | 21.1 | 33.0 | 6.05 | 11.6 | 18.1 | 3.37 |
2048 | 36.3 | 56.7 | 10.1 | 19.9 | 31.1 | 5.59 |
-
微控制器
+關注
關注
48文章
7923瀏覽量
153810 -
總線
+關注
關注
10文章
2953瀏覽量
89410 -
時序
+關注
關注
5文章
397瀏覽量
37809 -
RISC
+關注
關注
6文章
480瀏覽量
84743 -
MAXQ30
+關注
關注
0文章
4瀏覽量
6984
發布評論請先 登錄
MAXQ1850評估套件(EV kit)和面向MAXQ30的CrossWorks編譯器的設計方案
帶紅外模塊的16位微控制器MAXQ61C電子資料
16位微控制器具有紅外模塊MAXQ610電子資料
采用MAXQ1103評估套件和面向MAXQ30的CrossW

采用MAXQ1103評估套件和面向MAXQ30的CrossW

MAXQ61C 具有紅外模塊的16位微控制器

MAXQ618 低功耗6位MAXQ微控制器
MAXQ612/MAXQ622低功耗、16位MAXQ微控制器

模塊化求冪MAXQ30微控制器的時序
MAXQ1050評估套件和面向MAXQ30入門的CrossStudio編譯

MAXQ1050的評估套件和面向MAXQ30入門的CrossStudio編譯
DS5250微控制器的模冪時序

使用uIP堆棧將MAXQ微控制器聯網

評論