1; Clients of the HAL service call various methods on the HAL service; these 2; method invocations are internally translated into request messages 3; encoded as a CBOR 2-array holding: 4; - An integer indicating which request is present. 5; - An inner object holding the content for that specific request. 6PerformOpReq = 7 [SecretManagementOpCode, ProtectedRequestPacket] / 8 [DeleteIdsOpCode, [*SecretId]] / 9 [DeleteAllOpCode, nil] 10 11SecretManagementOpCode = 0x10 12DeleteIdsOpCode = 0x11 13DeleteAllOpCode = 0x12 14 15; Internally, a HAL request corresponds to a response message encoded as a CBOR 2-array holding: 16; - An integer return code value. 17; - One of: 18; - If the return code is zero: a result value. 19; - If the return code is non-zero: an error message. 20PerformOpResponse = 21 [0, PerformOpSuccessRsp] / 22 [error_code: int .ne 0, error_message: tstr] 23 24; The content of an OK response depends on the corresponding `HalRequest` message 25PerformOpSuccessRsp = ProtectedResponsePacket / nil 26