模板攻击测试方法、装置、设备及存储介质制造方法及图纸

技术编号:26845823 阅读:62 留言:0更新日期:2020-12-25 13:08
本申请提供模板攻击测试方法、装置、设备及存储介质。所述方法包括:确定密码产品的建模模板、调参模板和验证模板;选取各模板中对应的测试参数,迭代计算调参模板与建模模板的多个第一损失值及多个第一匹配概率值、验证模板与建模模板的多个第二损失值及第二匹配概率值;选取不同的测试参数中,各次迭代的第一损失值与第二损失值的差值的平均值小于第一预设阈值和第一匹配概率值与第二匹配概率值的差值的平均值小于第二预设阈值的测试参数作为模板匹配的测试参数;基于模板匹配的测试参数,计算模板库中所有模板与验证模板的匹配概率;选取与匹配概率最大的模板对应的猜测密码,与密码芯片的真正密码比较,以评估密码产品的安全性。

【技术实现步骤摘要】
模板攻击测试方法、装置、设备及存储介质
本申请涉及密码产品安全
,具体涉及模板攻击测试方法、装置、设备及存储介质。
技术介绍
安全芯片等密码产品在实际使用过程中容易遭受各种攻击,通常密码产品会在出厂前由生产厂商自身和安全产品检测机构对其安全性进行分析和评估。一些典型的攻击手段,如对密码产品的功耗或电磁形式的信息泄露开展旁路分析,但随着安全产品硬件工艺和防护策略的不断提升,加之实际环境中夹带大量的噪声,大多数传统分析方法往往难以全面发现其潜在的安全漏洞。模板攻击测试是一种新推出的安全性评估方法,相比传统的差分功耗分析,模板攻击测试还能适用于对数据搬移等这些非密码运算操作实施分析,所以该技术被安全测评领域广泛采用。在对安全芯片等密码产品的侧信道泄露评测中,传统的模板攻击测试方法主要包括建立模板和模板匹配两个环节。测试者要得到理想的匹配结果则需选定合适的建模参数和匹配参数,所以实际测试中往往会反复调整相关参数配置,让匹配结果更加接近最佳值。专利技术人发现,通过反复手动调参建立模板再开展模板匹配,该操作方法耗时较多,加上建模参数选取也存在一定盲目性,往往容易降低匹配结果的准确率,且匹配结果鲁棒性也不佳,这给开展模板攻击测试带来了挑战。而作为密码产品的厂家,使用模板攻击的结果来评估密码产品的安全性其准确率也取决于模板攻击结果的准确率。因此,为了更好的提高模板攻击测试结果的准确率,极需对传统模板攻击测试方法作进一步优化。
技术实现思路
本申请实施例提供了一种模板攻击测试方法,包括:确定密码产品的建模模板、调参模板和验证模板,所述建模模板和所述调参模板来自于所述密码产品的模板库,所述验证模板的数量与所述调参模板的数量相同;选取所述调参模板、所述验证模板与所述建模模板中对应的测试参数,迭代计算所述调参模板与所述建模模板的多个第一损失值及多个第一匹配概率值、所述验证模板与所述建模模板的多个第二损失值及第二匹配概率值;选取不同的测试参数中,各次迭代的所述第一损失值与所述第二损失值的差值的平均值小于第一预设阈值和所述第一匹配概率值与所述第二匹配概率值的差值的平均值小于第二预设阈值的所述测试参数作为模板匹配的测试参数;基于所述模板匹配的测试参数,计算所述模板库中所有模板与所述验证模板的匹配概率;选取与所述匹配概率最大的模板对应的猜测密码,与所述密码芯片的真正密码比较,以评估所述密码产品的安全性。作为本申请的一个方面,所述确定密码产品的建模模板、调参模板和验证模板,包括:建立所述密码产品的模板库,所述模板库包括模板,每个模板对应一个猜测密码;将从所述模板库选取的至少一部分模板按照预设比例进行分组,分成建模模板和调参模板;确定所述密码产品使用真正密码多次工作时得到的验证模板。作为本申请的一个方面,所述预设比例为4∶1。作为本申请的一个方面,所述建立密码产品的模板库,包括:采集密码产品使用每个猜测密码工作时的侧信道信息;基于所述侧信道信息提取所述猜测密码的特征点参数;基于所述猜测密码的特征点参数,建立所述猜测密码的模板,所述模板组成模板库。作为本申请的一个方面,所述确定所述密码产品使用真正密码多次工作时得到的验证模板,包括:采集所述密码产品使用真正密码多次工作时的侧信道信息;基于所述真正密码工作时的侧信道信息提取所述真正密码的特征点参数;基于所述真正密码的特征点参数,建立所述验证模板。作为本申请的一个方面,所述侧信道信息包括:操作数据、能量消耗曲线、电磁辐射曲线。作为本申请的一个方面,所述特征点参数包括:特征点,均值向量、噪声协方差矩阵。作为本申请的一个方面,所述选取所述调参模板、所述验证模板与所述建模模板中对应的测试参数,迭代计算所述调参模板与所述建模模板的多个第一损失值及多个第一匹配概率值、所述验证模板与所述建模模板的多个第二损失值及第二匹配概率值,包括:选取所述调参模板、所述验证模板与所述建模模板中对应的测试参数,利用损失函数方程迭代计算所述调参模板与所述建模模板的多个第一损失值;基于所述测试参数,利用准确率函数方程迭代计算所述调参模板与所述建模模板的多个第一匹配概率值;基于所述测试参数,利用损失函数方程迭代计算所述验证模板与所述建模模板的多个第二损失值;基于所述测试参数,利用准确率函数方程迭代计算所述验证模板与所述建模模板的多个第二匹配概率值。作为本申请的一个方面,所述基于所述模板匹配的测试参数,计算所述模板库中所有模板与所述验证模板的匹配概率,包括:基于所述模板匹配的测试参数,利用准确率函数方程计算所述模板库中的所有模板与所述验证模板的第三匹配概率值。本申请实施例还提供一种模板攻击测试装置,包括建模单元、计算单元、参数选取单元、模板匹配单元、密码评估单元,所述建模单元确定密码产品的建模模板、调参模板和验证模板,所述建模模板和所述调参模板来自于所述密码产品的模板库,所述验证模板的数量与所述调参模板的数量相同;所述计算单元选取所述调参模板、所述验证模板与所述建模模板中对应的测试参数,迭代计算所述调参模板与所述建模模板的多个第一损失值及多个第一匹配概率值、所述验证模板与所述建模模板的多个第二损失值及第二匹配概率值;所述参数选取单元选取不同的测试参数中,各次迭代的所述第一损失值与所述第二损失值的差值的平均值小于第一预设阈值和所述第一匹配概率值与所述第二匹配概率值的差值的平均值小于第二预设阈值的所述测试参数作为模板匹配的测试参数;所述模板匹配单元基于所述模板匹配的测试参数,计算所述模板库中所有模板与所述验证模板的匹配概率;所述密码评估单元选取与所述匹配概率最大的模板对应的猜测密码,与所述密码芯片的真正密码比较,以评估所述密码产品的安全性。作为本申请的一个方面,所述建模单元包括模板库建立模块、模板分组模块、验证模板确定模块,所述模板库建立模块建立所述密码产品的猜测密码的模板库;所述模板分组模块将从所述模板库选取的至少一部分模板按照预设比例进行分组,分成建模模板和调参模板;所述验证模板确定模块确定所述密码产品使用真正密码多次工作时得到的验证模板。作为本申请的一个方面,所述模板库建立模块包括猜测密码信息采集模块、猜测密码参数提取模块、建库模块,所述猜测密码信息采集模块采集密码产品使用每个猜测密码工作时的侧信道信息;所述猜测密码参数提取模块基于所述侧信道信息提取所述猜测密码的特征点参数;所述建库模块基于所述猜测密码的特征点参数,建立所述猜测密码的模板,所述模板组成模板库。作为本申请的一个方面,所述验证模板确定模块包括真正密码信息采集模块、真正密码参数提取模块、验证模板建立模块,所述真正密码信息采集模块采集所述密码产品使用真正密码多次工作时的侧信道信息;所述真正密码参数提取模块基于所述真正密码工作时的侧信道信息提取所述真正密码的特征点参数;所述验证模板建立模块基于所述真正密码的特征点参数,建立所述验证模板。验证模板建立模块所述计算单元包括第一损失值迭代计算模块、第一匹配概率迭代计算模块、第二损失值迭代计算模块、第二匹配概率迭代计算模本文档来自技高网...

