Lines Matching full:mac
14 EVP_MAC_do_all_provided - EVP MAC routines
25 int EVP_MAC_up_ref(EVP_MAC *mac);
26 void EVP_MAC_free(EVP_MAC *mac);
27 int EVP_MAC_is_a(const EVP_MAC *mac, const char *name);
28 const char *EVP_MAC_get0_name(const EVP_MAC *mac);
29 int EVP_MAC_names_do_all(const EVP_MAC *mac,
32 const char *EVP_MAC_get0_description(const EVP_MAC *mac);
33 const OSSL_PROVIDER *EVP_MAC_get0_provider(const EVP_MAC *mac);
34 int EVP_MAC_get_params(EVP_MAC *mac, OSSL_PARAM params[]);
36 EVP_MAC_CTX *EVP_MAC_CTX_new(EVP_MAC *mac);
57 const OSSL_PARAM *EVP_MAC_gettable_params(const EVP_MAC *mac);
58 const OSSL_PARAM *EVP_MAC_gettable_ctx_params(const EVP_MAC *mac);
59 const OSSL_PARAM *EVP_MAC_settable_ctx_params(const EVP_MAC *mac);
64 void (*fn)(EVP_MAC *mac, void *arg),
76 the MAC algorithm itself and one for the underlying computation
80 "MAC context", which is to denote the MAC level context, and about a
86 B<EVP_MAC> is a type that holds the implementation of a MAC.
88 B<EVP_MAC_CTX> is a context type that holds internal MAC information
94 EVP_MAC_fetch() fetches an implementation of a MAC I<algorithm>, given
98 See L<OSSL_PROVIDER-default(7)/Message Authentication Code (MAC)> for the list
105 MAC.
112 EVP_MAC_CTX_new() creates a new context for the MAC type I<mac>.
130 using the MAC algorithm I<name> and the key I<key> with length I<keylen>.
131 The MAC algorithm is fetched using any given I<libctx> and property query
142 via the I<key> and I<params> arguments. The MAC I<key> has a length of
151 EVP_MAC_update() adds I<datalen> bytes from I<data> to the MAC input.
163 EVP_MAC_finalXOF() does the final computation for an XOF based MAC and stores
167 I<mac>.
210 EVP_MAC_CTX_get_mac_size() returns the MAC output size for the given context.
212 EVP_MAC_CTX_get_block_size() returns the MAC block size for the given context.
213 Not all MAC algorithms support this.
215 EVP_MAC_is_a() checks if the given I<mac> is an implementation of an
219 of the given I<mac>.
221 EVP_MAC_do_all_provided() traverses all MAC implemented by all activated
226 EVP_MAC_get0_name() return the name of the given MAC. For fetched MACs
230 EVP_MAC_names_do_all() traverses all names for I<mac>, and calls
233 EVP_MAC_get0_description() returns a description of the I<mac>, meant
235 of the mac implementation.
242 its own MAC implementations.
252 Its value is the MAC key as an array of bytes.
259 Some MAC implementations (GMAC) require an IV, this parameter sets the IV.
263 Some MAC implementations (KMAC, BLAKE2) accept a Customization String,
269 This option is used by BLAKE2 MAC.
279 A simple flag to set the MAC digest to not initialise the
286 A simple flag to set the MAC digest to be a oneshot operation.
297 For MAC implementations that use an underlying computation cipher or
309 For MAC implementations that support it, set the output size that
311 The allowed sizes vary between MAC implementations, but must never exceed
317 activated for calculating the MAC of a received mac-then-encrypt TLS record
320 having the MAC calculated including the received MAC and the record padding.
324 including the MAC itself and any padding. The entire record length must equal
327 record after the MAC and any padding has been removed.
338 The MAC life-cycle is described in L<life_cycle-mac(7)>. In the future,
360 EVP_MAC_get0_name() returns a name of the MAC, or NULL on error.
362 EVP_MAC_get0_provider() returns a pointer to the provider for the MAC, or
373 EVP_Q_mac() returns a pointer to the computed MAC value, or NULL on error.
399 EVP_MAC *mac = EVP_MAC_fetch(NULL, getenv("MY_MAC"), NULL);
422 if (mac == NULL
424 || (ctx = EVP_MAC_CTX_new(mac)) == NULL
443 EVP_MAC_free(mac);
448 EVP_MAC_free(mac);
475 L<provider-mac(7)>,
476 L<life_cycle-mac(7)>