Function desfire::kdf_an10922(crypto_2k3des_base&, mlab::bin_data&, std::uint8_t)

Function Documentation

key_body<16> desfire::kdf_an10922(crypto_2k3des_base &crypto, mlab::bin_data &diversify_input, std::uint8_t key_version)

Specialization of AN10922 KDF functions for a given cryptographic implementation.

These operate on a known subclass of crypto. For AES and 3K3DES, this saves the cost of deriving CMAC subkeys. For DES-derived ciphers, it is also possible to set the version of the key directly into the returned binary blob.

Parameters:
  • crypto – Cryptographic object on which the CMAC operation will be run.

  • diversify_input – Diversification input. At most 2 * BlockSize - 1 bytes wil be used. It will be modified by the operation.

  • key_version – Key version to set in the returned object.