Tag Info

2

The CTR part of CCM is basically the last for loop in the _ctrMode function: for (i=0; i<l; i+=4) { ctr[3]++; enc = prf.encrypt(ctr); data[i] ^= enc[0]; data[i+1] ^= enc[1]; data[i+2] ^= enc[2]; data[i+3] ^= enc[3]; } i.e. CTR is simply: encrypt a counter block with a block cipher, xor the encrypted block into the data, ...

1

If by "encrypted" you mean generating a keystream, then what you propose is to use in the CTR mode $$C_i = P_i \oplus F_K(IV||i)$$ the following function $F$: $$F_{K_1||K_2||K_3} = E_{K_1}\oplus E_{K_2} \oplus E_{K_3}.$$ This is secure as long as you ensure that for each key all the used IVs are different (i.e. are nonces). As mentioned in another ...

Only top voted, non community-wiki answers of a minimum length are eligible