FAIR TESTNET

Fair Member Mode

Member mode is the configuration of Fair Node ready for membership in Fair MCV protocol consensus. Memebers collect transactions from users and place them into the blocks(or votes), share these blocks with other members in order to reach consensus on transactions to execute over distributed database. They also can import off-chain data into the database through the voting process same to voting for user transactions.

Ports Configuration

The OS firewall should be configured to allow incoming TCP connections for ports 11002 (Fair p2p protocol). If a machine running Node is connected to the Internet through a router, then a user needs to configure port forwarding (NAT) for TCP 11002 port in router's settings. Check your router manual for specific instructions.

Run UOS Nexus

Nexus is the core network system of UOS Nexus and among other functions responsible for authentication and authorization for all supporting decentralized platforms.

Follow this link for installation instuctions of UOS Nexus

Use 'run' command to start UOS Nexus:

nexus run

and remember its unique name from console output:

UOS Nexus
Name    : 
Version : 1.0.0
Zone    : Test
Profile : 

Prepare a Key

The key is a cryptographic public/secret key pair similar to crypto accounts widely used in blockhain technology.
But unlike most networks, in MCV-based protocols it doesn't represent an account itself but rather acts as a password for the user.
If you don't have a crypto keys in Nexus yet, create a wallet with at least one key using the GUI or CLI commands below:

nexus> wallet c name=my123 keys=1 password=MyStrongSecret!@#$%^&*()

Unlock the wallet if it's locked

nexus> wallet u name=my123 password=MyStrongSecret!@#$%^&*()

Reveal and rememeber your public key:

nexus> wallet lk name=my123

Start Fair Node

Now, we need to create a user in Fair net. For this we need to connect to the net by running Fair Node instance:

fair node run

Create Fair User

Open a new console and use fair command-lime executable to connect to Fair net for choosing available user name, use the command below to check name availability

fair user e name=<your-user-name>

Request authentication for Fair Node application to send transactions to Fair net on behalf of the chosen user name

nexus> key ra public=<your-public-key> user=satoshi net=fair.rdn application=<your-nexus-name>

Find the session to confirm

nexus> key lpa public=<your-public-key>

Confirm authentication

nexus> key ca public=<your-public-key> session=<nexus-session> trust=AlwaysAllow

Create a user in the Fair net using the chosen name

fair user c owner=<your-public-key> by=<your-user-name>

Now, you have got your own user account in the Fair net

Stop Fair Node

We need to stop Fair Node to make further configurations:

fair> exit

Configure Fair Node

Configure the generator function using created user name which becomes a candidate for Fair consensus membership. Find and open the following file:

/Uccs.Fair.FairNode/Node.settings

and make the changes below:

...
Mcv
{
	Membership
	{
		Generator = 
		Beneficiary = 
	}
}
...

Run Fair Node

Run Fair Node again using the same command:

fair node run

Conclusion

Now, Fair Node automaticaly sends candidacy declaration transactions in order to place itself to the memebers waitlist:
You can check whether the user is already member or still in pending state using the command below:

fair user m name=<your-user-name>