All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/7] crypto: Convert all AEAD users to new interface
@ 2015-05-21 10:39 Herbert Xu
  2015-05-21 10:43 ` [PATCH 1/7] crypto: testmgr - Switch to new AEAD interface Herbert Xu
                   ` (9 more replies)
  0 siblings, 10 replies; 97+ messages in thread
From: Herbert Xu @ 2015-05-21 10:39 UTC (permalink / raw)
  To: Linux Crypto Mailing List, netdev, David S. Miller,
	Johannes Berg, Marcel Holtmann, Steffen Klassert

Hi:

This series of patches convert all in-tree AEAD users that I
could find to the new single SG list interface.  For IPsec it
also adopts the new explicit IV generator scheme.

To recap, the old AEAD interface takes an associated data (AD)
SG list in addition to the plain/cipher text SG list(s).  That
forces the underlying AEAD algorithm implementors to try to stitch
those two lists together where possible in order to maximise the
contiguous chunk of memory passed to the ICV/hash function.  Things
get even more hairy for IPsec as it has a third piece of memory,
the generated IV (giv) that needs to be hashed.  One look at the
nasty things authenc does for example is enough to make anyone
puke :)

In fact the interface is just getting in our way because for the
main user IPsec the data is naturally contiguous as the protocol
was designed with this in mind.

So the new AEAD interface gets rid of the separate AD SG list
and instead simply requires the AD to be at the head of the src
and dst SG lists.  There is further provision for optional space
between the AD and the plain/cipher text for ease of implementation.

The conversion of in-tree users is fairly straightforward.  The
only non-trivial bit is IPsec as I'm taking this opportunity to
move the IV generation knowledge into IPsec as that's where it
belongs since we may in future wish to support different generation
schemes for a single algorithm.

As this depends on patches that have not hit mainline yet please
do not apply them.

Cheers,
-- 
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

^ permalink raw reply	[flat|nested] 97+ messages in thread

end of thread, other threads:[~2015-06-07  7:06 UTC | newest]

