Page 433 - 《软件学报》2025年第10期
P. 433
4830 软件学报 2025 年第 36 卷第 10 期
i ⊕ ⊕ i
RK 0 RK 1
S S ... S S S S ... S S
⊕
⊕ ⋘ 32 4
⋘ 32 8 ⊕
⊕ ⋘ 32 8
⋘ 32 20 ⊕
⊕
PL PR
图 1 uBlock 算法加密轮函数
uBlock 算法采用 4 比特的 S 盒, S 盒以及 S 盒的逆如表 1 所示.
表 1 uBlock 算法 4 比特 S 盒与 S 盒的逆
x 0 1 2 3 4 5 6 7 8 9 a b c d e f
s(x) 7 4 9 c b a d 8 f e 1 6 0 3 2 5
−1
s (x) c a e d 1 f b 0 7 2 5 4 3 6 9 8
uBlock 算法的 S 盒硬件逻辑门结构如图 2 所示, 在硬件实现中共需 8 个逻辑门, 即 2 个与非门、2 个或非门、
2 个异或门、2 个异或非门. 算法的 S 盒的关键路径为 4, 每比特平均 1 个乘法电路.
y 0 y 1 y 2 y 3 = s(x 0 x 1 x 2 x 3 )
x 3
x 2
x 1
x 0
NAND XOR
NAND XOR
NOR XNOR
NOR XNOR
y 3
y 2
y 1
y 0
图 2 uBlock 算法 S 盒硬件逻辑门
uBlock 算法的 PL 和 PR 是 n/16 个字节的向量置换, 不同分组比特长度所对应的置换表和逆置换表如表 2
所示.

