Table of Contents

Class IntentProofHelper

Namespace
NArk.Core.Helpers
Assembly
NArk.Core.dll

Creates BIP-322-style proofs for intent operations (registration, deletion, and querying).

public static class IntentProofHelper
Inheritance
IntentProofHelper
Inherited Members

Methods

CreateGetPendingTxOwnershipProofAsync(ArkCoin, IArkadeWalletSigner, Network, CancellationToken)

Creates a signed BIP-322 proof for GetPendingTxAsync(string, string, CancellationToken): the SDK proves it owns the given input(s) and the server returns any non-finalized Arkade transactions that referenced them so the SDK can finalize and unlock the user's coins after a crash between SubmitTx and FinalizeTx. Mirrors the {"type":"get-pending-tx","expire_at":0} envelope used by the TS and Go SDKs.

public static Task<(string Proof, string Message)> CreateGetPendingTxOwnershipProofAsync(ArkCoin coin, IArkadeWalletSigner signer, Network network, CancellationToken cancellationToken = default)

Parameters

coin ArkCoin
signer IArkadeWalletSigner
network Network
cancellationToken CancellationToken

Returns

Task<(string Proof, string Message)>

CreateGetVtxoChainOwnershipProofAsync(ArkCoin, IArkadeWalletSigner, Network, CancellationToken)

Creates a signed BIP-322 proof for GetVtxoChainAsync(OutPoint, string?, string?, CancellationToken): the SDK proves it owns the given VTXO so the Arkade indexer returns the fully-signed virtual-tx chain (rather than stripping the signer signatures) and issues an auth token for paginating it. Mirrors the {"type":"get-data","expire_at":0} envelope arkd decodes as its GetDataMessage for the indexer intent flow.

public static Task<(string Proof, string Message)> CreateGetVtxoChainOwnershipProofAsync(ArkCoin coin, IArkadeWalletSigner signer, Network network, CancellationToken cancellationToken = default)

Parameters

coin ArkCoin

The VTXO coin whose ownership is being proved (becomes input[1] of the proof)

signer IArkadeWalletSigner

Wallet signer for the coin

network Network

Bitcoin network

cancellationToken CancellationToken

Cancellation token

Returns

Task<(string Proof, string Message)>

Tuple of (base64-encoded PSBT proof, JSON message string)

CreateIntentOwnershipProofAsync(ArkCoin, IArkadeWalletSigner, Network, CancellationToken)

Creates a signed BIP-322 proof that can be used with GetIntentsByProofAsync(string, string, CancellationToken) to retrieve intents registered by the owner of the given coin.

public static Task<(string Proof, string Message)> CreateIntentOwnershipProofAsync(ArkCoin coin, IArkadeWalletSigner signer, Network network, CancellationToken cancellationToken = default)

Parameters

coin ArkCoin

The coin whose script ownership is being proved

signer IArkadeWalletSigner

Wallet signer for the coin

network Network

Bitcoin network

cancellationToken CancellationToken

Cancellation token

Returns

Task<(string Proof, string Message)>

Tuple of (base64-encoded PSBT proof, JSON message string)