在FPGA上实现基于功耗的侧信道攻击,实现得到multi-tenant上victim的模型信息。
在FPGA上实现基于功耗的侧信道攻击。
电压下降,运行时间变短
感觉是每个设备都不同,需要提前测试
在different convolution layers和different machine learning model里面只是说了不同的卷积层、不同模型的图像不同,并没有实际恢复参数
只尝试了卷积层
- TDC of attacker can record the execution time of the victim?
-
By leveraging a time-to-digital converter (TDC), an attacker can deduce the composition of instruction groups executing on the victim accelerator and recover parameters of General Matrix Multiplication (GEMM) instructions within a group.
时间数字转换器( TDC ) 是一种用于识别事件并提供事件发生时间的数字表示的设备。例如,TDC 可能会输出每个输入脉冲的到达时间。一些应用程序希望测量两个事件之间的时间间隔,而不是某个绝对时间的概念。
-
Attack targets an off-the-shelf Versatile Tensor Accelerator (VTA).
-
Challenge: VTA is CPU-like processor. VTA uses statically-scheduled task-level pipeline parallelism (TLPP) to execute different instructions in parallel, and computes on instruction groups, which do not have a strict one-to-one relationship with the layers of a machine learning algorithm.
-
TDC sensor is on the same FPGA with VTA module and shares the power distribytion network (PDN). The voltage fluctuation can be obtained as the VTA executes.
-
Tensor Virtual Machine (TVM) puts groups on ARM processor and some on VTA.
-
TDC records the delay of the circuit. Lower voltage causes the signals to propogate a shorter distance, and TDC outputs a smaller value.
-
VTA unit tests: 单个操作如GEMM, ALU-Add,Load-and-Store实验
-
normalized TDC outpus is not sensitive to input values.
-
Different types of instructions can be distinguished based on the unit test TDC trace waveforms.
-
GEMM
O: the number of input batches
N: the number of input channels
M: the number of output channels
-
Different convolution layers
-
现有针对FPGA远程攻击方案较少,现有方案需要物理接触的限制。
实现在multi-tenant fpga上实现了对VTA进行攻击,通过TDC检测VTA执行能量消耗,逆向工程得到在VTA上执行模型的结构和层的类型。
创新点是不需要物理接触、不需要监控bus和memory,不需要提前知道模型细节。之前提出的攻击方案没有考虑到VTA利用TLPP并行执行多条指令。
难点在于VTA使用statically-scheduled task-level pipeline parallelism (TLPP) 并行执行不同指令,在instruction group计算,instruction group与ML算法层之间没有严格一对一关系。
A little detail:
波形变化可以区分GEMM、ALU-Add和Load-and-store。
波形能够看出GEMM中的输入batch、input channel和输出channel。
峰谷能够看不同卷积层
不同trace能够看出不同网络
摘要:
在multi-tenant FPGA上,攻击者能够将sensing circuitry部署在受攻击者的ML 加速器旁边,获得模型结构和层的类型。
本文实现remotepower attach,提取在FPGA上执行的机器学习模型的细节。
利用一个TDC(time-to-digital converter)数字时间转换器,能够获得在受攻击者加速器上执行的指令组合,并且在不物理接触到FPGA情况下,恢复一组GEMM指令之内的参数。
攻击者能够反向工程得到机器学习模型的结构和层。
1.introduction
FPGA上ML攻击探索较少,大多数需要物理接触FPGA。而数据中心的FPGA接触不到,multi-tenant FPGA大力发展。
本文展示了remote power attack在multi-tenant FPGA setting,实现提取关于ML算法的信息。对现成的versatile tensor accelerator攻击。
难点在于使用statically-scheduled task-level pipeline parallelism (TLPP) 并行执行不同指令,在instruction group计算,instruction group与ML算法层之间没有严格一对一关系。
本文实现了恢复不同instruction group的细节和推断parameters of instruction within a group。每个ML model映射到唯一数量的group,每个group包括指令,使用恢复的信息逆向工程结构和ML 模型的layer type.
利用time-to-digit converter(TDC) 远程测量VTA执行的能量消耗。
2.versatile tensor accelerator
VTA把输入ML model是现成VTA instruction,整理成instruction group,一个模型包含多个指令组,每组包含多种指令。之前的攻击没有考虑到VTA利用TLPP并行执行多条指令。
波形变化可以区分GEMM、ALU-Add和Load-and-store。
波形能够看出GEMM中的输入batch、input channel和输出channel。
峰谷能够看不同卷积层
不同trace能够看出不同网络
5.related work
现有利用电磁辐射等攻击方式需要物理接触
[29]证明多用户中敌手无法通过电压操作影响CNN推理精度,因为模型冗余。
[17]使用TDC监控FPGA卷积电压波动,提取BNN网络输入图像。但基于已知BNN架构的假设。
[18]通过feed input和观察off-chip memory access得知网络架构,但是需要控制输入和bus。
本文方案不需要控制输入输出和监控外部memory,不要求网络结构先验知识。
6.conclusion
Remote power attach 针对支持多种神经网络算法的VTA,对知识产权进行威胁。