SE安全芯片厂商可参考本文,实现SE驱动接口与SE芯片的基础通讯和数据交互。

下面介绍SE芯片的驱动接口。

se_open_session

  • 函数原型: irot_result_t se_open_session(void** handle) 。
  • 功能描述: 与SE芯片建立会话连接。
  • 参数描述: [IN]handle,会话句柄。
  • 返回值: 成功时返回0;其他返回值,请参考设备端错误码

se_transmit

  • 函数原型:irot_result_t se_transmit(void* handle, const uint8_t* cmd_apdu, const uint32_t cmd_len, uint8_t* rsp_buf, uint32_t* rsp_len)。
  • 功能描述:发送APDU命令到SE芯片,并接收SE芯片返回的APDU响应,响应数据包含2个字节状态字。
  • 参数描述:
    参数 描述
    [IN] handle 会话句柄。
    [IN] cmd_apdu 命令APDU。请参考规范ISO7816-4。
    [IN] cmd_len 命令APDU的长度。
    [IN] rsp_buf APDU返回数据Buffer。
    [IN/OUT] rsp_len 输入APDU Buffer的长度,输出为实际的APDU数据返回长度(包含2个字节状态字)。
  • 返回值:成功时返回0;其他返回值,请参考设备端错误码

se_close_session

  • 函数原型:irot_result_t se_close_session(void* handle)。
  • 功能描述:关闭会话连接。
  • 参数描述:[IN] handle, 会话句柄。
  • 返回值:成功时返回0;其他返回值,请参考设备端错误码
说明 接口中的handle参数,在通讯交互过程中,可用于保存会话的状态信息。