Features
   * Added PSA_ALG_AEAD_WITH_MINIMUM_LENGTH_TAG and
     PSA_ALG_MAC_WITH_MINIMUM_LENGTH_TAG as wildcard algorithms in PSA Crypto.
     These algorithm values describe that a key is allowed to be used with any
     algorithm that matches the specified base algorithm (e.g PSA_ALG_CCM for
     AEAD or PSA_ALG_CMAC for MAC) and has a tag/MAC length which is at least as
     long as the one encoded in the MINIMUM_TAG_LENGTH wildcard algorithm.
