Partially Signed Kaspa Transactions (PSKT & PSKB)
How partially signed Kaspa transactions pass between parties - roles, and the create/sign/finalize process.Kaspa’s PSKT implementation follows the specification defined in BIP-370.
Roles
BIP-370 defines seven roles that a PSKT passes through: Creator, Constructor, Updater, Signer, Combiner, Finalizer, and Extractor. See the PSKT Roles reference for what each one does.
Process
Very high level and simple example of the process:
1. Create PSKT
Create PSKT from a Transaction object, from a serialized PSKT, or from scratch. When created from scratch, it starts with no inputs and no outputs.
2. Add Inputs/Outputs
Add inputs and outputs as necessary.
3. Serialize
Serialize PSKT for transmission to signers or other parties.
4. Sign
Signers deserialize and sign the PSKT. Then continue to pass serialized PSKT until all signers have signed.
5. Finalize, Extract & Submit
Final party or coordinator finalizes the PSKT, extracts the transaction, and submits it to the network.