Skip to content

Commit

Permalink
Merge pull request #24 from ietf-scitt/seccons++
Browse files Browse the repository at this point in the history
more security considerations
  • Loading branch information
thomas-fossati authored Aug 30, 2024
2 parents ef85ba7 + 2918a38 commit 6f0b004
Showing 1 changed file with 12 additions and 10 deletions.
22 changes: 12 additions & 10 deletions draft-birkholz-cose-tsa-tst-header-parameter.md
Original file line number Diff line number Diff line change
Expand Up @@ -161,16 +161,18 @@ Please review the Security Considerations section in {{-TSA}}; these considerati

Also review the Security Considerations section in {{-COSE}}; these considerations apply to this document as well, especially the need for implementations to protect private key material.

In the "Timestamp, then COSE" (TTC) sequence of operation, the TSA is
given an opaque identifier (a cryptographic hash value) for the
payload.
While this means that the content of the payload is not directly
revealed, to prevent comparison with known payloads or disclosure of
identical payloads being used over time, the payload would need to be
armored, e.g., with a nonce that is shared with the recipient of the
header parameter but not the TSA.
Such a mechanism can be employed inside the ones described in this
specification, but is out of scope for this document.
The following scenario assumes an attacker can manipulate the clocks on the COSE signer and its relying parties, but not the TSA.
It is also assumed that the TSA is a trusted third party, so the attacker cannot impersonate the TSA and create valid timestamp tokens.
In such a setting, any tampering with the COSE signer's clock does not have an impact because, once the timestamp is obtained from the TSA, it becomes the only reliable source of time.
However, in both CTT and TTC mode, a denial of service can occur if the attacker can adjust the relying party's clock so that the CMS validation fails.
This could disrupt the timestamp validation.

In CTT mode, an attacker could manipulate the unprotected header by removing or replacing the timestamp.
To avoid that, the signed COSE object should be integrity protected during transit and at rest.

In TTC mode, the TSA is given an opaque identifier (a cryptographic hash value) for the payload.
While this means that the content of the payload is not directly revealed, to prevent comparison with known payloads or disclosure of identical payloads being used over time, the payload would need to be armored, e.g., with a nonce that is shared with the recipient of the header parameter but not the TSA.
Such a mechanism can be employed inside the ones described in this specification, but is out of scope for this document.

# IANA Considerations

Expand Down

0 comments on commit 6f0b004

Please sign in to comment.