ipld / specs

Content-addressed, authenticated, immutable data structures
Other
592 stars 108 forks source link

Propose dag-pb-enc specification. #375

Closed kevincox closed 2 years ago

kevincox commented 2 years ago

This aims to add inline encryption to IPFS, particularly to the UNIX FS data model but all formats built ontop of dag-pb-enc are supported.

See requests and discussion on https://github.com/ipfs/notes/issues/270

rvagg commented 2 years ago

Oh, interesting. This could be tough to get over the line given the lack of interest in leaning too much more on dag-pb, but certainly worth discussing. I'm sorry to do this but would you mind closing this and opening it over at https://github.com/ipld/ipld. It's not well documented (yet) but we're retiring this repo and have moved the majority of the content there which is now available at ipld.io. You should see the codecs folder inside the specs folder where this will fit like the others.

warpfork commented 2 years ago

Procedurally: Yes, as @rvagg says, we've consolidated most content to the ipld/ipld repo.

Also procedurally, some expectation-setting: fair warning, the bar for merging anything like this directly into the documentation about codecs will be very high. There are several reasons for this:

Here are some milder steps that would be easier to take, and may help move in a forward direction:

I'd recommend starting with option 1 or 2. Shooting straight for option 3 is pretty extreme.


On the content: 2cents: I'd also probably be interested in seeing something based on CBOR wire format rather than based on Protobuf wire format. I suspect this could be written in either wire format without much actual semantic difference, and unifying more things on CBOR is something that generally makes us happier. I haven't reviewed this much deeper than that yet. A compare/contrast with other systems listed in https://ipld.io/docs/synthesis/encryption/ would also almost certainly help a great deal.

kevincox commented 2 years ago

Thanks for the feedback. The docs are very unclear so I'll just follow what you are suggesting. Sounds like I will update this doc to fit into option 1 and submit it there.

kevincox commented 2 years ago

I'd also probably be interested in seeing something based on CBOR wire format rather than based on Protobuf wire format. I suspect this could be written in either wire format without much actual semantic difference, and unifying more things on CBOR is something that generally makes us happier.

You are correct, it doesn't make any meaningful difference. I just updated the dag-pb format since it appears to be what the current unix-fs is based upon and unix-fs is what I am most interested in.

kevincox commented 2 years ago

Moved to https://github.com/ipld/ipld/pull/135