commit 5d6317a9072695839871d0e0add25eefaf53cd19
parent 38dd8896682365a01a6cbbec97631b9ed7573953
Author: Kévin Le Gouguec <kevin.legouguec@airbus.com>
Date: Mon, 20 May 2019 15:07:58 +0200
Inversion de la seconde boucle de la couche linéaire
1. Ça ressemble plus à ce qu'on voit sur le schéma.
2. Pour une raison obscure, la version incrémentée bouffe souvent plus
de ROM et plus de cycles (jusqu'à 5% de ROM sur ARM).
Diffstat:
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ref/cipher.c b/src/ref/cipher.c
@@ -103,7 +103,7 @@ static void _linear_layer(uint8_t X[BLOCK_BYTES])
X[15] ^= X[j];
}
- for (size_t j=9; j<15; j++)
+ for (size_t j=14; j>8; j--)
{
X[j] ^= X[7];
}