24 lines
836 B
Nim
Raw Normal View History

2024-12-10 15:45:32 +01:00
import ../basics
2024-12-05 08:11:54 +01:00
import codexvalidator/signatures
import codexvalidator/transaction
2024-12-12 15:01:24 +01:00
import codexvalidator/hashing
2024-12-05 08:11:54 +01:00
suite "Transaction signing":
test "transactions can be signed":
let identity = Identity.example
let transaction = Transaction.example
let signed = identity.sign(transaction)
check signed.transaction == transaction
check signed.signer == identity.identifier
2024-12-12 15:01:24 +01:00
check signed.signature == identity.sign(transaction.hash.toBytes())
2024-12-05 08:11:54 +01:00
test "transaction signature can be verified":
let identity = Identity.example
let transaction = Transaction.example
let signed = identity.sign(transaction)
check signed.verifySignature()
let forger = Identity.example.identifier
let forged = SignedTransaction.init(transaction, forger, signed.signature)
check not forged.verifySignature()