Thread overview: 97+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-21 10:39 [PATCH 0/7] crypto: Convert all AEAD users to new interface Herbert Xu
2015-05-21 10:43 ` [PATCH 1/7] crypto: testmgr - Switch to new AEAD interface Herbert Xu
2015-05-21 10:43 ` [PATCH 2/7] xfrm: Add IV generator information to xfrm_algo_desc Herbert Xu
2015-05-21 10:43 ` [PATCH 3/7] ipsec: Add IV generator information to xfrm_state Herbert Xu
2015-05-21 10:43 ` [PATCH 4/7] esp4: Switch to new AEAD interface Herbert Xu
2015-05-21 10:44 ` [PATCH 5/7] esp6: " Herbert Xu
2015-05-22  6:40   ` Stephan Mueller
2015-05-22  6:45     ` Herbert Xu
2015-05-22  7:16       ` Stephan Mueller
2015-05-22  7:19         ` Herbert Xu
2015-05-26  6:39           ` Stephan Mueller
2015-05-26  7:02             ` Stephan Mueller
2015-05-26  7:21             ` Herbert Xu
2015-05-26  7:37               ` Stephan Mueller
2015-05-26  7:38                 ` Herbert Xu
2015-05-26  7:40                   ` Herbert Xu
2015-05-26  7:56                   ` Stephan Mueller
2015-05-26  7:57                     ` Herbert Xu
2015-05-26  8:15                       ` Stephan Mueller
2015-05-26  8:18                         ` Herbert Xu
2015-05-26  8:27                           ` Stephan Mueller
2015-05-21 10:44 ` [PATCH 6/7] mac802154: " Herbert Xu
2015-05-21 10:44 ` [PATCH 7/7] mac80211: " Herbert Xu
2015-05-21 11:20   ` Johannes Berg
2015-05-21 11:50     ` Herbert Xu
2015-05-21 12:17       ` Johannes Berg
2015-05-22  4:11         ` Herbert Xu
2015-06-01 13:21     ` Stephan Mueller
2015-06-01 13:42       ` Johannes Berg
2015-06-01 13:49         ` Stephan Mueller
2015-06-01 14:05           ` Johannes Berg
2015-06-01 14:35             ` Johannes Berg
2015-06-01 15:36               ` Stephan Mueller
2015-06-01 15:36                 ` Stephan Mueller
2015-06-02  9:15                 ` Jouni Malinen
2015-06-02  9:15                   ` Jouni Malinen
2015-05-22  7:32   ` Johannes Berg
2015-05-22  7:41     ` Herbert Xu
2015-05-22  7:43       ` Johannes Berg
2015-05-22  8:05         ` Herbert Xu
2015-05-22  8:18           ` Johannes Berg
2015-05-22  8:19             ` Herbert Xu
2015-05-21 12:29 ` [PATCH 0/7] crypto: Convert all AEAD users to new interface Stephan Mueller
2015-05-22  0:18   ` Herbert Xu
2015-05-21 16:03 ` David Miller
2015-05-22  0:21   ` Herbert Xu
2015-05-22  8:27 ` [v2 PATCH 0/13] " Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 1/13] crypto: aead - Add crypto_aead_alg_ivsize/maxauthsize Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 2/13] crypto: seqiv - Use aead_register_instance Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 3/13] crypto: echainiv " Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 4/13] crypto: aead - Do not set cra_type for new style instances Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 5/13] crypto: testmgr - Switch to new AEAD interface Herbert Xu
2015-06-04 22:15     ` Tadeusz Struk
2015-06-05  3:57       ` Herbert Xu
2015-06-05 22:10         ` Tadeusz Struk
2015-06-07  7:06           ` Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 6/13] xfrm: Add IV generator information to xfrm_algo_desc Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 7/13] ipsec: Add IV generator information to xfrm_state Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 8/13] esp4: Switch to new AEAD interface Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 9/13] esp6: " Herbert Xu
2015-05-22  8:30   ` [v2 PATCH 10/13] mac802154: " Herbert Xu
2015-05-22  8:31   ` [v2 PATCH 11/13] mac80211: " Herbert Xu
2015-05-22  8:31   ` [v2 PATCH 12/13] crypto: tcrypt - " Herbert Xu
2015-05-22  8:31   ` [v2 PATCH 13/13] crypto: algif_aead " Herbert Xu
2015-05-22 20:59     ` Stephan Mueller
2015-05-22 21:04       ` Stephan Mueller
2015-05-22 21:54         ` [PATCH 0/2] crypto: Use tmpl->create when registering geniv Herbert Xu
2015-05-22 21:58         ` [v2 PATCH 13/13] crypto: algif_aead - Switch to new AEAD interface Herbert Xu
2015-05-23 18:04           ` Stephan Mueller
2015-05-23 18:04     ` Stephan Mueller
2015-05-24  3:34       ` Herbert Xu
2015-05-24 10:52         ` Stephan Mueller
2015-05-25 10:20           ` Herbert Xu
2015-05-25 11:50             ` Stephan Mueller
2015-05-25 11:53               ` Herbert Xu
2015-05-26  6:24                 ` Herbert Xu
2015-05-26  6:44                   ` Stephan Mueller
2015-05-26  7:36                     ` Herbert Xu
2015-05-26  7:57                       ` Stephan Mueller
2015-05-26  7:58                         ` Herbert Xu
2015-05-27  8:01   ` [v3 PATCH 0/8] crypto: Convert all AEAD users to new interface Herbert Xu
2015-05-27  8:03     ` [v3 PATCH 1/8] crypto: testmgr - Switch to new AEAD interface Herbert Xu
2015-05-27  8:03     ` [v3 PATCH 2/8] xfrm: Add IV generator information to xfrm_algo_desc Herbert Xu
2015-05-27  8:03     ` [v3 PATCH 3/8] ipsec: Add IV generator information to xfrm_state Herbert Xu
2015-05-27  8:03     ` [v3 PATCH 4/8] esp4: Switch to new AEAD interface Herbert Xu
2015-05-27  8:03     ` [v3 PATCH 5/8] esp6: " Herbert Xu
2015-05-27  8:03     ` [v3 PATCH 6/8] mac802154: " Herbert Xu
2015-05-27  8:03     ` [v3 PATCH 7/8] mac80211: " Herbert Xu
2015-05-27  8:03     ` [v3 PATCH 8/8] crypto: tcrypt - " Herbert Xu
2015-05-27  8:15     ` [v3 PATCH 0/8] crypto: Convert all AEAD users to new interface Johannes Berg
2015-05-27  8:39       ` Herbert Xu
2015-05-27  9:00         ` Johannes Berg
2015-05-27  9:07           ` Herbert Xu
2015-05-27  9:18             ` Johannes Berg
2015-05-27  9:25     ` Steffen Klassert
2015-05-27  9:29       ` Herbert Xu
2015-05-27  9:32         ` Steffen Klassert

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.