On Mon, May 09, 2016 at 10:40:39PM +0100, Salvatore Benedetto wrote: > Add key-agreement protocol primitives (kpp) API which allows to > implement primitives required by protocols such as DH and ECDH. > The API is composed mainly by the following functions > * set_params() - It allows the user to set the parameters known to > both parties involved in the key-agreement session > * set_secret() - It allows the user to set his secret, also > referred to as his private key Why can't we just have one function, set_secret or better yet setkey? > * generate_public_key() - It generates the public key to be sent to > the other counterpart involved in the key-agreement session. The > function has to be called after set_params() and set_secret() > * generate_secret() - It generates the shared secret for the session Ditto, we only need one operation and that is multiplication by the secret. I'm OK with you keeping them separate for kpp users so that they don't have to explicitly provide G but please ensure that drivers only have to implement one of them. 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