44、乘法与平方运算的区分及相关攻击与防护

乘法与平方运算的区分及相关攻击与防护

1. 实践中展示差异

在标准的32位微处理器上实现了某些乘法算法。这里主要介绍了两种乘法算法的实践情况,以及它们在乘法和平方运算时的功耗差异。
- 长整数乘法
- 实现与采集 :在微处理器上实现了使用长整数乘法算法的128位乘法,并对随机、均匀分布输入的乘法和平方运算进行了3000次采集。其实现基于特定描述,算法如下:

Algorithm 1. Long Integer Multiplication
Input: X = (xz−1, ..., x1, x0)b, Y = (yz−1, ..., y1, y0)b
Output: W = (w2z−1, ..., w1, w0)b = X · Y
W ←0
for i = 0 to z −1 do
    c ←0
    for j = 0 to z −1 do
        (uv)b ←wi+j + xj · yi + c
        wi+j ←v ; c ←u
    end
    w2z−1 ←u
end
return W
- **差异分析**:两条平均轨迹的差异如图3所示。轨迹中有四个峰值,对应芯片为计算输入的平方而进行的四次平方运算。即对于\(X = (x_3, x_2, x_1, x_0)_b\)(其中\(b = 2^{32}\)),在16次乘法中,当计算\(x_i · x_j\)时,会有四次\(i = j\)的情况。如果将对应相同操作的平均轨迹相减,则不会产生明显的峰值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值