Remove `signature` and `util/signature` packages. Re-implement their
functionality in new `crypto` package. Generalize the approach of
digital signature computation and verification by adding `Signer` and
`PublicKey` primitives similar to standard `crypto` package. Support
already exising in protocol signature schemes.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
Do not return pointers from getters. Do not pass pointers to the methods
that does not modify the checksum. Add `Empty` method.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
All NeoFS object must have at least container and owner identifiers.
Add `InitCreation` function which write all required fields to the
object instance. Extend `Object` type docs with all the constructors.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>