SplitUTXOsToBenfordCommand class
Command to split wallet UTXOs into Benford distribution for privacy
This command processes each available UTXO individually, splitting it into multiple outputs whose amounts follow Benford's Law distribution. This makes transaction patterns appear more natural and organic, improving privacy.
Each source UTXO will be split into targetUtxoCount new UTXOs through a single transaction (1 input -> N outputs). The outputs are sent to newly generated addresses within the same wallet.
This is NOT part of the SPV flow - we broadcast our own transactions directly via ArcService and handle CQRS integration manually.
- Inheritance
-
- Object
- WalletCommand
- SplitUTXOsToBenfordCommand
Constructors
Properties
- commandId → String
-
Unique identifier for this command
Used for deduplication and tracing
no setterinherited
- commandType → String
-
Command type identifier for logging and debugging
no setteroverride
- correlationId → String
-
finalinherited
- feeRate → BigInt?
-
Optional fee rate in satoshis per byte (default: 1 for BSV)
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- maxUtxosToSplit → int?
-
Maximum number of UTXOs to split (null = split all available)
This allows users to keep some UTXOs available for transactions
final
-
metadata
→ Map<
String, dynamic> -
finalinherited
- payload → dynamic
-
Override payload to return the command itself for LocalMessage compatibility
no setterinherited
- replyTo → ActorRef?
-
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- sender → ActorRef?
-
finalinherited
- targetUtxoCount → int
-
Number of outputs to create per source UTXO
final
- timestamp → DateTime
-
finalinherited
- walletId → String
-
finalinherited
Methods
-
getValidationErrors(
) → List< String> -
Get validation errors
Override in subclasses to provide specific error messages
inherited
-
isValid(
) → bool -
Validate the command
Override in subclasses for custom validation
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toCbor(
) → List< int> -
Serialize command to CBOR bytes
inherited
-
toMap(
) → Map< String, dynamic> -
Convert command to a map for serialization
Override in subclasses to include command-specific data
inherited
-
toString(
) → String -
A string representation of this object.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited