DES加密优化与VXLAN云网络监控技术解析
1. DES加密优化技术
1.1 SIMD处理与DES加密
在DES加密过程中,SIMD(单指令多数据)处理发挥了重要作用。通过将输入数据组织成多个寄存器中的半块数据,加密过程可以利用SIMD指令并行执行。例如,以下代码展示了数据加载和处理的过程:
vmovdqu (%rsi), %xmm0
vmovdqu (%rdi), %xmm1
vpunpckldq %xmm0, %xmm1, %xmm2
vpunpckhdq %xmm0, %xmm1, %xmm3
在寄存器上实现初始置换和最终置换可以通过移位、逻辑与和异或等SIMD指令在双字块(32位,半块数据)上轻松完成。
1.2 “f”核心函数的三个阶段
“f”核心函数的实现主要包括三个阶段:
- E - 阶段 :使用类似的SIMD指令完成。
- S - 阶段 :需要根据块的6位元素将每个6位输入替换为4位。为避免每个块的元素串行访问S盒表,将部分S盒表加载到寄存器中,并行置换多个不同块的多个元素。最终通过掩码寄存器混合置换结果,确保使用S盒表的正确部分进行置换。使用Intel AVX512扩展,一个寄存器最多可处理8个半块,每个6位元素存储在一个字节中,在16次置换迭代内可完全加载整个S盒表。此过程可通过更多寄存器并行化,同时要准备好S盒常量以适应SIMD指令。
- P - 阶段 :在S阶段完
超级会员免费看
订阅专栏 解锁全文
14

被折叠的 条评论
为什么被折叠?



