Homomorphic hashing of object payload is not always necessary. There is
a need to provide ability to skip calculation. It's also worth to not
calculate it by default since current implementation of Tillich-Zemor
algorithm has large resource cost.
Do not calculate homomorphic checksum in `Slicer` methods by default.
Provide option to enable the calculation. Make tests to randomize
calculation flag and assert results according to it.
Refs #342.
Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Provide method to initialize payload stream as `io.WriteCloser`. This
approach will be useful for applications which need to control data
writing by themselves.
Refs #342.
Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
There is a need to provide convenient function which allows to slice
user data into objects to be stored in NeoFS. The main challenge is to
produce objects compliant with the format described in the NeoFS
Specification.
Add `object/slicer` package. Export `Slicer` type which performs data
slicing.
Refs #342.
Signed-off-by: Leonard Lyubich <leonard@morphbits.io>