In this work we discuss the resistance of atomic pattern algorithms for elliptic curve point multiplication against simple side channel analysis attacks using our own implementation as an example. The idea of the atomicity principle is to make kP implementations resistant against simple side channel analysis attacks. One of the assumptions, on which the atomicity principle is based, is the indistinguishability of register operations, i.e. two write-to-register operations cannot be distinguished if their old and new data values are the same. But before the data can be stored to a register/block, this register/block has to be addressed for storing the data. Different registers/blocks have different addresses. In praxis, this different and key dependent addressing can be used to reveal the key, even by running simple SCA attacks. The key dependent addressing of registers/blocks allows to reveal the key and is an inherent feature of the binary kP algorithms. This means that the assumption, that addressing of different registers/blocks is an indistinguishable operation, may no longer be applied when realizing kP implementations, at least not for hardware implementations.
翻译:在这项工作中,我们讨论的是利用我们自身的执行作为实例,对简单的侧频道分析攻击进行离子曲线曲线的原子模式算法的阻力。原子原则的理念是使 kP 执行功能对简单的侧频道分析攻击产生抗力。原子原则所依据的一种假设是登记操作的不可分性,即,如果其旧数据值和新数据值相同,则无法区分两个从写到登记操作。但在数据存储到登记/区块之前,必须处理这个登记册/区块,以储存数据。不同的登记册/区块有不同的地址。在操作中,即使运行简单的SCA攻击,也可以使用这种不同和关键依赖的地址来显示钥匙。登记册/区块的关键地址可以显示键,这是二进制KP算法的固有特征。这意味着,在完成 kP 执行时, 不同登记册/ 区块的处理是一个不可分解的操作, 可能不再应用这种假设, 至少在硬件执行时, 。