mirror of
https://github.com/aljazceru/nutshell.git
synced 2025-12-20 10:34:20 +01:00
52 lines
1007 B
Python
52 lines
1007 B
Python
import secrets
|
|
from typing import Optional
|
|
from core.db import Connection, Database
|
|
|
|
|
|
async def store_promise(
|
|
amount: int,
|
|
B_x: str,
|
|
B_y: str,
|
|
C_x: str,
|
|
C_y: str,
|
|
db: Database,
|
|
conn: Optional[Connection] = None,
|
|
):
|
|
|
|
await (conn or db).execute(
|
|
"""
|
|
INSERT INTO promises
|
|
(amount, B_x, B_y, C_x, C_y)
|
|
VALUES (?, ?, ?, ?, ?)
|
|
""",
|
|
(
|
|
amount,
|
|
str(B_x),
|
|
str(B_y),
|
|
str(C_x),
|
|
str(C_y),
|
|
),
|
|
)
|
|
|
|
|
|
async def invalidate_proof(
|
|
proof: dict,
|
|
db: Database,
|
|
conn: Optional[Connection] = None,
|
|
):
|
|
|
|
# we add the proof and secret to the used list
|
|
await (conn or db).execute(
|
|
"""
|
|
INSERT INTO proofs_used
|
|
(amount, C_x, C_y, secret)
|
|
VALUES (?, ?, ?, ?)
|
|
""",
|
|
(
|
|
proof["amount"],
|
|
str(proof["C"]["x"]),
|
|
str(proof["C"]["y"]),
|
|
str(proof["secret"]),
|
|
),
|
|
)
|