2021-06-24 09:47:45

by Tianjia Zhang

[permalink] [raw]
Subject: [PATCH v3] pkcs7: make parser enable SM2 and SM3 algorithms combination

Support parsing the message signature of the SM2 and SM3 algorithm
combination. This group of algorithms has been well supported. One
of the main users is module signature verification.

Signed-off-by: Tianjia Zhang <[email protected]>
---
crypto/asymmetric_keys/pkcs7_parser.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/crypto/asymmetric_keys/pkcs7_parser.c b/crypto/asymmetric_keys/pkcs7_parser.c
index 967329e0a07b..6cf6c4552c11 100644
--- a/crypto/asymmetric_keys/pkcs7_parser.c
+++ b/crypto/asymmetric_keys/pkcs7_parser.c
@@ -248,6 +248,9 @@ int pkcs7_sig_note_digest_algo(void *context, size_t hdrlen,
case OID_sha224:
ctx->sinfo->sig->hash_algo = "sha224";
break;
+ case OID_sm3:
+ ctx->sinfo->sig->hash_algo = "sm3";
+ break;
default:
printk("Unsupported digest algo: %u\n", ctx->last_oid);
return -ENOPKG;
@@ -269,6 +272,10 @@ int pkcs7_sig_note_pkey_algo(void *context, size_t hdrlen,
ctx->sinfo->sig->pkey_algo = "rsa";
ctx->sinfo->sig->encoding = "pkcs1";
break;
+ case OID_SM2_with_SM3:
+ ctx->sinfo->sig->pkey_algo = "sm2";
+ ctx->sinfo->sig->encoding = "raw";
+ break;
default:
printk("Unsupported pkey algo: %u\n", ctx->last_oid);
return -ENOPKG;
--
2.19.1.3.ge56e4f7


2021-07-02 15:13:13

by Vitaly Chikunov

[permalink] [raw]
Subject: Re: [PATCH v3] pkcs7: make parser enable SM2 and SM3 algorithms combination

On Thu, Jun 24, 2021 at 05:47:05PM +0800, Tianjia Zhang wrote:
> Support parsing the message signature of the SM2 and SM3 algorithm
> combination. This group of algorithms has been well supported. One
> of the main users is module signature verification.
>
> Signed-off-by: Tianjia Zhang <[email protected]>

This will conflict with the patch of Elvira Khabirova adding the same
for streebog/ecrdsa. Otherwise,

Reviewed-by: Vitaly Chikunov <[email protected]>

Thanks,

> ---
> crypto/asymmetric_keys/pkcs7_parser.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/crypto/asymmetric_keys/pkcs7_parser.c b/crypto/asymmetric_keys/pkcs7_parser.c
> index 967329e0a07b..6cf6c4552c11 100644
> --- a/crypto/asymmetric_keys/pkcs7_parser.c
> +++ b/crypto/asymmetric_keys/pkcs7_parser.c
> @@ -248,6 +248,9 @@ int pkcs7_sig_note_digest_algo(void *context, size_t hdrlen,
> case OID_sha224:
> ctx->sinfo->sig->hash_algo = "sha224";
> break;
> + case OID_sm3:
> + ctx->sinfo->sig->hash_algo = "sm3";
> + break;
> default:
> printk("Unsupported digest algo: %u\n", ctx->last_oid);
> return -ENOPKG;
> @@ -269,6 +272,10 @@ int pkcs7_sig_note_pkey_algo(void *context, size_t hdrlen,
> ctx->sinfo->sig->pkey_algo = "rsa";
> ctx->sinfo->sig->encoding = "pkcs1";
> break;
> + case OID_SM2_with_SM3:
> + ctx->sinfo->sig->pkey_algo = "sm2";
> + ctx->sinfo->sig->encoding = "raw";
> + break;
> default:
> printk("Unsupported pkey algo: %u\n", ctx->last_oid);
> return -ENOPKG;
> --
> 2.19.1.3.ge56e4f7

2021-07-03 01:45:15

by Tianjia Zhang

[permalink] [raw]
Subject: Re: [PATCH v3] pkcs7: make parser enable SM2 and SM3 algorithms combination



On 7/2/21 10:39 PM, Vitaly Chikunov wrote:
> On Thu, Jun 24, 2021 at 05:47:05PM +0800, Tianjia Zhang wrote:
>> Support parsing the message signature of the SM2 and SM3 algorithm
>> combination. This group of algorithms has been well supported. One
>> of the main users is module signature verification.
>>
>> Signed-off-by: Tianjia Zhang <[email protected]>
>
> This will conflict with the patch of Elvira Khabirova adding the same
> for streebog/ecrdsa. Otherwise,
>
> Reviewed-by: Vitaly Chikunov <[email protected]>
>
> Thanks,
>

Thanks, I just saw it, I will contact Elvira Khabirova to consider
whether it can be combined into a series of patches, and then resend.

Cheers,
Tianjia

2021-07-08 22:31:01

by Stefan Berger

[permalink] [raw]
Subject: Re: [PATCH v3] pkcs7: make parser enable SM2 and SM3 algorithms combination


On 6/24/21 5:47 AM, Tianjia Zhang wrote:
> Support parsing the message signature of the SM2 and SM3 algorithm
> combination. This group of algorithms has been well supported. One
> of the main users is module signature verification.
>
> Signed-off-by: Tianjia Zhang <[email protected]>
> ---
> crypto/asymmetric_keys/pkcs7_parser.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/crypto/asymmetric_keys/pkcs7_parser.c b/crypto/asymmetric_keys/pkcs7_parser.c
> index 967329e0a07b..6cf6c4552c11 100644
> --- a/crypto/asymmetric_keys/pkcs7_parser.c
> +++ b/crypto/asymmetric_keys/pkcs7_parser.c
> @@ -248,6 +248,9 @@ int pkcs7_sig_note_digest_algo(void *context, size_t hdrlen,
> case OID_sha224:
> ctx->sinfo->sig->hash_algo = "sha224";
> break;
> + case OID_sm3:
> + ctx->sinfo->sig->hash_algo = "sm3";
> + break;
> default:
> printk("Unsupported digest algo: %u\n", ctx->last_oid);
> return -ENOPKG;
> @@ -269,6 +272,10 @@ int pkcs7_sig_note_pkey_algo(void *context, size_t hdrlen,
> ctx->sinfo->sig->pkey_algo = "rsa";
> ctx->sinfo->sig->encoding = "pkcs1";
> break;
> + case OID_SM2_with_SM3:
> + ctx->sinfo->sig->pkey_algo = "sm2";
> + ctx->sinfo->sig->encoding = "raw";
> + break;
> default:
> printk("Unsupported pkey algo: %u\n", ctx->last_oid);
> return -ENOPKG;


Reviewed-by: Stefan Berger <[email protected]>


2021-09-18 12:10:53

by Tianjia Zhang

[permalink] [raw]
Subject: Re: [PATCH v3] pkcs7: make parser enable SM2 and SM3 algorithms combination

ping.

On 6/24/21 5:47 PM, Tianjia Zhang wrote:
> Support parsing the message signature of the SM2 and SM3 algorithm
> combination. This group of algorithms has been well supported. One
> of the main users is module signature verification.
>
> Signed-off-by: Tianjia Zhang <[email protected]>
> ---
> crypto/asymmetric_keys/pkcs7_parser.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/crypto/asymmetric_keys/pkcs7_parser.c b/crypto/asymmetric_keys/pkcs7_parser.c
> index 967329e0a07b..6cf6c4552c11 100644
> --- a/crypto/asymmetric_keys/pkcs7_parser.c
> +++ b/crypto/asymmetric_keys/pkcs7_parser.c
> @@ -248,6 +248,9 @@ int pkcs7_sig_note_digest_algo(void *context, size_t hdrlen,
> case OID_sha224:
> ctx->sinfo->sig->hash_algo = "sha224";
> break;
> + case OID_sm3:
> + ctx->sinfo->sig->hash_algo = "sm3";
> + break;
> default:
> printk("Unsupported digest algo: %u\n", ctx->last_oid);
> return -ENOPKG;
> @@ -269,6 +272,10 @@ int pkcs7_sig_note_pkey_algo(void *context, size_t hdrlen,
> ctx->sinfo->sig->pkey_algo = "rsa";
> ctx->sinfo->sig->encoding = "pkcs1";
> break;
> + case OID_SM2_with_SM3:
> + ctx->sinfo->sig->pkey_algo = "sm2";
> + ctx->sinfo->sig->encoding = "raw";
> + break;
> default:
> printk("Unsupported pkey algo: %u\n", ctx->last_oid);
> return -ENOPKG;
>

2021-09-21 21:30:23

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH v3] pkcs7: make parser enable SM2 and SM3 algorithms combination

On Sat, 2021-09-18 at 10:25 +0800, Tianjia Zhang wrote:
> ping.
>
> On 6/24/21 5:47 PM, Tianjia Zhang wrote:
> > Support parsing the message signature of the SM2 and SM3 algorithm
> > combination. This group of algorithms has been well supported. One
> > of the main users is module signature verification.
> >
> > Signed-off-by: Tianjia Zhang <[email protected]>
> > ---
> > crypto/asymmetric_keys/pkcs7_parser.c | 7 +++++++
> > 1 file changed, 7 insertions(+)
> >
> > diff --git a/crypto/asymmetric_keys/pkcs7_parser.c b/crypto/asymmetric_keys/pkcs7_parser.c
> > index 967329e0a07b..6cf6c4552c11 100644
> > --- a/crypto/asymmetric_keys/pkcs7_parser.c
> > +++ b/crypto/asymmetric_keys/pkcs7_parser.c
> > @@ -248,6 +248,9 @@ int pkcs7_sig_note_digest_algo(void *context, size_t hdrlen,
> > case OID_sha224:
> > ctx->sinfo->sig->hash_algo = "sha224";
> > break;
> > + case OID_sm3:
> > + ctx->sinfo->sig->hash_algo = "sm3";
> > + break;
> > default:
> > printk("Unsupported digest algo: %u\n", ctx->last_oid);
> > return -ENOPKG;
> > @@ -269,6 +272,10 @@ int pkcs7_sig_note_pkey_algo(void *context, size_t hdrlen,
> > ctx->sinfo->sig->pkey_algo = "rsa";
> > ctx->sinfo->sig->encoding = "pkcs1";
> > break;
> > + case OID_SM2_with_SM3:
> > + ctx->sinfo->sig->pkey_algo = "sm2";
> > + ctx->sinfo->sig->encoding = "raw";
> > + break;
> > default:
> > printk("Unsupported pkey algo: %u\n", ctx->last_oid);
> > return -ENOPKG;
> >

Acked-by: Jarkko Sakkinen <[email protected]>

/Jarkko