Multichain on multiple nodes

+2 votes
Is there a tutorial (or at least information) on how to run multichain on more than 2 nodes? In the tutorial you mention a server and client node. However, in my setup I want to explictly make use of the distributed nature of a blockchain to offer the same data (with the integrity validation that blockchain offers) at various nodes in a network.

Concrete questions:
1. Do I simply start the process as before (create the chain on 1 node, and then connect every node to that node), or can I connect nodes to eachother (under the assumption that they form a connected graph).

2. Assuming the nodes are connected, what happens when I publish information in a stream? Does it get propagated to all nodes instantly? Do I need to apply a second command to make that happen?

3. (not on topic of multiple nodes) Does the multichain toolset automatically generate a public/private keypair for me? If so, where can I find this pair? Is that the value listed in the "publisher" array when I liststreamitems?
asked Jan 17, 2017 by Joris Schellekens

1 Answer

+1 vote

1. Any new node can connect to any running node in the blockchain, whether it's the first node, or a subsequent node. Each node has a "node address" which can be used by other nodes to connect. The node address is shown on the command line and accessible through the getinfo API.

2. Any transaction (whether relating to permissions, assets or streams) is immediately propagated to all nodes automatically.

3. There are a bunch of commands/APIs for managing key pairs and their associated addresses – please see the API documentation page. To start with, each node automatically generates a single key pair.

answered Jan 17, 2017 by MultiChain