From 816de491d3042eb109d16a59102484f5ba5a3ba2 Mon Sep 17 00:00:00 2001 From: Lusa Zhan <101276749+lusayaa@users.noreply.github.com> Date: Tue, 7 Jan 2025 13:38:55 -0500 Subject: [PATCH 1/4] Include section on cleartext req/resp headers To match IETF spec --- FLEDGE_Key_Value_Server_API.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/FLEDGE_Key_Value_Server_API.md b/FLEDGE_Key_Value_Server_API.md index b7b4a680b..bdf665b35 100644 --- a/FLEDGE_Key_Value_Server_API.md +++ b/FLEDGE_Key_Value_Server_API.md @@ -65,6 +65,12 @@ HTTPS is used to transport data. The method is `POST`. The HTTP POST body is encrypted. +#### Cleartext headers + +Requests contain a cleartext HTTP `Content-Type` header with value `message/ad-auction-trusted-signals-request`. + +Responses contain a cleartext HTTP `Content-Type` header with value `message/ad-auction-trusted-signals-response`. + #### Encryption We will use [Oblivious HTTP](https://datatracker.ietf.org/doc/draft-ietf-ohai-ohttp/) with the following configuration for encryption: From 35b7ab43dfafacb44d0a40b8844f70a197cac74d Mon Sep 17 00:00:00 2001 From: Lusa Zhan <101276749+lusayaa@users.noreply.github.com> Date: Tue, 14 Jan 2025 16:49:46 -0500 Subject: [PATCH 2/4] Specify outer vs inner http layers --- FLEDGE_Key_Value_Server_API.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/FLEDGE_Key_Value_Server_API.md b/FLEDGE_Key_Value_Server_API.md index bdf665b35..0cb63cd86 100644 --- a/FLEDGE_Key_Value_Server_API.md +++ b/FLEDGE_Key_Value_Server_API.md @@ -61,15 +61,20 @@ For more information on the design, please refer to [the trust model explainer]( ![V2 API diagram](assets/fledge_kv_server_v2_api.png) -HTTPS is used to transport data. The method is `POST`. +The request contains an outer HTTP layer with an inner HTTP body that uses a repurposed [Oblivious HTTP](https://datatracker.ietf.org/doc/draft-ietf-ohai-ohttp/) encapsulation mechanism. -The HTTP POST body is encrypted. -#### Cleartext headers +### Outer HTTP layer +For the outer HTTP layer: +* HTTPS is used to transport data. +* The method is `POST`. +* Requests specify Content types via these headers: + ``` + Content-Type: message/ad-auction-trusted-signals-request + Accept: message/ad-auction-trusted-signals-response + ``` -Requests contain a cleartext HTTP `Content-Type` header with value `message/ad-auction-trusted-signals-request`. - -Responses contain a cleartext HTTP `Content-Type` header with value `message/ad-auction-trusted-signals-response`. +### Inner HTTP layer #### Encryption From 7487c0ebb39d6c37186c5cac8237cfdca5371b82 Mon Sep 17 00:00:00 2001 From: Lusa Zhan <101276749+lusayaa@users.noreply.github.com> Date: Tue, 21 Jan 2025 15:26:26 -0500 Subject: [PATCH 3/4] Update FLEDGE_Key_Value_Server_API.md Co-authored-by: Paul Jensen --- FLEDGE_Key_Value_Server_API.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FLEDGE_Key_Value_Server_API.md b/FLEDGE_Key_Value_Server_API.md index 0cb63cd86..230015642 100644 --- a/FLEDGE_Key_Value_Server_API.md +++ b/FLEDGE_Key_Value_Server_API.md @@ -61,7 +61,7 @@ For more information on the design, please refer to [the trust model explainer]( ![V2 API diagram](assets/fledge_kv_server_v2_api.png) -The request contains an outer HTTP layer with an inner HTTP body that uses a repurposed [Oblivious HTTP](https://datatracker.ietf.org/doc/draft-ietf-ohai-ohttp/) encapsulation mechanism. +The request contains an outer HTTP layer with an inner [Oblivious HTTP](https://datatracker.ietf.org/doc/draft-ietf-ohai-ohttp/) layer. ### Outer HTTP layer From 0463f9685e52e9245dbf3e45b30f70ef75a82636 Mon Sep 17 00:00:00 2001 From: Lusa Zhan <101276749+lusayaa@users.noreply.github.com> Date: Tue, 21 Jan 2025 15:26:33 -0500 Subject: [PATCH 4/4] Update FLEDGE_Key_Value_Server_API.md Co-authored-by: Paul Jensen --- FLEDGE_Key_Value_Server_API.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FLEDGE_Key_Value_Server_API.md b/FLEDGE_Key_Value_Server_API.md index 230015642..eb947d565 100644 --- a/FLEDGE_Key_Value_Server_API.md +++ b/FLEDGE_Key_Value_Server_API.md @@ -67,7 +67,7 @@ The request contains an outer HTTP layer with an inner [Oblivious HTTP](https:// ### Outer HTTP layer For the outer HTTP layer: * HTTPS is used to transport data. -* The method is `POST`. +* The HTTP method is `POST`. * Requests specify Content types via these headers: ``` Content-Type: message/ad-auction-trusted-signals-request