Skip to content

Commit 51ca711

Browse files
committed
Cleaning up text
Signed-off-by: Olle E. Johansson <[email protected]>
1 parent 21dae08 commit 51ca711

File tree

1 file changed

+34
-17
lines changed

1 file changed

+34
-17
lines changed

signatures/signature.md

Lines changed: 34 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,18 @@
11
# Trusting digital signatures in TEA
22

3-
Software transparency is a lot about trust. Within the
4-
API documents need to be signed with an electronic
3+
Software transparency requires a trust platform so that users
4+
can validate the information and artefacts published. Given
5+
the situation today any information published is better than
6+
none, so the framework for digital signatures will not
7+
be mandatory for API compliance. Implementations may
8+
require all published information to be signed and
9+
validated.
10+
11+
Within the
12+
API documents can be signed with an electronic
513
signature. CycloneDX boms supports signatures within
614
the JSON file, but other artefacts may need external
7-
signature files.
15+
signature files, a detached signature.
816

917
- __Integrity__: Documents dowloaded needs to be the same
1018
as documents published
@@ -15,14 +23,15 @@ signature files.
1523
- A TEA server may want to verify that published
1624
documents are signed by the expected publisher
1725
and that signatures are valid.
18-
19-
In order to sign, a pair of asymmetric keys will be needed.
20-
The public key is used to create a certificate, signed
21-
by a certificate authority (CA).
2226

23-
A software publisher may buy CA services from a commercial vendors
24-
or set up an internal solution. The issue with that is that external
25-
parties do not automatically trust that internal PKI.
27+
In order to sign an object, a pair of asymmetric keys will be
28+
needed. The public key is used to create a certificate, signed
29+
by a certificate authority (CA). The private key is used for
30+
signing and needs to be protected.
31+
32+
A software publisher may buy CA services from a commercial vendor
33+
or set up an internal solution. The issue with internal PKIs is that
34+
external parties do not automatically trust that internal PKI.
2635

2736
This document outlines a proposal on how to build that trust and
2837
make it possible for publishers to use an internal PKI. It is
@@ -40,28 +49,36 @@ the TLS server certificate to make sure that the certificate name
4049
(CN or Subject Alt Name) matches the host part of the URI.
4150

4251
If the certificate validates properly, the API can be trusted.
43-
The server is the right server. This trust can be used to
44-
implement trust in a private PKI used to sign documents.
52+
Validation proves that the server is the right server for the
53+
given host name in the URL. This trust can be used to
54+
implement trust in a private PKI used to sign documents. In
55+
addition, trust anchors can be published in DNS as an extra
56+
level of validation.
4557

4658
## Getting trust anchors
4759

4860
Much like the EST protocol, the TEA protocol can be used
4961
to download trust anchors for a private PKI. These are
50-
PEM-encoded certificates that are in one text file.
62+
PEM-encoded certificates in one single text file.
5163

5264
The TEA API has a `/trust-anchors/` API that will download
5365
the current trust anchor APIs. This file is not signed,
54-
that would cause a chicken-and-egg problem.
66+
that would cause a chicken-and-egg problem. The certificates
67+
in the file are all signed.
68+
69+
An implementation should download these and apply them only
70+
for this service, not in global scope. A PKI valid for example.com
71+
is not valid for example.net.
5572

5673
## Validating the trust anchors using DNSsec (DANE)
5774

5875
## Digital signatures
5976

6077
### Digital signatures as specified for CycloneDX
6178

62-
"Digital signatures may be applied to a BOM or to an assembly within a BOM.
63-
CycloneDX supports XML Signature, JSON Web Signature (JWS), and JSON Signature Format (JSF).
64-
Signed BOMs benefit by providing advanced integrity and non-repudiation capabilities."
79+
> "Digital signatures may be applied to a BOM or to an assembly within a BOM.
80+
> CycloneDX supports XML Signature, JSON Web Signature (JWS), and JSON Signature Format (JSF).
81+
> Signed BOMs benefit by providing advanced integrity and non-repudiation capabilities."
6582
<https://cyclonedx.org/use-cases/#authenticity>
6683
6784
### External (detached) digital signatures for other documents

0 commit comments

Comments
 (0)