【技术保护点】
1.一种模板攻击测试方法,包括:/n确定密码产品的建模模板、调参模板和验证模板,所述建模模板和所述调参模板来自于所述密码产品的模板库,所述验证模板的数量与所述调参模板的数量相同;/n选取所述调参模板、所述验证模板与所述建模模板中对应的测试参数,迭代计算所述调参模板与所述建模模板的多个第一损失值及多个第一匹配概率值、所述验证模板与所述建模模板的多个第二损失值及第二匹配概率值;/n选取不同的测试参数中,各次迭代的所述第一损失值与所述第二损失值的差值的平均值小于第一预设阈值和所述第一匹配概率值与所述第二匹配概率值的差值的平均值小于第二预设阈值的所述测试参数作为模板匹配的测试参数;/n基于所述模板匹配的测试参数,计算所述模板库中所有模板与所述验证模板的匹配概率;/n选取与所述匹配概率最大的模板对应的猜测密码,与所述密码芯片的真正密码比较,以评估所述密码产品的安全性。/n

【技术特征摘要】
1.一种模板攻击测试方法,包括:
确定密码产品的建模模板、调参模板和验证模板,所述建模模板和所述调参模板来自于所述密码产品的模板库,所述验证模板的数量与所述调参模板的数量相同;
选取所述调参模板、所述验证模板与所述建模模板中对应的测试参数,迭代计算所述调参模板与所述建模模板的多个第一损失值及多个第一匹配概率值、所述验证模板与所述建模模板的多个第二损失值及第二匹配概率值;
选取不同的测试参数中,各次迭代的所述第一损失值与所述第二损失值的差值的平均值小于第一预设阈值和所述第一匹配概率值与所述第二匹配概率值的差值的平均值小于第二预设阈值的所述测试参数作为模板匹配的测试参数;
基于所述模板匹配的测试参数,计算所述模板库中所有模板与所述验证模板的匹配概率;
选取与所述匹配概率最大的模板对应的猜测密码,与所述密码芯片的真正密码比较,以评估所述密码产品的安全性。


