AES مقابل راسم الذبذبات

وجدت كلمة "هاكر" صوتها الحالي فقط في النصف الثاني من القرن العشرين بفضل الصحفيين. في البداية ، تم استدعاء المتسللين المتخصصين الذين لديهم معرفة واسعة في مجال تقنيات الكمبيوتر وقادرون على استخدامها ببراعة. إنها تدور حول أنشطة إحدى مجموعات هؤلاء المتسللين التي سيتم مناقشتها في هذه المقالة.





المقدمة

2007 Nvidia CUDA — - , , . GPU GPGPU (General Purpose GPU), Nvidia - . , , . , , , . UCAS AES, .





, CUDA AES:





CUDA

CUDA (Compute Unified Device Architecture) — - , Nvidia . CUDA .





, CUDA, :





  1. (kernel) — , GPGPU;





  2. (grid) — , ;





  3. (block) — . --- ;





  4. (, thread) — .





, . CUDA .





, GPGPU.





CUDA

CUDA, GPGPU ( ):





  1. (Scalar Processor, SP) — , ;





  2. (Streaming Multiprocessor, SM) — SP, , 32- (Instruction Unit). SM L1-, SP. SM , ;





  3. GPU — SM, .





GPGPU, , . 32 (warp). , SIMT- (Single Instruction Multiple Threads).





GPGPU , . .





.





AES

Advanced Encryption Standard (AES), Rijndael — . 128 128, 192 256 . 128 , 128 .





AES-128 S 4 4 , (state), 11 :





  1. SubBytes — , SBox. 16 16, . : b \{x, y\}, x y — , , x- y- SBox. , (Row-Major Ordering) b .





    , , . SBox, SBoxLUT (Look Up Table).





  2. ShiftRows — . , , .





  3. MixColumns — , — . SBox, , .





  4. AddRoundKey — RounKey 4 4, . AES " " — 11 , , . KeyExpansion .





, 11 . . , 11- , :





AddRoundKey(0)

for (i = 1; i <= 10; i += 1) {
    SubBytes()
    ShiftRows()
    MixColumns()
    AddRoundKey(i)
}

SubBytes()
ShiftRows()
AddRoundKey(11)
      
      



, GF(2^8). , -, \oplus.





, , , . , .





AES, AES, — , .





32x16 , (Embarrassingly Parallel): , . , , .





. , . .





  1. , ;





  2. ;





  3. , ;





  4. , , 16 :





    1. l;





    2. 256 k^{guess}_l:





      1. r_l^1 r_l^2 k^{guess}_l;





      2. 3 r_l^1 r_l^2;





      3. \Delta, k^{guess}_l;





    3. k_l^{guess}, \Delta;





  5. , .





, . , , .





— , , 1/2\pi . , , GPGPU, , . , . , . .





. , GPGPU, , . , . GPGPU. , .





-

, , - (Simultaneous Cache Collision, SCC). , warp-, , ( SCC) (SCC ) -. .





, - GPGPU Fermi, , 128 . SBoxLUT, SubBytes, 256 , -, . , SCC SBoxLUT D_1 = \{0~..~127\}, D_2 = \{128~..~255\}.





. :







c_l = SBox(r_l) \oplus k_l, ~l \in \{0, 1, ..., 15\},





c_{l} k_{l}l- l- , , r_{l} — . , k^{guess}. , c_{l}, r_{l}:







r_l = InvSBox(c_l \oplus k^{guess}_l),~l \in \{0, 1, ..., 15\},



InvSBox — , InvSBox( SBox(i) ) = i, k^{guess}_ll- k^{guess}. , . , , . l- r_{l}, , : r_{l}^1 r_{l}^2. SBoxLUT, -, . r_{l}^1 r_{l}^2, : : D_1 D_2.





- G_1 G_2 r_l^1 r_l^2: . :





G_1 = \{ \vec{T_i}~|~(r_l^1 \in D_1~\text{}~r_l^2 \in D_1)~\text{}~(r_l^1 \in D_2~\text{}~r_l^2 \in D_2) \}, G_2 = \{ \vec{T_i}~|~(r_l^1 \in D_1~\text{}~r_l^2 \in D_2)~\text{}~(r_l^1 \in D_2~\text{}~r_l^2 \in D_1) \},

\vec{T_i} , .





, , , , , . ,







\vec{\Delta} = \left| \frac{1}{n_1}\sum_{\vec{T_i} \in G_1} \vec{T_i} - \frac{1}{n_2}\sum_{\vec{T_i} \in G_2} \vec{T_i} \right|,



, , G_1 G_2. , n_1 n_2G_1 G_2, . , , k^{guess}_l, \vec{\Delta} k^{guess}_l: \vec{\Delta} = \vec{\Delta}(k^{guess}_l).





k^{guess} , , r_l^1 r_l^2 , . , k_{guess} r_l^1 r_l^2 . \ vec {\ Delta} (ك ^ {guess} _l) . , ل- 256 , \ vec {\ Delta} (ك ^ {guess} _l) . :







\ DeclareMathOperator * {\ argmax} {argmax} k_l ^ {right} = \ argmax_k \ left (\ max_ {k \ in \ {0 ~ .. ~ 255 \}} \ left (\ max_ {i} \ Delta_i \ right ) \ حق)،



\ دلتاأنا- \ vec {\ Delta}. : ك \ vec {\ Delta} (ك) أنا- . , 256 . ك ك ^ {تصحيح} _l. l \ in \ {0 ~ .. ~ 15 \}, . , , AES-128 .





, 1000 , 100 . KEA 600.





, , — .





, . . Nvidia GeForce GT 620 454MiB. , — PolarSSL. Agilent KeySight DSO9104A Rohde&Schwarz RF B.





. AES-128 , , AES-192 AES-256 . , AES-256 2256 2128, .





- GPGPU . , , , , .





على الرغم من حقيقة أنه من الصعب إجراء هجوم في الحياة الواقعية في الوقت الحالي ، إلا أنه يظل مثيرًا للاهتمام من وجهة نظر علمية ويمكن أن يعطي دفعة لمزيد من تطوير الأفكار في الاتجاه المدروس.







ملاحظة في الوقت الحالي ، تعتبر الاختلافات في تنسيق الصيغ في المحرر وعند عرض المنشور مفاجئة إلى حد ما ، وسأحاول اكتشاف ذلك في المستقبل القريب.








All Articles