use compressed secret

This commit is contained in:
callebtc
2022-09-22 11:52:40 +03:00
parent edaedf01b4
commit 43e7889cab
9 changed files with 85 additions and 46 deletions

View File

@@ -6,8 +6,8 @@ from pydantic import BaseModel
class Proof(BaseModel):
amount: int
C: str
secret: str
C: str
reserved: bool = False # whether this proof is reserved for sending
send_id: str = "" # unique ID of send attempt
time_created: str = ""
@@ -27,16 +27,21 @@ class Proof(BaseModel):
@classmethod
def from_dict(cls, d: dict):
assert "secret" in d, "no secret in proof"
assert "amount" in d, "no amount in proof"
return cls(
amount=d["amount"],
C=d["C"],
secret=d["secret"],
reserved=d["reserved"] or False,
send_id=d["send_id"] or "",
time_created=d["time_created"] or "",
time_reserved=d["time_reserved"] or "",
amount=d.get("amount"),
C=d.get("C"),
secret=d.get("secret"),
reserved=d.get("reserved") or False,
send_id=d.get("send_id") or "",
time_created=d.get("time_created") or "",
time_reserved=d.get("time_reserved") or "",
)
def to_dict(self):
return dict(amount=self.amount, secret=self.secret, C=self.C)
def __getitem__(self, key):
return self.__getattribute__(key)