Asymmetric Key Services TISCI Description¶
Introduction¶
This section describes the APIs availailable which provide asymmetric key services in System Firmware.
TISCI Message ID | Message Name |
---|---|
0x9010 | TISCI_MSG_SA2UL_PKA_RSA_SIGN_PRIM |
0x9011 | TISCI_MSG_SA2UL_PKA_RSA_VERIFY_PRIM |
0x9012 | TISCI_MSG_SA2UL_PKA_RSA_ENCRYPT_PRIM |
0x9013 | TISCI_MSG_SA2UL_PKA_RSA_DECRYPT_PRIM |
0x9014 | TISCI_MSG_SA2UL_PKA_ECDSA_SIGN |
0x9015 | TISCI_MSG_SA2UL_PKA_ECDSA_VERIFY |
TISCI_MSG_SA2UL_PKA_RSA_SIGN_PRIM - Perform RSA Sign Primitive (RSASP1)¶
Usage¶
Message Type | Secure |
Secure Queue Only? | Yes |
TISCI Message ID¶
TISCI_MSG_SA2UL_PKA_RSA_SIGN_PRIM (0x9010U)
Message to perform the RSA signature primitive
struct tisci_msg_sa2ul_pka_rsa_sign_prim_req
Request to perform RSA signature primitive (RSASP1)
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Common TI-SCI header |
key_index | u8 | Index in keystore to access the private key for performing the signature primitive |
data_lo | u32 | Lower 32-bit memory location of the plaintext data to sign |
data_hi | u32 | Upper 32-bit memory location of the plaintext data to sign |
signature_lo | u32 | Lower 32-bit memory location where the signature will be placed upon successful completion |
signature_hi | u32 | Upper 32-bit memory location where the signature will be placed upon successful completion |
struct tisci_msg_sa2ul_pka_rsa_sign_prim_resp
Response to the RSA sign primitive request
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Generic TISCI message header. ACK response indicates that the signature was successful and contents were placed into the memory location provided by the host during the request. NACK response indicates that the signature was not able to be completed. |
TISCI_MSG_SA2UL_PKA_RSA_VERIFY_PRIM - Perform RSA Verify Primitive (RSAVP1)¶
Usage¶
Message Type | Secure |
Secure Queue Only? | Yes |
TISCI Message ID¶
TISCI_MSG_SA2UL_PKA_RSA_VERIFY_PRIM (0x9011U)
Message to perform the RSA verification primitive
struct tisci_msg_sa2ul_pka_rsa_verify_prim_req
Request to perform RSA verification primitive (RSAVP1)
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Common TI-SCI header |
key_index | u8 | Index in keystore to access the public key for performing the verification primitive |
signature_lo | u32 | Lower 32-bit memory location of the signature |
signature_hi | u32 | Upper 32-bit memory location of the signature |
data_lo | u32 | Lower 32-bit memory location where the plaintext data will be placed upon successful completion |
data_hi | u32 | Upper 32-bit memory location where the plaintext data will be placed upon successful completion |
struct tisci_msg_sa2ul_pka_rsa_verify_prim_resp
Response to the RSA verify primitive request
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Generic TISCI message header. ACK response indicates that the verification was successful and contents were placed into the memory location provided by the host during the request. NACK response indicates that the verification was not able to be completed. |
TISCI_MSG_SA2UL_PKA_RSA_ENCRYPT_PRIM - Perform RSA Encrypt Primitive (RSAEP)¶
Usage¶
Message Type | Secure |
Secure Queue Only? | Yes |
TISCI Message ID¶
TISCI_MSG_SA2UL_PKA_RSA_ENCRYPT_PRIM (0x9012U)
Message to perform the RSA encryption primitive
struct tisci_msg_sa2ul_pka_rsa_encrypt_prim_req
Request to perform RSA Encryption Primitive (RSAEP)
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Common TI-SCI header |
key_index | u8 | Index in keystore to access the public key for performing the encryption primitive |
data_lo | u32 | Lower 32-bit memory location of the plaintext data |
data_hi | u32 | Upper 32-bit memory location of the plaintext data |
cipher_lo | u32 | Lower 32-bit memory location where the ciphertext data will be placed upon successful completion |
cipher_hi | u32 | Upper 32-bit memory location where the ciphertext data will be placed upon successful completion |
struct tisci_msg_sa2ul_pka_rsa_encrypt_prim_resp
Response to the RSA encrypt primitive request
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Generic TISCI message header. ACK response indicates that the encryption was successful and contents were placed into the memory location provided by the host during the request. NACK response indicates that the encryption was not able to be completed. |
TISCI_MSG_SA2UL_PKA_RSA_DECRYPT_PRIM - Perform RSA Decrypt Primitive (RSADP)¶
Usage¶
Message Type | Secure |
Secure Queue Only? | Yes |
TISCI Message ID¶
TISCI_MSG_SA2UL_PKA_RSA_DECRYPT_PRIM (0x9013U)
Message to perform the RSA decryption primitive
struct tisci_msg_sa2ul_pka_rsa_decrypt_prim_req
Request to perform RSA Decryption Primitive (RSADP)
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Common TI-SCI header |
key_index | u8 | Index in keystore to access the private key for performing the decryption primitive |
cipher_lo | u32 | Lower 32-bit memory location of the ciphertext data |
cipher_hi | u32 | Upper 32-bit memory location of the ciphertext data |
data_lo | u32 | Lower 32-bit memory location where the plaintext data will be placed upon successful completion |
data_hi | u32 | Upper 32-bit memory location where the plaintext data will be placed upon successful completion |
struct tisci_msg_sa2ul_pka_rsa_decrypt_prim_resp
Response to the RSA decrypt primitive request
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Generic TISCI message header. ACK response indicates that the decryption was successful and contents were placed into the memory location provided by the host during the request. NACK response indicates that the decryption was not able to be completed. |
TISCI_MSG_SA2UL_PKA_ECDSA_SIGN - Sign a message¶
Usage¶
Message Type | Secure |
Secure Queue Only? | Yes |
TISCI Message ID¶
TISCI_MSG_SA2UL_PKA_ECDSA_SIGN (0x9014U)
Message to sign a message hash with an EC private key
struct tisci_msg_sa2ul_pka_ecdsa_sign_req
Request to perform ECDSA signature
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Common TI-SCI header |
key_index | u8 | Index in keystore to access the private key for performing the signature |
input_lo | u32 | Lower 32-bit memory location of the hashed message |
input_hi | u32 | Upper 32-bit memory location of the hashed message |
signature_r_lo | u32 | Lower 32-bit memory location where the r component of the signature pair S = (r, s) will be placed upon successful completion |
signature_r_hi | u32 | Upper 32-bit memory location of the r component of the the signature pair S = (r, s) will be placed upon successful completion |
signature_s_lo | u32 | Lower 32-bit memory location of the s component of the the signature pair S = (r, s) will be placed upon successful completion |
signature_s_hi | u32 | Upper 32-bit memory location of the s component of the the signature pair S = (r, s) will be placed upon successful completion |
struct tisci_msg_sa2ul_pka_ecdsa_sign_resp
Response to the ECDSA signature request
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Generic TISCI message header. ACK response indicates that the signature was successful and contents were placed into the memory locations provided by the host during the request. NACK response indicates that the signature was not able to be completed. |
TISCI_MSG_SA2UL_PKA_ECDSA_VERIFY - Verify a signature¶
Usage¶
Message Type | Secure |
Secure Queue Only? | Yes |
TISCI Message ID¶
TISCI_MSG_SA2UL_PKA_ECDSA_VERIFY (0x9015U)
Message to verify an EC signature
struct tisci_msg_sa2ul_pka_ecdsa_verify_req
Request to perform ECDSA verification
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Common TI-SCI header |
key_index | u8 | Index in keystore to access the public key for performing the verification |
input_lo | u32 | Lower 32-bit memory location of the hashed message |
input_hi | u32 | Upper 32-bit memory location of the hashed message |
signature_r_lo | u32 | Lower 32-bit memory location of the r component of the signature pair S = (r, s) |
signature_r_hi | u32 | Upper 32-bit memory location of the r component of the signature pair S = (r, s) |
signature_s_lo | u32 | Lower 32-bit memory location of the s component of the signature pair S = (r, s) |
signature_s_hi | u32 | Upper 32-bit memory location of the s component of the signature pair S = (r, s) |
struct tisci_msg_sa2ul_pka_ecdsa_verify_resp
Response to the ECDSA verification request
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Generic TISCI message header. ACK response indicates that the verification was successful. NACK response indicates that the verfication was not successful. |