CrossFi’s vision is that decentralization is not a myth, but as an ecosystem, bridging the gap between DeFi and traditional finance and interaction with TradFi implies certain limits and requires partnerships with traditional financial institutions when it comes to crypto-fiat liquidity flow.
CrossFi ecosystem is built on three flagship piles:
CrossFi APP.
It is a non-custodial banking app, where one can open fiat and cryptocurrency accounts, buy, sell and exchange digital assets, make transfers, issue debit cards of leading payment systems. The functionality of CrossFi APP became possible through partnerships with major TradFi players, such as Brazil-based VSK Co. and Dubai-based Bankraft.
CrossFi xAPP.
Integrated with LayerZero and Sushi, this Dapp enables crypto asset exchange and cross-chain transactions, enabling passive income through farming and liquid derivatives staking.
CrossFi Foundation
is a non-profit organization, aimed at scaling the Cross Finance ecosystem. The Foundation's goal is to motivate users to contribute to the ecosystem's development, offer ideas, create products, or just spread the word about them.
CrossFi Chain is a blockchain with a modular architecture consisting of two main parts, Cosmos and EVM. The Cosmos part is responsible for blocks creation and confirmation, transactions and new coins issuance. The EVM part is responsible for interacting with smart contracts and creating Dapps.
Thus, at CrossFi works in two directions while relying on a decentralized network, develop own blockchain and support the creation of Dapps based on it. On the other hand, CrossFi leverages TradFi's constraints when developing a universal financial app that allows you to interact with crypto and fiat in one window.
Guide
Software Requirements : go1.21+ required , git.
Hardware : min. 4 cores + 8 GB RAM + 400 GB SSD
# System update/upgrade
sudo apt update
sudo apt-get install git curl build-essential make jq gcc snapd chrony lz4 tmux unzip bc -y
# go installation/update
sudo rm -rf /usr/local/go
curl -L https://go.dev/dl/go1.21.6.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bash_profile
source .bash_profile
# Binary installation
cd $HOME
mkdir -p $HOME/go/bin
wget https://github.com/crossfichain/crossfi-node/releases/download/v0.3.0-prebuild3/crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz && tar -xf crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz
tar -xvf crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz
chmod +x $HOME/bin/crossfid
mv $HOME/bin/crossfid $HOME/go/bin
rm -rf crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz $HOME/bin
# node init
crossfid config chain-id crossfi-evm-testnet-1
crossfid config keyring-backend test
crossfid config node tcp://localhost:26657
git clone https://github.com/crossfichain/testnet.git
mv $HOME/testnet/ $HOME/.mineplex-chain/
# node moniker config
crossfid init "you_moniker" --chain-id crossfi-evm-testnet-1
# Genesis and addrbook download
wget -O $HOME/.mineplex-chain/config/genesis.json https://testnet-files.itrocket.net/crossfi/genesis.json
wget -O $HOME/.mineplex-chain/config/addrbook.json https://testnet-files.itrocket.net/crossfi/addrbook.json
# Pruning config (optional)
sed -i -e "s/^pruning *=.*/pruning = \"custom\"/" $HOME/.mineplex-chain/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" $HOME/.mineplex-chain/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"50\"/" $HOME/.mineplex-chain/config/app.toml
# Seed and peer config
SEEDS="dd83e3c7c4e783f8a46dbb010ec8853135d29df0@crossfi-testnet-seed.itrocket.net:36656"
PEERS="66bdf53ec0c2ceeefd9a4c29d7f7926e136f114a@crossfi-testnet-peer.itrocket.net:36656,5ebd3b1590d7383c0bb6696ad364934d7f1c984e@160.202.128.199:56156,b88d969ba0e158da1b4066f5c17af9da68c52c7a@65.109.53.24:44656"
sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.mineplex-chain/config/config.toml
# configure minimum gas prices
sed -i 's|minimum-gas-prices =.*|minimum-gas-prices = "10000000000000mpx"|g' $HOME/.mineplex-chain/config/app.toml
# create service
sudo tee /etc/systemd/system/crossfid.service > /dev/null << EOF
[Unit]
Description=CrossFi Node
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME/.mineplex-chain
ExecStart=$(which crossfid) start --home $HOME/.mineplex-chain
Restart=on-failure
RestartSec=5
LimitNOFILE=10000
[ Install]
WantedBy=multi-user.target
EOF
# Snapshot
crossfid tendermint unsafe-reset-all --home $HOME/.mineplex-chain
if curl -s --head curl https://testnet-files.itrocket.net/crossfi/snap_crossfi.tar.l z4 | head -n 1 | grep "200" > /dev/null; then
curl https://testnet-files.itrocket.net/crossfi/snap_crossfi.tar.lz4 | lz4 -dc - | tar -xf - -C $HOME/.mineplex-chain
else
echo no have snap
# Service enable and start
sudo systemctl daemon-reload
sudo systemctl enable crossfid
sudo systemctl start crossfid && sudo journalctl -u crossfid -f
# check node sync
curl -s localhost:26657/status | jq .result.sync_info
# Create wallet - dont forget to store see phrase !!!!
crossfid keys add wallet
# or import wallet
crossfid keys add wallet --recover
# Create validator
crossfid tx staking create-validator \
--amount=1000000mpx \
--pubkey=$(crossfid tendermint show-validator) \
--moniker="your_moniker" \
--chain-id=crossfi-evm-testnet-1 \
--commission-rate=0.10 \
--commission-max-rate=0.20 \
--commission-max-change-rate=0.01 \
--min-self-delegation=1 \
--from=wallet \
--gas-prices=10000000000000mpx \
--gas-adjustment=1.5 \
--gas=auto \
-y
Tools and Services
Explorers https://test.xfiscan.com/
exp.geonodes.pro
RPC 194.163.148.35:14657
API 194.163.148.35:14317
Peers and seeds bf6ae47aa4746811d47d495f3ae1987118541343@65.109.93.152:26806
Live peers https://github.com/gbuchukuri/crossfi-testnet/blob/master/peers.txt
Genesis https://github.com/gbuchukuri/crossfi-testnet/blob/master/genesis.json
addrbook https://github.com/gbuchukuri/crossfi-testnet/blob/master/addrbook.json
Snapshot {24h} https://github.com/gbuchukuri/crossfi-testnet/blob/master/ge2700000.tar.gz
--security-contact="
--chain-id="crossfi-evm-testnet-1" \
--commission-rate="0.10" \
--commission-max-rate="0.20" \
--commission-max-change-rate="0.01" \
--min-self-delegation="1" \
--gas="auto" \
--gas-adjustment="1.5" \
--gas-prices="10000000000000mpx" \
--from=
State-Sync
SNAP_RPC=https://crossfi.rpc.t.anode.team:443 && \
LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); \
BLOCK_HEIGHT=$((LATEST_HEIGHT - 100)); \
TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash) && \
echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH
wget https://anode.team/unsafe-reset-all.sh && chmod u+x unsafe-reset-all.sh && ./unsafe-reset-all.sh crossfid .mineplex-chain
peers="bf6ae47aa4746811d47d495f3ae1987118541343@65.109.93.152:26806"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" $HOME/.mineplex-chain/config/config.toml
sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\"$SNAP_RPC,$SNAP_RPC\"| ; \
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$BLOCK_HEIGHT| ; \
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\"$TRUST_HASH\"| ; \
s|^(seeds[[:space:]]+=[[:space:]]+).*$|\1\"\"|" $HOME/.mineplex-chain/config/config.toml
sudo systemctl restart crossfid && journalctl -fu crossfid -o cat
https://github.com/gbuchukuri/crossfi-testnet/blob/master/ge2700000.tar.gz
Tbilisi
Georgia
GEONODES © 2023