Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp2773900pxv; Mon, 12 Jul 2021 01:20:47 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzEYklAGCVM44H8sPMZnbAEb/XIZOlVDymCdxz1ciNCAbAu7PBwB1PVEOZu9MrdIm+c6Keh X-Received: by 2002:a05:6402:2789:: with SMTP id b9mr28510456ede.201.1626078047439; Mon, 12 Jul 2021 01:20:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626078047; cv=none; d=google.com; s=arc-20160816; b=ElvHG6m1MHZDM4DvSvWVisrAt3GrqarGQmYvwzuwtRAQrqYV31xP5y1GP8lnwXpkAR aMcgO10jPWAno2ozqh/o+tw8hv2rWbf2cJm53tav12pP4/XuBd3NmEoVDHfGkgUU/Tyv Tvkwpmmhe1UAss2jS70HkqbqWW5zUkjRJ+G7AnHVvPBkhHYQROo8HMhltS8Xf6HL/PTL Z2GSaIJR4TAg6c9GjEPtA9DYLnAIqXf0u7uaFZjh91UIM/8WoyUVF9hBaL/5iZriXFmX inR1IcuZFbfSajGbiifgZU6cPDJrhSJYOfG97pPfK5H/lw0KaU48EXOUVbXdd84ndjlj FaBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=nf5rOyjFxWHhP0L9UPw+glDet9dFwjQ1Tzhv7houBU4=; b=TrrtMEIUlIHbSf17vb0+Pq1DoMmmwH3n127hySXOYH1qi0g01nslR43e8LrPXBPjtG l6PRKOiVGSidIxLHxn4SEGccOqYSay7aAgmK5OTnUhKDvW8OkWa7v48LzVkcbPQDF4bH vuEjY3qF0WH9WRlhqBxhNBYRTw7eo3fwUa5vPhxJMVS+HCptKfFMSnq9QCavOSzfW7pW ysWzGUMP1gXOjpdNhGwohjKbGmzDbHHuIkPNA5b+bbRGh49SFpymXXZJsLQrk1xzZKcp l5MJWvdL5nRKzLhGRZ7A/5FF+k1b9tzshM4Yc6NVDHSEf4vloO8sP8h7kO30HVIKf+b+ 2riA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m19si15470612eje.174.2021.07.12.01.19.50; Mon, 12 Jul 2021 01:20:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1349159AbhGLISe (ORCPT + 99 others); Mon, 12 Jul 2021 04:18:34 -0400 Received: from out30-130.freemail.mail.aliyun.com ([115.124.30.130]:50900 "EHLO out30-130.freemail.mail.aliyun.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1356737AbhGLIQo (ORCPT ); Mon, 12 Jul 2021 04:16:44 -0400 X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R231e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=e01e04420;MF=tianjia.zhang@linux.alibaba.com;NM=1;PH=DS;RN=15;SR=0;TI=SMTPD_---0UfVJpuB_1626077632; Received: from localhost(mailfrom:tianjia.zhang@linux.alibaba.com fp:SMTPD_---0UfVJpuB_1626077632) by smtp.aliyun-inc.com(127.0.0.1); Mon, 12 Jul 2021 16:13:53 +0800 From: Tianjia Zhang To: David Howells , Herbert Xu , "David S. Miller" , Eric Biggers , Eric Biggers , Mimi Zohar , Vitaly Chikunov , "Gilad Ben-Yossef" , Pascal van Leeuwen , keyrings@vger.kernel.org, linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org, Jia Zhang , "YiLin . Li" Cc: Tianjia Zhang Subject: [PATCH] X.509: Support parsing certificate using SM2 algorithm Date: Mon, 12 Jul 2021 16:13:52 +0800 Message-Id: <20210712081352.23692-1-tianjia.zhang@linux.alibaba.com> X-Mailer: git-send-email 2.19.1.3.ge56e4f7 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org The SM2-with-SM3 certificate generated by latest openssl no longer reuses the OID_id_ecPublicKey, but directly uses OID_sm2. This patch supports this type of x509 certificate parsing. Signed-off-by: Tianjia Zhang --- crypto/asymmetric_keys/x509_cert_parser.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/crypto/asymmetric_keys/x509_cert_parser.c b/crypto/asymmetric_keys/x509_cert_parser.c index 6d003096b5bc..6a945a6ce787 100644 --- a/crypto/asymmetric_keys/x509_cert_parser.c +++ b/crypto/asymmetric_keys/x509_cert_parser.c @@ -496,6 +496,9 @@ int x509_extract_key_data(void *context, size_t hdrlen, case OID_gost2012PKey512: ctx->cert->pub->pkey_algo = "ecrdsa"; break; + case OID_sm2: + ctx->cert->pub->pkey_algo = "sm2"; + break; case OID_id_ecPublicKey: if (parse_OID(ctx->params, ctx->params_size, &oid) != 0) return -EBADMSG; -- 2.19.1.3.ge56e4f7