Get desktop application:
View/edit binary Protocol Buffers messages
For making a `accept-withdrawal-request` contract call in the sbtc-withdrawal smart contract.
Used in:
The ID of the withdrawal request generated by the `initiate-withdrawal-request` function in the sbtc-withdrawal smart contract along with the transaction ID of the transaction that generated the request and block hash of the Stacks block that confirmed the transaction.
The outpoint of the bitcoin UTXO that was spent to fulfill the withdrawal request.
This is the assessed transaction fee for fulfilling the withdrawal request.
A bitmap of how the signers voted. The length of the list must be less than or equal to 128. Here, we assume that a true implies that the associated signer voted *against* the withdrawal.
The address that deployed the contract.
The block hash of the bitcoin block that contains a sweep transaction with the above `outpoint` as one of its outputs.
The block height associated with the above bitcoin block hash.
Represents an acknowledgment of a BitcoinPreSignRequest.
Used in:
(message has no fields)
Information about a new Bitcoin block sign request
Used in:
The set of sBTC request identifiers. This contains each of the requests for the entire transaction package. Each element in the vector corresponds to the requests that will be included in a single bitcoin transaction.
The current market fee rate in sat/vByte.
The total fee amount and the fee rate for the last transaction that used this UTXO as an input.
For making a `complete-deposit` contract call in the sbtc-deposit smart contract.
Used in:
The outpoint of the bitcoin UTXO that was spent as a deposit for sBTC.
The amount of sats swept in by the signers when they moved in the above UTXO.
The address where the newly minted sBTC will be deposited.
The address that deployed the sBTC smart contract containing the complete-deposit contract call.
The transaction ID for the sweep transaction that moved the deposit UTXO into the signers' UTXO. One of the inputs to the sweep transaction must be the above `outpoint`.
The block hash of the bitcoin block that contains a sweep transaction with the above `outpoint` as one of its inputs.
The block height associated with the above bitcoin block hash.
Describes the fees for a transaction.
Used in:
The total fee paid in sats for the transaction.
The fee rate paid in sats per virtual byte.
An identifier for a withdrawal request, comprised of the Stacks transaction ID, the Stacks block ID that included the transaction, and the request-id generated by the clarity contract for the withdrawal request.
Used in:
, ,The ID that was generated in the clarity contract call for the withdrawal request.
The txid that generated the request.
The Stacks block ID that includes the transaction that generated the request.
For making a `reject-withdrawal-request` contract call in the sbtc-withdrawal smart contract.
Used in:
The ID of the withdrawal request generated by the `initiate-withdrawal-request` function in the sbtc-withdrawal smart contract along with the transaction ID of the transaction that generated the request and block hash of the Stacks block that confirmed the transaction.
A bitmap of how the signers voted. The length of the list must be less than or equal to 128. Here, we assume that a true implies that the associated signer voted *against* the withdrawal.
The address that deployed the smart contract.
For making a `rotate-keys-wrapper` contract call in the `sbtc-bootstrap-signers` smart contract.
Used in:
The new set of public keys for all known signers during this PoX cycle.
The aggregate key created by combining the above public keys.
The address that deployed the contract.
The number of signatures required for the multi-sig wallet.
Wraps an inner type with a public key and a signature, allowing easy verification of the integrity of the inner data.
A signature over the hash of the inner structure.
The public key of the signer that generated the signature.
The signed structure.
Represents a decision to accept or reject a deposit request.
Used in:
The bitcoin outpoint that uniquely identifies the deposit request.
This specifies whether the sending signer's blocklist client blocked the deposit request. `true` here means the blocklist client did not block the request.
This specifies whether the sending signer can provide signature shares for the associated deposit request.
Messages exchanged between signers
Used in:
/ The bitcoin chain tip defining the signers view of the blockchain at the time the message was created
The message payload
/ A decision related to signer deposit
A decision related to signer withdrawal
A request to sign a Stacks transaction
A signature of a Stacks transaction
Contains all variants for DKG and WSTS signing rounds
Information about a new sweep transaction
Represents an acknowledgment of a BitcoinPreSignRequest
Represents a decision to accept or reject a withdrawal request.
Used in:
ID of the withdraw request.
The Stacks block ID of the Stacks block containing the request. It must be 32 bytes.
The stacks transaction ID that lead to the creation of the withdrawal request.
Whether or not the signer has accepted the withdrawal request.
Used in:
The sbtc-registry contract. This contract needs to be deployed before any other contract.
The sbtc-token contract. This contract needs to be deployed right after the sbtc-registry contract.
The sbtc-deposit contract. Can be deployed after the sbtc-token contract.
The sbtc-withdrawal contract. Can be deployed after the sbtc-token contract.
The sbtc-bootstrap-signers contract. Can be deployed after the sbtc-token contract.
Represents a request to sign a Stacks transaction.
Used in:
This is the bitcoin aggregate key that was output from DKG. It is used to identify the signing set for the transaction.
The nonce to use for the transaction.
The transaction fee in microSTX.
The transaction ID of the associated contract call transaction.
The contract transaction to sign.
The `complete-deposit` contract call
The `accept-withdrawal-request` contract call
The `reject-withdrawal-request` contract call
The `rotate-keys-wrapper` contract call
Ssmart contract deployment
Represents a signature of a Stacks transaction.
Used in:
Id of the signed transaction.
A recoverable ECDSA signature over the transaction.
This type is a container for all deposits and withdrawals that are part of a transaction package.
Used in:
The deposit requests associated with the inputs in the transaction.
The withdrawal requests associated with the outputs in the current transaction.
A wsts message.
Used in:
The wsts message
Tell signers to begin DKG by sending DKG public shares
Send DKG public shares
Tell signers to send DKG private shares
Send DKG private shares
Tell signers to compute shares and send DKG end
Tell coordinator that DKG is complete
Tell signers to send signing nonces
Tell coordinator signing nonces
Tell signers to construct signature shares
Tell coordinator signature shares
If this WSTS message is related to a Bitcoin signing round, this field will be set to the related Bitcoin transaction ID.
If this WSTS message is related to a rotate-keys transaction, this field will be set to the _new_ aggregate public key being verified.
If this WSTS message is related to a DKG round, this field will be set to the 32-byte id determined based on the coordinator public key and block hash, set by the coordinator.