OSDN Git Service

crypto: qat - validate xts key
authorGiovanni Cabiddu <giovanni.cabiddu@intel.com>
Mon, 29 Jun 2020 17:16:18 +0000 (18:16 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 9 Jul 2020 08:25:15 +0000 (18:25 +1000)
Validate AES-XTS key using the function xts_verify_key() to prevent
malformed keys.

Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/qat/qat_common/qat_algs.c

index 6bea6f8..11f36ea 100644 (file)
@@ -995,6 +995,12 @@ static int qat_alg_skcipher_ctr_setkey(struct crypto_skcipher *tfm,
 static int qat_alg_skcipher_xts_setkey(struct crypto_skcipher *tfm,
                                       const u8 *key, unsigned int keylen)
 {
+       int ret;
+
+       ret = xts_verify_key(tfm, key, keylen);
+       if (ret)
+               return ret;
+
        return qat_alg_skcipher_setkey(tfm, key, keylen,
                                       ICP_QAT_HW_CIPHER_XTS_MODE);
 }