Provided by: dpdk-doc_25.11-2_all bug

NAME

       rte_crypto_sm2_op_param

SYNOPSIS

       #include <rte_crypto_asym.h>

   Data Fields
       enum rte_crypto_asym_op_type op_type
       enum rte_crypto_auth_algorithm hash
       rte_crypto_param message
       rte_crypto_uint id
       rte_crypto_uint k
       rte_crypto_uint r
       rte_crypto_uint s

Detailed Description

       SM2 operation params.

       Definition at line 686 of file rte_crypto_asym.h.

Field Documentation

   enum rte_crypto_asym_op_type op_type
       Signature generation or verification.

       Definition at line 687 of file rte_crypto_asym.h.

   enum rte_crypto_auth_algorithm hash
       Hash algorithm used in EC op.

       Definition at line 690 of file rte_crypto_asym.h.

   rte_crypto_param message
       Pointer to input data

       • to be encrypted for SM2 public encrypt.

       • to be signed for SM2 sign generation.

       • to be authenticated for SM2 sign verification.

       Pointer to output data

       • for  SM2  private  decrypt.  In  this  case the underlying array should have been allocated with enough
         memory to hold plaintext output (at least encrypted text length).  The  message.length  field  will  be
         overwritten by the PMD with the decrypted length.

       Definition at line 693 of file rte_crypto_asym.h.

   rte_crypto_param cipher
       Pointer to input data

       • to be decrypted for SM2 private decrypt.

       Pointer to output data

       • for SM2 public encrypt. In this case the underlying array should have been allocated with enough memory
         to  hold  ciphertext output (at least X bytes for prime field curve of N bytes and for message M bytes,
         where X = (C1 || C2 || C3) and computed based on SM2 RFC as C1 (1 + N +  N),  C2  =  M,  C3  =  N.  The
         cipher.length field will be overwritten by the PMD with the encrypted length.

       Definition at line 709 of file rte_crypto_asym.h.

   struct rte_crypto_ec_point c1
       This  field is used only when PMD does not support the full process of the SM2 encryption/decryption, but
       the elliptic curve part only.

       In the case of encryption, it is an output - point C1 = (x1,y1). In the case  of  decryption,  if  is  an
       input - point C1 = (x1,y1).

       Must be used along with the RTE_CRYPTO_SM2_PARTIAL flag.

       Definition at line 724 of file rte_crypto_asym.h.

   struct rte_crypto_ec_point kp
       This  field is used only when PMD does not support the full process of the SM2 encryption/decryption, but
       the elliptic curve part only.

       It is an output in the encryption case, it is a point [k]P = (x2,y2).

       Must be used along with the RTE_CRYPTO_SM2_PARTIAL flag.

       Definition at line 735 of file rte_crypto_asym.h.

   rte_crypto_uint id
       The SM2 id used by signer and verifier.

       Definition at line 749 of file rte_crypto_asym.h.

   rte_crypto_uint k
       The SM2 per-message secret number, which is an integer in the interval (1, n-1). If the random number  is
       generated by the PMD, the 'rte_crypto_param.data' parameter should be set to NULL.

       Definition at line 752 of file rte_crypto_asym.h.

   rte_crypto_uint r
       r  component  of  elliptic  curve  signature output : for signature generation (of at least N bytes where
       prime field length is N bytes) input : for signature verification

       Definition at line 759 of file rte_crypto_asym.h.

   rte_crypto_uint s
       s component of elliptic curve signature output : for signature generation (of  at  least  N  bytes  where
       prime field length is N bytes) input : for signature verification

       Definition at line 765 of file rte_crypto_asym.h.

Author

       Generated automatically by Doxygen for DPDK from the source code.

DPDK                                             Version 25.11.0                      rte_crypto_sm2_op_param(3)