2.根据权利要求1所述的方法,其中,所述确定密码产品的建模模板、调参模板和验证模板,包括:
建立所述密码产品的模板库,所述模板库包括模板,每个模板对应一个猜测密码;
将从所述模板库选取的至少一部分模板按照预设比例进行分组,分成建模模板和调参模板;
确定所述密码产品使用真正密码多次工作时得到的验证模板。


3.根据权利要求1所述的方法,其中,所述预设比例为4:1。


4.根据权利要求2所述的方法,其中,所述建立密码产品的模板库,包括:
采集密码产品使用每个猜测密码工作时的侧信道信息;
基于所述侧信道信息提取所述猜测密码的特征点参数;
基于所述猜测密码的特征点参数,建立所述猜测密码的模板,所述模板组成模板库。


5.根据权利要求2所述的方法,其中,所述确定所述密码产品使用真正密码多次工作时得到的验证模板,包括:
采集所述密码产品使用真正密码多次工作时的侧信道信息;
基于所述真正密码工作时的侧信道信息提取所述真正密码的特征点参数;
基于所述真正密码的特征点参数,建立所述验证模板。


6.根据权利要求4或5所述的方法,其中,所述侧信道信息包括:操作数据、能量消耗曲线、电磁辐射曲线。


7.根据权利要求4或5所述的方法,其中,所述特征点参数包括:特征点,均值向量、噪声协方差矩阵。


8.根据权利要求1所述的方法,其中,所述选取所述调参模板、所述验证模板与所述建模模板中对应的测试参数,迭代计算所述调参模板与所述建模模板的多个第一损失值及多个第一匹配概率值、所述验证模板与所述建模模板的多个第二损失值及第二匹配概率值,包括:
选取所述调参模板、所述验证模板与所述建模模板中对应的测试参数,利用损失函数方程迭代计算所述调参模板与所述建模模板的多个第一损失值;
基于所述测试参数,利用准确率函数方程迭代计算所述调参模板与所述建模模板的多个第一匹配概率值;
基于所述测试参数,利用损失函数方程迭代计算所述验证模板与所述建模模板的多个第二损失值;
基于所述测试参数,利用准确率函数方程迭代计算所述验证模板与所述建模模板的多个第二匹配概率值。


9.根据权利要求1所述的方法,其中,所述基于所述模板匹配的测试参数,计算所述模板库中所有模板与所述验证模板的匹配概率,包括:
基于所述...

【专利技术属性】
技术研发人员:唐有王宇建
申请(专利权)人:国民技术股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1