diff --git a/doc/transaction/grin-transaction.png b/doc/transaction/grin-transaction.png index 5b1d6e2d..cd9dfb03 100644 Binary files a/doc/transaction/grin-transaction.png and b/doc/transaction/grin-transaction.png differ diff --git a/doc/transaction/grin-transaction.puml b/doc/transaction/grin-transaction.puml index 3406608c..771ec0e5 100644 --- a/doc/transaction/grin-transaction.puml +++ b/doc/transaction/grin-transaction.puml @@ -21,11 +21,12 @@ end note sender -> sender: Lock **inputs** in wallet sender -> sender: Store **change_output** in wallet with status "Unconfirmed" note left of sender - 6: Calculate **fee**: **((-1 * num_inputs) + (4 * num_change_outputs) + 1)* 1_000_000 nG** + 6: Calculate **tx_weight**: MAX(-1 * **num_inputs** + 4 * **num_change_outputs** + 1, 1) (+1 covers a single output on the receiver's side) - 7: Calculate total blinding excess sum for all inputs and outputs **xS** (private scalar) - 8: Select a random nonce **kS** (private scalar) - 9: Multiply **xS** and **kS** by generator G to create public curve points **xSG** and **kSG** + 7: Calculate **fee**: **tx_weight** * 1_000_000 nG + 8: Calculate total blinding excess sum for all inputs and outputs **xS** (private scalar) + 9: Select a random nonce **kS** (private scalar) + 10: Multiply **xS** and **kS** by generator G to create public curve points **xSG** and **kSG** end note sender -> recipient: **UUID**, **inputs**, **change_output**, **fee**, **lock_height**, **kSG**, **xSG** == Phase 2 - Receiver Initiation ==