On Fri, Sep 02, 2016 at 08:05:04PM +0530, Harsh Jain wrote: > Hi Herbert, > > Is copy of AAD data to destination buffer when dst != src is mandatory > requirements for crypto drivers or we can skip this copy. Actually I > am bit confused, In following link Stephen had mentioned caller will > memcpy the AAD to destination buffer but authenc.c also copies the AAD > to dest. buffer. > > http://www.chronox.de/libkcapi/html/ch02s02.html It has to be copied if src != dst. > Secondly When AAD data remains unchanged in AEAD encryption/decryption > operations. Why we copy the same data to destination buffer? This greatly simplifies the implementation of the AEAD algorithms because we can throw away src and use the dst only. For example, authenc hashes the AAD and ciphertext. If we didn't force the copy it would have to hash them separately, meaning the use of the slow init/update/final interface. With the copy it can use the digest interface. Cheers, -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- 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