[#3] Added generate proto script create container method
Signed-off-by: Ilyas Niyazov <i.niyazov@yadro.com>
This commit is contained in:
parent
f8465e5b99
commit
fba6eaaa9c
34 changed files with 547 additions and 108 deletions
|
@ -1,8 +1,20 @@
|
|||
import ecdsa
|
||||
from hashlib import sha256, sha512
|
||||
|
||||
from google.protobuf.message import Message
|
||||
|
||||
from frostfs_sdk.client.models.ecdsa_model import ECDSA
|
||||
from frostfs_sdk.protos.models.refs.types_pb2 import SignatureRFC6979, Signature
|
||||
|
||||
|
||||
class Signer:
|
||||
@staticmethod
|
||||
def sign_message_rfc_6979(key: ECDSA, message: Message) -> SignatureRFC6979:
|
||||
return SignatureRFC6979(
|
||||
key=key.public_key,
|
||||
sign=Signer.sign_rfc6979(key.private_key, message.SerializeToString())
|
||||
)
|
||||
|
||||
@staticmethod
|
||||
def sign_rfc6979(private_key: bytes, message: bytes) -> bytes:
|
||||
if len(private_key) == 0 or private_key is None:
|
||||
|
@ -14,6 +26,13 @@ class Signer:
|
|||
|
||||
return signature
|
||||
|
||||
@staticmethod
|
||||
def sign_message(key: ECDSA, message: Message) -> SignatureRFC6979:
|
||||
return SignatureRFC6979(
|
||||
key=key.public_key,
|
||||
sign=Signer.sign(key.private_key, message.SerializeToString())
|
||||
)
|
||||
|
||||
@staticmethod
|
||||
def sign(private_key: bytes, message: bytes) -> bytes:
|
||||
if len(private_key) == 0 or private_key is None:
|
||||
|
@ -26,3 +45,10 @@ class Signer:
|
|||
signature_with_marker = bytes([0x04]) + signature
|
||||
|
||||
return signature_with_marker
|
||||
|
||||
@staticmethod
|
||||
def _sign_message_part(key: ECDSA, data: Message) -> Signature:
|
||||
return Signature(
|
||||
key=key.public_key,
|
||||
sign=Signature.sign(key.private_key, data.SerializeToString())
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue