Tangle Network
The Tangle Network is a specialized platform engineered to support and govern cross-chain Zero-Knowledge (ZK) applications. Leveraging the robust Substrate blockchain framework, the Tangle Network forms the core infrastructure to facilitate a new generation of privacy-enhancing and governance-decentralized applications.
The Tangle Network's unique offering centers around the intersection of cross-chain functionality, familiar EVM tooling and compatibility, advanced governance systems, and the world of ZK applications. Our network seamlessly merges these distinct elements, creating an ecosystem that amplifies the strengths of each component.
Server preparation
apt update && apt upgrade -y
apt install curl iptables build-essential git wget jq make gcc nano tmux htop nvme-cli pkg-config libssl-dev libleveldb-dev libgmp3-dev tar clang bsdmainutils ncdu unzip llvm libudev-dev make protobuf-compiler -y
Binary and config
cd $HOME
sudo mkdir -p $HOME/.tangle && cd $HOME/.tangle
sudo wget -O tangle https://github.com/webb-tools/tangle/releases/download/v1.0.0/tangle-default-linux-amd64
sudo chmod 744 tangle
sudo mv tangle /usr/bin/
sudo tangle --version
# 0.5.0-e892e17-x86_64-linux-gnu
sudo wget -O $HOME/.tangle/tangle-mainnet.json "https://raw.githubusercontent.com/webb-tools/tangle/main/chainspecs/mainnet/tangle-mainnet.json"
sudo chmod 744 ~/.tangle/tangle-mainnet.json
Change Name on telemery "your_node_name"
yourname=your_node_name
sudo tee /etc/systemd/system/tangle.service > /dev/null << EOF
[Unit]
Description=Tangle Validator Node
After=network-online.target
StartLimitIntervalSec=0
[Service]
User=$USER
Restart=always
RestartSec=3
LimitNOFILE=65535
ExecStart=/usr/bin/tangle \
--base-path $HOME/.tangle/data/ \
--name $yourname \
--chain $HOME/.tangle/tangle-mainnet.json \
--node-key-file "$HOME/.tangle/node-key" \
--port 30333 \
--validator \
--no-mdns \
--telemetry-url "wss://telemetry.polkadot.io/submit/ 1"
[Install]
WantedBy=multi-user.target
EOF
Generate and Store Keys
Create new seed from metamask, save them.
KEY="your seeds 12 word"
tangle key insert --base-path $HOME/.tangle/data/ \
--chain tangle-mainnet \
--scheme Sr25519 \
--suri "$KEY" \
--key-type acco
tangle key insert --base-path $HOME/.tangle/data/ \
--chain tangle-mainnet \
--scheme Sr25519 \
--suri "$KEY" \
--key-type babe
tangle key insert --base-path $HOME/.tangle/data/ \
--chain tangle-mainnet \
--scheme Sr25519 \
--suri "$KEY" \
--key-type imon
tangle key insert --base-path $HOME/.tangle/data/ \
--chain tangle-mainnet \
--scheme Ecdsa \
--suri "$KEY" \
--key-type role
tangle key insert --base-path $HOME/.tangle/data/ \
--chain tangle-mainnet \
--scheme Ed25519 \
--suri "$KEY" \
--key-type gran
Start node
sudo systemctl daemon-reload
sudo systemctl enable tangle
sudo systemctl restart tangle
Check logs
sudo journalctl -u tangle -f -o cat
Check node
https://telemetry.polkadot.io/#list/0x44f68476df71ebf765b630bf08dc1e0fedb2bf614a1aa0563b3f74f20e47b3e0
Create Wallet
https://polkadot.js.org/apps/?rpc=wss://rpc.tangle.tools#/staking
Get Key to staking validator
curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "author_rotateKeys", "params":[]}' http://localhost:9944
If you get a similar result, then everything is great {"jsonrpc":"2.0","result":"0xa0very0long0hex0string","id":1} - copy the key (in bold) we will need it in the next step
Setup via Validator Tab
Go to the polkadot website and first create wallet account
For stash we configure Set on-chain Identity for identification
We create a validator. To do this, select Network - Staking - Accounts - Validator
As soon as a place among the validators becomes available, you will appear in the Staking Overview tab, but for now you can find yourself on the Waiting tab
Backup your validator node
IMPORTANT - save the keys located in , You can use MobaXterm or WinSCP or Terminus
Save folder: /root/.tangle/data/chains/tangle-mainnet/keystore/
Save file: /root/.tangle/node-key
Delete your node
systemctl stop tangle && \
systemctl disable tangle && \
rm /etc/systemd/system/tangle.service && \
systemctl daemon-reload && \
cd \
rm -r .tangle
Upgrade version
sudo systemctl stop tangle
wget -O tangle https://github.com/webb-tools/tangle/releases/download/v1.0.11/tangle-default-linux-amd64 && chmod +x tangle
sudo rm -rf /usr/bin/tangle
sudo mv tangle /usr/bin/
sudo tangle --version
sudo systemctl daemon-reload
sudo systemctl restart tangle
sudo journalctl -u tangle -f -o cat