Skip to content

GET /slice/:blake3_hash/:slice_index/:slice_range HTTP route #18

@cryptoquick

Description

@cryptoquick

This allows storage clients to request a minimal subset of storage data.

This can optimize by the fact that slices are always 1KB, and segments are always 1MB, so only the specific segments needed will be verifiable.

Use this method for retrieving the slice: https://docs.rs/carbonado/latest/carbonado/fn.extract_slice.html

For now, let's only support a slice range of 1, since extract_slice only returns 1KB at a time.

The test for this should then take this slice data and run it through this method:
https://docs.rs/carbonado/latest/carbonado/fn.verify_slice.html

It will need to verify against the bao hash, not the blake hash, which corresponds to the segment. So, the catalog file will first be needed, which can be parsed using read_catalog, and then the bao hash corresponding to the slice index can be found.

Except for the last file, there should be 1024 slices to a segment, divide by 1024, the result should be the segment, and the remainder is the index within that segment.

The error for requesting a slice range other than one also will need to be handled.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions