9#ifndef SDRV_CRYPTO_MAILBOX_SM2_H
10#define SDRV_CRYPTO_MAILBOX_SM2_H
23 uint8_t pubKey_ptr[4];
46 uint8_t pubKey_ptr[4];
47 uint8_t priKey_ptr[4];
48 uint8_t aut_info_ptr[4];
59 uint8_t priKey_ptr[4];
60 uint8_t pubKey_ptr[4];
61 uint8_t aut_info_ptr[4];
74 uint8_t priKey_ptr[4];
75 uint8_t signature_ptr[4];
76 uint8_t aut_info_ptr[4];
87 uint8_t pubKey_ptr[4];
88 uint8_t signature_ptr[4];
100 uint8_t pubKey_ptr[4];
101 uint8_t cipher_ptr[4];
111 uint8_t cipher_ptr[4];
112 uint8_t cipher_len[4];
115 uint8_t priKey_ptr[4];
117 uint8_t aut_info_ptr[4];
158 uint8_t input_ptr[4];
159 uint8_t outputKey_ptr[4];
160 uint8_t s1_s2_ptr[4];
161 uint8_t sa_sb_ptr[4];
162 uint8_t aut_info_ptr[4];
186 uint8_t *pubkey, uint8_t *z_buf);
200 uint8_t *z_buf, uint8_t *e_buf);
227 uint16_t generate_key_id,
228 uint8_t *prikey, uint8_t *pubkey,
246 uint16_t generate_sign_key_id,
247 uint8_t *signature, uint8_t *mac_buf);
274 uint8_t *pubkey, uint8_t *cipher);
291 uint8_t *cipher, uint32_t cipher_len,
293 uint16_t decrypt_key_id,
312 uint8_t *dA, uint8_t *RA, uint8_t *rA, uint8_t *RB,
313 uint8_t *PB, uint8_t *ZA, uint8_t *ZB,
335 uint32_t kbytelen, uint8_t *S1, uint8_t *SA, uint8_t *KA,
SemiDrive CRYPTO mailbox common api header file.
cmd_key_type_e
CRYPTO key type.
Definition: sdrv_crypto_mailbox_common.h:133
sdrv_crypto_error_status_e cmd_sm2_dec(uint8_t *prikey, uint8_t *msg, uint8_t *cipher, uint32_t cipher_len, cmd_key_type_e decrypt_key_type, uint16_t decrypt_key_id, uint8_t *mac_buf)
sm2 dec
sdrv_crypto_error_status_e cmd_sm2_verify(uint8_t *e, uint8_t *pubkey, uint8_t *signature)
sm2 verify
sdrv_crypto_error_status_e cmd_sm2_get_e(uint8_t *msg, uint32_t msg_len, uint8_t *z_buf, uint8_t *e_buf)
get e value
cmd_sm2_exchange_role_e
CRYPTO role of sm2 exchange.
Definition: sdrv_crypto_mailbox_sm2.h:168
@ CMD_SM2_ROLE_RESPONSOR
Definition: sdrv_crypto_mailbox_sm2.h:170
@ CMD_SM2_ROLE_SPONSOR
Definition: sdrv_crypto_mailbox_sm2.h:169
@ CMD_SM2_ROLE_MAX
Definition: sdrv_crypto_mailbox_sm2.h:171
sdrv_crypto_error_status_e cmd_sm2_exchange_key(cmd_sm2_exchange_role_e role, cmd_sm2_exchangekey_keyinfo_t *cmd_sm2_exckey_keyinfo, sm2_exc_key_input_ptr_t *cmd_sm2_exc_key_input, uint32_t kbytelen, uint8_t *S1, uint8_t *SA, uint8_t *KA, uint8_t *mac_buf)
sm2 exchange key
sdrv_crypto_error_status_e cmd_sm2_sign(uint8_t *e, uint8_t *prikey, cmd_key_type_e generate_sign_key_type, uint16_t generate_sign_key_id, uint8_t *signature, uint8_t *mac_buf)
sm2 sign
sdrv_crypto_error_status_e cmd_sm2_get_z(uint8_t *id, uint32_t id_len, uint8_t *pubkey, uint8_t *z_buf)
sm2 get z value
sdrv_crypto_error_status_e cmd_sm2_enc(uint8_t *msg, uint32_t msg_len, uint8_t *pubkey, uint8_t *cipher)
sm2 enc
sdrv_crypto_error_status_e cmd_sm2_set_exckey_input_ptr(uint8_t *dA, uint8_t *RA, uint8_t *rA, uint8_t *RB, uint8_t *PB, uint8_t *ZA, uint8_t *ZB, sm2_exc_key_input_ptr_t *cmd_sm2_exc_key_input)
sm2 set exckey value
sdrv_crypto_error_status_e cmd_sm2_get_pubkey_from_prikey(uint8_t *prikey, uint8_t *pubkey)
sm2 get pubkey
sdrv_crypto_error_status_e cmd_sm2_generatekey(cmd_key_type_e generate_key_type, uint16_t generate_key_id, uint8_t *prikey, uint8_t *pubkey, uint8_t *mac_buf)
sm2 generatekey
crypto mailbox trng cmd interface
enum sdrv_crypto_error_status sdrv_crypto_error_status_e
CRYPTO error status return codes.
CRYPTO cmd of sm2 decrypt.
Definition: sdrv_crypto_mailbox_sm2.h:107
uint8_t cmd_id
Definition: sdrv_crypto_mailbox_sm2.h:108
uint8_t need_high_sec_ver
Definition: sdrv_crypto_mailbox_sm2.h:109
CRYPTO cmd of sm2 encrypt.
Definition: sdrv_crypto_mailbox_sm2.h:94
uint8_t cmd_id
Definition: sdrv_crypto_mailbox_sm2.h:95
uint8_t need_high_sec_ver
Definition: sdrv_crypto_mailbox_sm2.h:96
CRYPTO cmd of sm2 exchange keyinfo.
Definition: sdrv_crypto_mailbox_sm2.h:136
uint16_t output_key_id
Definition: sdrv_crypto_mailbox_sm2.h:143
uint16_t dA_key_id
Definition: sdrv_crypto_mailbox_sm2.h:138
uint16_t rA_key_id
Definition: sdrv_crypto_mailbox_sm2.h:140
cmd_key_type_e rA_key_type
Definition: sdrv_crypto_mailbox_sm2.h:139
cmd_key_type_e output_key_type
Definition: sdrv_crypto_mailbox_sm2.h:142
uint16_t enc_key_id
Definition: sdrv_crypto_mailbox_sm2.h:141
cmd_key_type_e dA_key_type
Definition: sdrv_crypto_mailbox_sm2.h:137
CRYPTO cmd of sm2 exchange key.
Definition: sdrv_crypto_mailbox_sm2.h:149
uint8_t role
Definition: sdrv_crypto_mailbox_sm2.h:152
uint8_t key_len
Definition: sdrv_crypto_mailbox_sm2.h:153
uint8_t cmd_id
Definition: sdrv_crypto_mailbox_sm2.h:150
uint8_t need_high_sec_ver
Definition: sdrv_crypto_mailbox_sm2.h:151
CRYPTO cmd of sm2 generate key.
Definition: sdrv_crypto_mailbox_sm2.h:42
uint8_t cmd_id
Definition: sdrv_crypto_mailbox_sm2.h:43
CRYPTO cmd of sm2 genrate signature.
Definition: sdrv_crypto_mailbox_sm2.h:67
uint8_t cmd_id
Definition: sdrv_crypto_mailbox_sm2.h:68
uint8_t need_high_sec_ver
Definition: sdrv_crypto_mailbox_sm2.h:69
CRYPTO cmd of sm2 get pubkey from prikey.
Definition: sdrv_crypto_mailbox_sm2.h:54
uint8_t cmd_id
Definition: sdrv_crypto_mailbox_sm2.h:55
CRYPTO cmd of sm2 get E.
Definition: sdrv_crypto_mailbox_sm2.h:30
uint8_t cmd_id
Definition: sdrv_crypto_mailbox_sm2.h:31
CRYPTO cmd of sm2 get z.
Definition: sdrv_crypto_mailbox_sm2.h:18
uint8_t cmd_id
Definition: sdrv_crypto_mailbox_sm2.h:19
CRYPTO cmd of sm2 verify signature.
Definition: sdrv_crypto_mailbox_sm2.h:82
uint8_t cmd_id
Definition: sdrv_crypto_mailbox_sm2.h:83
uint8_t need_high_sec_ver
Definition: sdrv_crypto_mailbox_sm2.h:84