README.md in zold-0.0.3 vs README.md in zold-0.0.4
- old
+ new
@@ -61,11 +61,11 @@
* `zold init` creates a new wallet (you have to provide PGP keys)
* `zold pull` pulls a wallet from the network
* `zold send` creates a new transaction
* `zold push` pushes a wallet to the network
-For more options just run:
+For more options and commands just run:
```bash
$ zold --help
```
@@ -124,26 +124,24 @@
The client connects to a random closest node and pulls a wallet. If the node
doesn't have the wallet, it tries to find it in the network.
Then, it calculates and prints the balance to the user.
**Commit**.
-The user provides the amount and the destination wallet name. The client
-finds the mediator node in the network. The client
-pulls the destination wallet and adds
-a new XML element `<txn>` to both wallets.
+The user provides the amount and the destination wallet name.
+The client pulls the destination wallet and adds
+a new XML element `<txn/>` to both wallets.
**Push**.
-The client sends two wallets to the mediator, which checks
+The client sends two wallets to a random closest node, which checks
the validity of the deduction and propagates
-both wallets to other nodes in a [2PC](https://en.wikipedia.org/wiki/Two-phase_commit_protocol)
+both wallets to _all_ other nodes in a [2PC](https://en.wikipedia.org/wiki/Two-phase_commit_protocol)
manner: acknowledgment first, commit next.
If a node receives a wallet that contains transactions that are younger
than transactions in its local copy, a merge operation is
performed. If the balance after the merge is negative, the push is rejected.
**Init**.
-The client creates an empty wallet XML and asks one of the backbone
-nodes to generate a new `id` for it.
+The client creates an empty wallet XML and assigns a random `id` for it.
**Start**.
The node manifests itself to one of the backbone nodes, which
propagates the manifestation to other nodes, they propagate further.
When any node goes down, the node that detected such a situation,