论文部分内容阅读
机器学习已经成为整个计算机领域中最活跃、应用潜力最明显的技术之一,它在人脸检测、语音识别等方面均获得了成功应用。近年来,国内外部分学者将机器学习的方法引入密码设计与分析学的研究领域,在为该领域注入新的活力的同时,也为密码学与机器学习的综合交叉发展,开辟了新的方向——基于机器学习的侧信道攻击。信息系统是否安全取决于系统中最弱的组成部件,这使得密码算法即使在数学理论上安全,也可能由于其不恰当的物理实现导致风险。侧信道攻击正是根据这一原理而实施的有效攻击技术,利用密码算法的执行载体——密码芯片运算过程中泄露的各种物理信息(如功耗、电磁辐射、声音、可见光等)来破解密钥。相比于传统的密码分析方法,侧信道攻击技术的优点在于具有较小的密钥搜索空间和较好的分析效率。而机器学习能像人一样通过经验不断改善和提高自身性能。所以基于机器学习的侧信道攻击对于提高攻击的可靠性和自动化水平有重要意义。目前该领域的研究工作仍然处于探索阶段,许多有意义的问题有待深入探讨。相比于其它侧信道攻击方法,电磁攻击在攻击过程中无需与密码系统直接进行电气连接,具有隐蔽性强和难以被察觉等优点。本文以常用的密码算法为攻击对象,以电磁辐射探测为主要测试手段,将机器学习的方法应用到侧信道攻击中来,取得以下主要研究结果:(1)针对传统模板攻击方法必须已知明文或密文的缺点,提出了一种直接以密钥为目标的单比特模板攻击方法,该方法不仅可以减少需要构建的模板数量,降低了计算复杂度,而且能够利用更多的训练数据,但是由于没有考虑明文的影响,导致分类准确率偏低,为此进一步提出将攻击区域定位在密钥扩展阶段。通过对单片机上实现的DES密码算法的电磁模板攻击实验表明,该方法在未知明文(密文)的情况下,只需要1条测试曲线,就可以完全正确的推断出密钥。(2)为了避免模板攻击运算中出现协方差矩阵“病态”和数值超出浮点数表示范围等问题,本文在保证模板匹配概率前后顺序不变的前提下,通过多项式简化和变换实现了一种快速的模板攻击方法,该方法使用公共协方差矩阵代替协方差矩阵,不仅可以放松协方差矩阵可逆的限制条件,而且由于更接近真实协方差矩阵,在降低计算复杂度的同时,提高了攻击成功率。通过协方差矩阵、公共协方差矩阵、单位矩阵的对比实验,证明了该方法的有效性。(3)针对有监督学习中常见的高维数、小样本问题,首先结合选择和特征提取算法的优点,提出了一种新的降维方法SPP,然后利用汉明重量模型天然具有次序性的特点,提出了一种新的SVM多分类器,将需要训练的二分类器数量从K(K-1)/2减少到K个。通过攻击执行DES软件实现的8位单片机,实验结果表明SPP方法优于PCA方法,多分类SVM攻击优于模板攻击。(4)有监督学习需要大量具有标记的训练数据,而在实际情况下要得到这样的完备数据集非常困难。为此本文提出了一种无监督的攻击方法。该方法首先建立密码设备线性回归模型,然后利用最小二乘法求出模型参数,为了量化估计误差,需要在每个抽样点计算多重可决系数来评价模型的拟合优度。最后为了消除“奇异尖峰”的干扰,提出了一种利用标准化类间方差进行修正的方法。实验结果证明了该方法的有效性。