I'm interested in creating a completely separate private network, and it seems like all I need to do is hide my NETWORK_PASSPHRASE. However, I'm not sure how that works exactly. i.e. when a new peer connects to my private network with my NETWORK_PASSPHRASE, where is it getting information about the peers on that network? How does it know what network it's talking to?

1 Answer 1


The NETWORK_PASSPHRASE should be made public, because it permutes how transactions are hashed. Since the passphrase determines the private key of the account containing the initial native tokens, however, you should obviously move those tokens to a different account before announcing your new network to other people.

If you want the technical details, have a look at TransactionSignaturePayload in Stellar-transaction.x. You can see that any time a transaction hash or signature payload is computed, the computation involves a networkId, which is the SHA256 hash of the network passphrase.

  • I was wondering more about the technical aspects of how the passphrase is used. i.e. what a node armed with a specific NETWORK_PASSPHRASE does with it.
    – B.Li
    Oct 8, 2018 at 16:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.