Thanks Herbert for clarification. It means Libkcapi documentation needs update of chapter "Aead Cipher API". Regards Harsh Jain On Fri, Sep 2, 2016 at 8:12 PM, Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> wrote: > 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