Evaluation of the resistance of implemented cryptographic algorithms against SCA attacks, as well as detecting of SCA leakage sources at an early stage of the design process, is important for an efficient re-design of the implementation. Thus, effective SCA methods that do not depend on the key processed in the cryptographic operations are beneficially and can be a part of the efficient design methodology for implementing cryptographic approaches. In this work we compare two different methods that are used to analyse power traces of elliptic curve point multiplications. The first method the comparison to the mean is a simple method based on statistical analysis. The second one is K-means - the mostly used unsupervised machine learning algorithm for data clustering. The results of our early work showed that the machine learning algorithm was not superior to the simple approach. In this work we concentrate on the comparison of the attack results using both analysis methods with the goal to understand their benefits and drawbacks. Our results show that the comparison to the mean works properly only if the scalar processed during the attacked kP execution is balanced, i.e. if the number of '1' in the scalar k is about as high as the number of '0'. In contrast to this, K-means is effective also if the scalar is highly unbalanced. It is still effective even if the scalar k contains only a very small number of '0' bits.
翻译:在这项工作中,我们比较了两种不同的方法,用来分析对SCA攻击的电源痕迹,以及在设计过程的早期阶段发现SCA渗漏源,这对于高效地重新设计执行过程十分重要。因此,有效的SCA方法,不取决于加密操作中处理的钥匙,是有益的,可以作为实施加密方法的有效设计方法的一部分。在这项工作中,我们比较了用于分析椭圆曲线点倍增的电源痕迹的两种不同方法。第一个方法与平均值的比较是以统计分析为基础的简单方法。第二个方法是K手段——多数使用不受监督的机器学习数据集成算法。我们早期工作的结果显示,机器学习算法并不优于简单方法。在这项工作中,我们集中比较攻击结果,使用两种分析方法来了解其好处和缺点。我们的结果表明,只有在受攻击的KP执行过程中处理的标数平衡的情况下,与平均值的比较才正确,也就是说,如果在被攻击的KP执行过程中处理的小标数只有“1”级数,那么“1”级数甚至“10”级的“卡级比值也很高,那么“卡级”的“卡级比值也是很高。