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

Algorithm for creating compact CBOR representation is not clear #5

Open
swcurran opened this issue Dec 3, 2024 · 5 comments
Open

Comments

@swcurran
Copy link

swcurran commented Dec 3, 2024

I don't understand Example 8 and in particular, the format of the proofs array? In all the other Examples, proof entries are DI proofs, but in Example 8 they are just what appears to be a hash. Perhaps some explanation is needed as to why that is?

@msporny
Copy link
Member

msporny commented Dec 4, 2024

Perhaps some explanation is needed as to why that is?

Yes, that's confusing as written. The concept in play is that some CELs operate in a content-addressed system, and so those hashes would "expand" to the actual objects themselves, at which point you'd be able to have the full log, or "elide" portions of it. The concept is similar to the Gordian Envelope stuff, where you can just elide subsets of the data structure, but can still construct it if you have the objects that are related to the cryptographic hashes.

One API we're contemplating is a simple API to fetch cryptographic hashes associated with the log -- or the log provides a place where you can fetch things via cryptographic hash.

But you're right, that part is woefully under-specified. We're struggling with understanding how much people are going to care about splitting the larger objects out of the log or not. Or if there is a log "redaction" play here or not (where you can confirm the log, but only get some of the objects in the log based on your access level. My gut tells me that this sort of stuff is too complex and, while neat, might be best avoided in v1.0.

@brianorwhatever
Copy link

The concept in play is that some CELs operate in a content-addressed system, and so those hashes would "expand" to the actual objects themselves, at which point you'd be able to have the full log, or "elide" portions of it.

This is a really powerful concept and am in favour of exploring it further

@brianorwhatever
Copy link

In fact I think #4 is related as you're making hashes identifiers

@msporny msporny changed the title Example 8 -- input to the CBOR representation is not clear to me Algorithm for creating compact CBOR representation is not clear Dec 5, 2024
@swcurran
Copy link
Author

swcurran commented Dec 9, 2024

Shouldn't those be treated like URLs and include how to resolve them? Or is it that given where the log itself is found, it is “obvious” what the proof format is and how to resolve/verify them?

@bnewbold
Copy link

I'd strongly recommend taking a look at DASL (https://dasl.ing/) as a simple set of tools for CBOR encoding objects and referencing them by hash. This is a much simplified/scoped variation of IPLD (https://ipld.io/).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants