// Command line commands 
**Address**

shh-keygen --> will create two files 
1. key1 - is the private key
2. key1.pub - is the public key 

cat key1 // see what inside the file 
sha256sum key1.pub // will hash and generate the address 

//convert this HEX message to ASCII text in your command line by typing the following:
echo 5468652054696d65732030332f4a616e2f32303039204368616e63656c6c6f72206f6e206272696e6b206f66207365636f6e64206261696c6f757420666f722062616e6b73 | xxd -r -p

echo this text is going to hash > fileName.txt // creating the file with the string added 
cat fileName.txt // read the txt file 
sha256sum fileName.txt // checking the hash of the file 
--> Other Hash functions: MD5 SHA256 SHA1 SHA2

RSA keys
openssl genrsa -out rsa.private 1024 // generate private key name file rsa.private 
openssl rsa -in rsa.private -out rsa.public -pubout -outform PEM // To generate the public key

**Python commands** 

Python --version // Check Phyhon version 
int (0x0f2217) --> 991767 // convert to number 
hex(3984239487239482934723947) // convert to hex number 
.zfill(64) // adding zeros 

Python3 // loging to pyhton consol 

**Web3 lib**
from web3 import IPCProvider, web3 // 
w3 = Web3(IPCProvider)) 
w3.eth. // tab twise to check the commands 
we.eth.getBlock(blockNumber)["function"] // for exanmple getting the difficulty of  block 
myBlock = w3.eth.getBlock(987654)
print = (*myBlock.item(), sep='\\n') // print the block with seperation easy to read 

Once you connect/SSH to your Ubuntu machine, run the following commands to install some packages and libraries that we will need

sudo apt-get install (to install APT - Advanced Package Tools)

sudo apt-get update (for updating a package)

sudo add-apt-repository ppa:ethereum/ethereum (to install the ethereym repository repository)

sudo apt-get update (to update the package)

sudo apt-get install ethereum (to install the latest version of Ethereum Go/Geth)

We are now ready to go! Now that we have installed Geth, you can take a look at the help option by typing

geth –help.

geth — syncmode=fast // synchronize the node you have 3 types: fast light , full.

geth attach // JS console

eth and double tab will auto fill the commends

eth.getBlock(blockNumber) // get block info

eth.getBlock(blockHash // same as block number gets the info

eth.getBlock(blockNumber, true) // adding transactions info