Subject: [Teep] Unique Identifier of TA_ID in TA_LIST for TEEP_QueryResponse

From: Akira Tsukamoto <[email-masked]>
Date: Mon, 13 Apr 2020 14:45:58 +0900

Hi all,

I would like to restart the discussion of Unique Identifier of TA_ID in
TEEP's QueryResponse which was one of the item came up at TEEP interim meeting
last week.

The discussion started between the Hackathon in Singapore and Berlin.

This is the link to the github.
https://github.com/ietf-teep/teep-protocol/issues/4

After going though again, I started to have my preference.

The usage of TA_ID in TEEP message is to distinguish the required TA in the device
by parsing of identification id.
The it will be good to be able to match the TA with one bstr for one TA.

I started to think hash value might work.
Using the hash value from the properties of Parameters in Section 5.4.1
in SUIT CBOR Manifest for each TA.

The generating hash from adding all the properties.
These are the requited parameters.
    -  Vendor ID.
    -  Class ID. # Could be file name for SGX, uuid for op-tee. uuid is used
                   as file name in op-tee anyway
    -  Image Digest. # This is version of TA
It is up to the user who would like to add optional parameters for the seed.

We have to consider which hash function to use too, and easiest to come up
is probably sha256.
The hash value of sha256 is 32 bytes which is still going to be second largest
member than NONCE in TEEP message.
I prefer smaller bytes to reduce the teep message size but raw parameters of
all three above would be larger than 32bytes, so it may be acceptable.

The purpose of the hash value here is mainly for
prevent colliding between different TAs or different version in the TAM server.

-Akira