Checklist
Boost component
What is the motivation behind this feature request? Is your feature request related to a problem? Please describe.
When I retrieve content from boost, I would like a response that I can use to tell someone else "this SP gave me the data I asked for.
currently that isn't true because there's no signature or attestation in the response - so there's no way to:
- correlate the response as accurate for a given request
- associate that the response has actually come from the specific SP
Describe the solution you'd like
We propose to make use of ipfs/specs#431 - the use of metadata within car responses that is an extension to IPIP-412 that allows for the use of a cbor key-value block to end a booster-http response.
in the final metadata block of a response from boost we propose to include 3 fields:
len - byte length of the response data (excluding the metadata block)
b3h - Blake3 hash (checksum) of the response data (excluding the metadata block).
b3h_sig - A signature over <len><b3h><request> using booster-http's libp2p identity.
Describe alternatives you've considered
- this could be implemented as a trailer at the http transport level, but that limits compatibility with clients
- the response can remain un-attested, or only attested in specific cases, but that makes it too easy for an SP to not return correct data or to only return correct data to retrieval testing systems.
Additional context
No response
Checklist
Ideas.Boost component
What is the motivation behind this feature request? Is your feature request related to a problem? Please describe.
When I retrieve content from boost, I would like a response that I can use to tell someone else "this SP gave me the data I asked for.
currently that isn't true because there's no signature or attestation in the response - so there's no way to:
Describe the solution you'd like
We propose to make use of ipfs/specs#431 - the use of
metadatawithin car responses that is an extension to IPIP-412 that allows for the use of a cbor key-value block to end a booster-http response.in the final metadata block of a response from boost we propose to include 3 fields:
len- byte length of the response data (excluding the metadata block)b3h- Blake3 hash (checksum) of the response data (excluding the metadata block).b3h_sig- A signature over<len><b3h><request>using booster-http's libp2p identity.Describe alternatives you've considered
Additional context
No response