Am Montag, 30. März 2015, 18:08:28 schrieb Markus Stockhausen: Hi Markus, > > Von: linux-crypto-owner@xxxxxxxxxxxxxxx > > [linux-crypto-owner@xxxxxxxxxxxxxxx]" im Auftrag von "Corentin > > LABBE [clabbe.montjoie@xxxxxxxxx] Gesendet: Montag, 30. März 2015 19:59 > > An: linux-crypto@xxxxxxxxxxxxxxx > > Cc: linux-sunxi@xxxxxxxxxxxxxxxx > > Betreff: problem with testing a CTR block cipher mode which is partially > > working > > > > hello > > > > I am trying to add the CTR (counter) block cipher mode for AES on my > > Security System driver. > > > > When testing with the tcrypt module I got the following result: > > [ 1256.986989] alg: skcipher: Test 1 failed on encryption for > > ctr-aes-sunxi-ss [ 1256.987004] 00000000: 87 4d 61 91 b6 20 e3 26 1b ef > > 68 64 99 0d b6 ce [ 1256.987013] 00000010: 40 94 25 91 d7 b4 4f 49 ab c1 > > 9d 33 a4 4e f6 54 [ 1256.987023] 00000020: ce 58 d2 f0 01 8f 92 a2 5f 2c > > bb 66 13 8b 9d 76 [ 1256.987032] 00000030: 30 fa 4a 40 b1 67 2e f3 46 b7 > > 9a 7c ba 91 0b a2 > > > > As you can see the first ciphered block is correct (according to > > testmgr.h), the subsequent blocks are bad. > > > > So Could I assume that the setting of key and IV are good (at least for > > the first cipher pass. > > > > The number of inputs(register) are limited and I have tested near all the > > possibility. Any idea of what could be wrong. > > had a similar challenge a few months ago. I had to take care about > > - counter IV is big endian (implemented it little endian in first place) Use crypto_inc for the counter which properly increments in big endian. > - CTR allows to encrypt data that does not need to be amultiple of 16 bytes. > > Markus -- Ciao Stephan -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html