Received: by 2002:a05:6500:1b8f:b0:1fa:5c73:8e2d with SMTP id df15csp295972lqb; Tue, 28 May 2024 16:21:29 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVshRQkO30dxq4OIKtZDGhO8nQQBJ6B85WZY9TBGM1NjKG9Nv/jxPiI0OSyEbwAAUyFkOvt46vq+mvoWMaZIJ0HeshFJSqJ0XhzLzwbbQ== X-Google-Smtp-Source: AGHT+IGUsGKKDvl857RNSSsptKZptvM8JH4o4vLXwbTPGPeaHomlqLEMt0OUA9V2BSa/OatiCDyi X-Received: by 2002:a25:d895:0:b0:dfa:4746:dc19 with SMTP id 3f1490d57ef6-dfa4746df3amr428686276.51.1716938488906; Tue, 28 May 2024 16:21:28 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1716938488; cv=pass; d=google.com; s=arc-20160816; b=svhLP82iE8DOcWRN4V3yJIOpDEjpgKO0JUKilFEXRYTKIsEov+0kPwZmbGr8jEZPZ1 iMDjarOiifJhPAPjw1fs+3wt0J0/KmOwdKEEXoLZ6luZF2ayJJM42+9I1CpmgIXjsGlW 3pFeSREBFs9zxP3uTxvH937JZGLaVH7vqv3zEcKwy08f8V9j5mnaGNmk36bpPjW7mHoh 8n+Or5j6QDCoktaAQxvHnhaogO6McAE3iXOAipc/3UqXiKnlAiNFLL5LEdbOQ4MgvVms NCQNf7Vjql7/+00kcc0R1jv9WkjoifabUyjGIrIDDGkeViXcrXli5wySMoiZE8r+ob9C 2+IQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:date:message-id:dkim-signature; bh=UECEOXZUODNQWxGmp7QlJ9QXvMbeAl1iWJQXorr2fdg=; fh=wOftXNBnahHu3Ekh4xePJ9P1cyxC7akihdlotLecEy0=; b=GkzIyvEtmo7IRrQr/7Zp9+kWDhBsnyhPdSLAsAqThw7fqcM/ZNs/DRFND4VmYaTMvt mdpiHl8WTFEhm4u++hmlf/lUulAtQUKV8a8CPDMKqRcfbLB3JXYm7gRMuRI7wMlYtAXs 1NB1q+hbl6z30ozIS/hWTzm8IbBodJN78I+EmG2da7lqEMJQZ7wlCxeuQ7MyNrKgHGe3 G7hByG15RCuhR+2+5m+bqy7oWPg0LEpiqr+DZRue9ugh7BTgFfLS2v7xT+W8Wd35wkz9 dV8B+DKfx14DxM7VpT4VKAUoE96Prr0nvDW9OmhoXHoap3sjyzWa4tHvGi4hXTPcp2YP 80yw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@ibm.com header.s=pp1 header.b=SPxm7FC4; arc=pass (i=1 spf=pass spfdomain=linux.ibm.com dkim=pass dkdomain=ibm.com dmarc=pass fromdomain=linux.ibm.com); spf=pass (google.com: domain of linux-crypto+bounces-4485-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-crypto+bounces-4485-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [147.75.199.223]) by mx.google.com with ESMTPS id 6a1803df08f44-6ac162b4cb5si114540136d6.456.2024.05.28.16.21.28 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 May 2024 16:21:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto+bounces-4485-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) client-ip=147.75.199.223; Authentication-Results: mx.google.com; dkim=pass header.i=@ibm.com header.s=pp1 header.b=SPxm7FC4; arc=pass (i=1 spf=pass spfdomain=linux.ibm.com dkim=pass dkdomain=ibm.com dmarc=pass fromdomain=linux.ibm.com); spf=pass (google.com: domain of linux-crypto+bounces-4485-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-crypto+bounces-4485-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=NONE dis=NONE) header.from=ibm.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 890AD1C2449F for ; Tue, 28 May 2024 23:21:28 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 7195013F006; Tue, 28 May 2024 23:21:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="SPxm7FC4" X-Original-To: linux-crypto@vger.kernel.org Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3EF4E13E032; Tue, 28 May 2024 23:21:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.158.5 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716938481; cv=none; b=BUnKG8RQqJJSU1MNUVlaZWgwMhx5eNkAJ5GJUqDg1PmLy+V+cwKFcDNqKGDiUbyA2rxUFL76HvUNNI52GS/o+2ARkYQKOJzKy+d2SQw8UlvkJ/aMZV+bKKHnpvNLm1K/nT7iv3FpJ67qNDwmEoTR3ifAd0fuwq9ziZyKJj8BQ0I= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716938481; c=relaxed/simple; bh=pavINxNQb0wpTkr0z/OU1wApUVEUvATkfET9/xJlDHc=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=WZ1enGM6LoUQDLbZuRYZ1v866nOx2o4iG4LJjlWxSjyU0/5Eyjnd1SWqeQg5J1fMdNWNaQb8Pm+3nKpzpj6OEl8INvwiTqm+d1vgs2JQ+N53jaY8+YfWvMmy8HvWPDq+wwaPFrmfo3/6kF+IoKZ625u6n903uZYt9LnjcjMmmEE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=SPxm7FC4; arc=none smtp.client-ip=148.163.158.5 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Received: from pps.filterd (m0353722.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44SN6IkP025924; Tue, 28 May 2024 23:21:03 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc : content-transfer-encoding : content-type : date : from : in-reply-to : message-id : mime-version : references : subject : to; s=pp1; bh=UECEOXZUODNQWxGmp7QlJ9QXvMbeAl1iWJQXorr2fdg=; b=SPxm7FC4PyGTaxQrodBSblks07quArUTtu56sF2DDe4rACBPIgTVJWx6r+LQkFqFNglR ABQGiIotKMUy/m01ZYkpI0rak+QVdbmavfv6JHCk29u9Wi5pot0o/Ua7OifgRiGIC0Tp NqIZgyKNRMn8jtGuKTZTRy6M064H0okYL9Xn1v1wWfT5QIMGmZQOyXbEor3S6vIDa56F QopZwBwqrMbvONCZvVvDANjDTavOX8+oiHpmXMBQVsTzvX8BBn02dKj75C2nLH+dTgTH nzraYzTkfug5ZXP65HkI5MrDyYsXroiL6vv+Ao5dsfX6CRD6LY3ZFBUkUPQ1Yv9j8V4e mw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3ydra601sg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 28 May 2024 23:21:02 +0000 Received: from m0353722.ppops.net (m0353722.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 44SNL2q7015042; Tue, 28 May 2024 23:21:02 GMT Received: from ppma12.dal12v.mail.ibm.com (dc.9e.1632.ip4.static.sl-reverse.com [50.22.158.220]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3ydra601se-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 28 May 2024 23:21:02 +0000 Received: from pps.filterd (ppma12.dal12v.mail.ibm.com [127.0.0.1]) by ppma12.dal12v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 44SKWI8Y026795; Tue, 28 May 2024 23:21:01 GMT Received: from smtprelay05.dal12v.mail.ibm.com ([172.16.1.7]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 3ydpd2gn8g-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 28 May 2024 23:21:01 +0000 Received: from smtpav01.wdc07v.mail.ibm.com (smtpav01.wdc07v.mail.ibm.com [10.39.53.228]) by smtprelay05.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 44SNKwYV46399838 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 23:21:01 GMT Received: from smtpav01.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B26775804B; Tue, 28 May 2024 23:20:58 +0000 (GMT) Received: from smtpav01.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 681E958055; Tue, 28 May 2024 23:20:57 +0000 (GMT) Received: from [9.47.158.152] (unknown [9.47.158.152]) by smtpav01.wdc07v.mail.ibm.com (Postfix) with ESMTP; Tue, 28 May 2024 23:20:57 +0000 (GMT) Message-ID: <12cc5fd9-6537-4a0b-b7d9-1221da3bf9f7@linux.ibm.com> Date: Tue, 28 May 2024 19:20:56 -0400 Precedence: bulk X-Mailing-List: linux-crypto@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v7 1/5] crypto: rsa-pkcs1pad: export rsa1_asn_lookup() To: Jarkko Sakkinen , Herbert Xu Cc: linux-integrity@vger.kernel.org, keyrings@vger.kernel.org, Andreas.Fuchs@infineon.com, James Prestwood , David Woodhouse , Eric Biggers , James Bottomley , linux-crypto@vger.kernel.org, Lennart Poettering , "David S. Miller" , open list References: <20240528210823.28798-1-jarkko@kernel.org> <20240528210823.28798-2-jarkko@kernel.org> Content-Language: en-US From: Stefan Berger In-Reply-To: <20240528210823.28798-2-jarkko@kernel.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: 1vI7w9ooeitD5nv9F-JsXpWJtJsmzusW X-Proofpoint-GUID: n_x_kn-cLPZDHQ4nzJ8O-lyNP5E27KxR X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-28_14,2024-05-28_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 mlxlogscore=999 lowpriorityscore=0 malwarescore=0 spamscore=0 adultscore=0 impostorscore=0 suspectscore=0 bulkscore=0 clxscore=1015 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280172 On 5/28/24 17:08, Jarkko Sakkinen wrote: > ASN.1 template is required for TPM2 asymmetric keys, as it needs to be > piggy-packed with the input data before applying TPM2_RSA_Decrypt. This piggy-backed > patch prepares crypto subsystem for the addition of those keys. > > Signed-off-by: Jarkko Sakkinen Reviewed-by: Stefan Berger > --- > crypto/rsa-pkcs1pad.c | 16 ++++++++++------ > include/crypto/rsa-pkcs1pad.h | 20 ++++++++++++++++++++ > 2 files changed, 30 insertions(+), 6 deletions(-) > create mode 100644 include/crypto/rsa-pkcs1pad.h > > diff --git a/crypto/rsa-pkcs1pad.c b/crypto/rsa-pkcs1pad.c > index cd501195f34a..00b6c14f861c 100644 > --- a/crypto/rsa-pkcs1pad.c > +++ b/crypto/rsa-pkcs1pad.c > @@ -7,6 +7,7 @@ > > #include > #include > +#include > #include > #include > #include > @@ -79,11 +80,7 @@ static const u8 rsa_digest_info_sha3_512[] = { > 0x05, 0x00, 0x04, 0x40 > }; > > -static const struct rsa_asn1_template { > - const char *name; > - const u8 *data; > - size_t size; > -} rsa_asn1_templates[] = { > +static const struct rsa_asn1_template rsa_asn1_templates[] = { > #define _(X) { #X, rsa_digest_info_##X, sizeof(rsa_digest_info_##X) } > _(md5), > _(sha1), > @@ -101,7 +98,13 @@ static const struct rsa_asn1_template { > { NULL } > }; > > -static const struct rsa_asn1_template *rsa_lookup_asn1(const char *name) > +/** > + * rsa_lookup_asn1() - Lookup the ASN.1 digest info given the hash > + * name: hash algorithm name > + * > + * Returns the ASN.1 digest info on success, and NULL on failure. > + */ > +const struct rsa_asn1_template *rsa_lookup_asn1(const char *name) > { > const struct rsa_asn1_template *p; > > @@ -110,6 +113,7 @@ static const struct rsa_asn1_template *rsa_lookup_asn1(const char *name) > return p; > return NULL; > } > +EXPORT_SYMBOL_GPL(rsa_lookup_asn1); > > struct pkcs1pad_ctx { > struct crypto_akcipher *child; > diff --git a/include/crypto/rsa-pkcs1pad.h b/include/crypto/rsa-pkcs1pad.h > new file mode 100644 > index 000000000000..32c7453ff644 > --- /dev/null > +++ b/include/crypto/rsa-pkcs1pad.h > @@ -0,0 +1,20 @@ > +/* SPDX-License-Identifier: GPL-2.0 */ > +/* > + * RSA padding templates. > + */ > + > +#ifndef _CRYPTO_RSA_PKCS1PAD_H > +#define _CRYPTO_RSA_PKCS1PAD_H > + > +/* > + * Hash algorithm name to ASN.1 template mapping. > + */ > +struct rsa_asn1_template { > + const char *name; > + const u8 *data; > + size_t size; > +}; > + > +const struct rsa_asn1_template *rsa_lookup_asn1(const char *name); > + > +#endif /* _CRYPTO_RSA_PKCS1PAD_H */