Lines Matching +full:multi +full:- +full:block
5 --------------------------------------------
14 filled with each, struct crypto_alg, must be considered -- see below
47 Single-Block Symmetric Ciphers [CIPHER]
48 ---------------------------------------
55 block at a time and there are no dependencies between blocks at all.
69 Struct cipher_alg defines a single block cipher.
74 during any of these are in-flight.
78 KEY ---. PLAINTEXT ---.
80 .cia_setkey() -> .cia_encrypt()
82 '-----> CIPHERTEXT
91 KEY1 --. PLAINTEXT1 --. KEY2 --. PLAINTEXT2 --.
93 .cia_setkey() -> .cia_encrypt() -> .cia_setkey() -> .cia_encrypt()
95 '---> CIPHERTEXT1 '---> CIPHERTEXT2
98 Multi-Block Ciphers
99 -------------------
103 This section describes the multi-block cipher transformation
104 implementations. The multi-block ciphers are used for transformations
111 The registration of multi-block cipher algorithms is one of the most
124 Struct skcipher_alg defines a multi-block cipher, or more generally, a
125 length-preserving symmetric cipher algorithm.
137 --------------
174 during any of these are in-flight. Please note that calling .init()
180 I) DATA -----------.
182 .init() -> .update() -> .final() ! .update() might not be called
184 '----' '---> HASH
186 II) DATA -----------.-----------.
188 .init() -> .update() -> .finup() ! .update() may not be called
190 '----' '---> HASH
192 III) DATA -----------.
196 '---------------> HASH
204 KEY--. DATA--.
206 .setkey() -> .init() -> .update() -> .export() at all in this scenario.
208 '-----' '--> PARTIAL_HASH
210 ----------- other transformations happen here -----------
212 PARTIAL_HASH--. DATA1--.
214 .import -> .update() -> .final() ! .update() may not be called
216 '----' '--> HASH1
218 PARTIAL_HASH--. DATA2-.
220 .import -> .finup()
222 '---------------> HASH2
225 - call .init() and then (as many times) .update()
226 - _not_ call any of .final(), .finup() or .export() at any point in future
228 In other words implementations should mind the resource allocation and clean-up.