Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Envelope headers #36

Closed
iamwillbar opened this issue Jun 3, 2021 · 6 comments
Closed

Envelope headers #36

iamwillbar opened this issue Jun 3, 2021 · 6 comments
Labels
wontfix This will not be worked on

Comments

@iamwillbar
Copy link

We've been discussing a couple of scenarios where it would be helpful to share signed side-band information beside the payload. The obvious workaround is to generate a new payload that wraps the original payload and stores the side-band information plus the original payload in the new payload.

Would there be interest in having this being a first-class part of the envelope to avoid the workaround?

@TomHennen
Copy link
Collaborator

Can you provide some examples?

@iamwillbar
Copy link
Author

You may want to include information about where (e.g. machine name), when (e.g. @dlorenc's suggestion in #33), who (e.g. a decentralized identity. This is along the same lines as HTTP or SMTP headers, arguably the payloadType is just a specialized Content-Type header and could even move into this header section.

@dlorenc
Copy link

dlorenc commented Jun 3, 2021

IMO the timestamp is conceptually part of the signature, so it might make sense in the envelope.

The machine name, etc should probably go into the payload. There's not a great spot for the machine name in the ITE-6 payload right now, though.

@iamwillbar
Copy link
Author

@dlorenc you're right, anything can go in the payload but that assumes you have control over the payload. If you wanted to take some arbitrary content and wrap this around it then it's nice to have a side-channel you can annotate without having to manipulate the payload.

@TomHennen
Copy link
Collaborator

Are you asking for something like a plain old 'metadata' field that can be any dict the producer wants but that people shouldn't depend on for making policy decisinos?

@MarkLodato
Copy link
Collaborator

My feeling is no. Signing-spec/DSSE is intended to be "dead simple" to minimize attack surface. JWS already exists and has the requested feature. If we added it here, we'd basically be reinventing JWS.

The workaround described in the original post is a reasonable solution. Or alternatively just use JWS if it provides the features you need.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

4 participants