Page 179 - 《软件学报》2021年第8期
P. 179
邹敏辉 等:基于木马的方式增强 RRAM 计算系统的安全性 2461
输入被送到输入层,并且神经元 I1,I2,I3 和 I4 分别得到输入向量的第 1、第 2、第 3 和第 4 位.我们选择 Sigmoid
函数作为 H1,H2,…,H5 的激活函数.
我们用梯度下降法训练该网络模型的参数,训练之后,该网络模型的预测输出准确性如表 1 第 3 列所示,模
型的预测准确率为 16/16.
Table 1 Comparison of prediction accuracy of the example neural network model without neuron Trojan or
with neuron Trojan not triggered and the example neural network model with neuron Trojan triggered
表 1 示例神经网络不含木马神经元或者含木马神经元但木马神经元未激活的预测准确率
与示例神经网络含有木马神经元并且木马神经激活的预测准确率对比
预测输出
输入序列 实际标签
不含有木马神经元或者木马神经元未激活 木马神经元激活
0000 标签 0 标签 0 标签 8
0001 标签 1 标签 1 标签 1
0010 标签 2 标签 2 标签 6
0011 标签 3 标签 3 标签 6
0100 标签 4 标签 4 标签 6
0101 标签 5 标签 5 标签 1
0110 标签 6 标签 6 标签 6
0111 标签 7 标签 7 标签 6
1000 标签 8 标签 8 标签 8
1001 标签 9 标签 9 标签 8
1010 标签 10 标签 10 标签 10
1011 标签 11 标签 11 标签 11
1100 标签 12 标签 12 标签 8
1101 标签 13 标签 13 标签 13
1110 标签 14 标签 14 标签 6
1111 标签 15 标签 15 标签 6
让我们在这个示例网络模型的隐藏层插入木马神经元 T,如图 3 所示,神经元 T 通过突触与其所在网络层的
下一层的所有神经元 O1,O2,...,O16 相连接.为了使得激活的木马神经元 T 能够影响模型的输出预测准确性,我
们将木马神经元 T和 O1,O2,...,O16之间的突触权重设置为该层模型参数的取值范围内的随机值.假设我们能通
过某种方式激活木马神经元 T.当木马神经元 T 处于未激活状态时,T 的输出为 0,结果如表 1 的第 3 列所示,模型
的预测准确率为 16/16;当木马神经元 T 处于激活状态时,T 的输出为 1,结果如表 1 的最后一列所示(颜色深的单
元表示预测输出是错的),模型的预测准确率大大降低,仅为 5/16.我们可以看到,激活的木马神经元极大地影响
了示例网络模型的功能.
3 在 RRAM 计算系统中实现神经元级别木马的嵌入来增强系统的安全
本文的目标是以木马的方式增强 RRAM计算系统的安全,即:当木马未激活时,RRAM计算系统可以正常使
用;当木马激活时,RRAM 计算系统不能够正常使用.本节展示了第 2 节提到的神经元级别木马在 RRAM 计算系
统中的实现.木马的 Trigger 部分是为了检测木马的输入,当木马输入满足条件时激活木马;木马的 Payload 部分
是激活的木马通过连接电路影响系统的运行.
3.1 设计Trigger部分
为了保护 RRAM 计算系统不被未授权的用户正常访问,嵌入在 RRAM 计算系统中的木马默认为允许激活
状态,只有输入了正确的密钥之后,才能禁止该木马激活.因此,该木马的 Trigger 部分必须保证木马能够很容易
被激活.如图 4(a)所示,假设神经网络的第 n 层和第 n+1 层均为 FC 层,第 n−1 层、第 n 层和第 n+1 层的神经元
数量分别为 p,q 和 r,则第 n−1 层和第 n 层之间的参数矩阵以及第 n 层和第 n+1 层之间的参数矩阵尺寸分别为
u
p×q 和 q×r. a 表示第 u 层第 v 个神经元的激活值.为了方便讨论,我们假设所有神经元的 bias 均为 0,并且所有
v
的激活函数均为 Sigmoid 函数.如图 4(a)所示,我们在神经网络模型的第 n 层插入木马神经元 T,该神经元的激活