Lines Matching +full:x +full:- +full:powers
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
18 * struct polyval_elem - An element of the POLYVAL finite field
24 * convention: little-endian byte order and natural bit order.
37 * struct polyval_key - Prepared key for POLYVAL
40 * powers, depending on the platform's POLYVAL implementation. Use
43 * By H^i we mean H^(i-1) * H * x^-128, with base case H^1 = H. I.e. the
44 * exponentiation repeats the POLYVAL dot operation, with its "extra" x^-128.
49 /** @h_powers: Powers of the hash key H^8 through H^1 */
52 /** @h_powers: Powers of the hash key H^8 through H^1 */
64 * struct polyval_ctx - Context for computing a POLYVAL value
77 * polyval_preparekey() - Prepare a POLYVAL key
82 * copy, or it may involve precomputing powers of the key, depending on the
96 memcpy(key->h.bytes, raw_key, POLYVAL_BLOCK_SIZE); in polyval_preparekey()
101 * polyval_init() - Initialize a POLYVAL context for a new message
113 * polyval_import_blkaligned() - Import a POLYVAL accumulator value
131 * polyval_export_blkaligned() - Export a POLYVAL accumulator value
141 *acc = ctx->acc; in polyval_export_blkaligned()
145 * polyval_update() - Update a POLYVAL context with message data
148 * @len: The data length in bytes. Doesn't need to be block-aligned.
157 * polyval_final() - Finish computing a POLYVAL value
162 * final block is automatically zero-padded.
171 * polyval() - Compute a POLYVAL value
174 * @len: The data length in bytes. Doesn't need to be block-aligned.