tBTC

Market Cap: 0
Total Supply: 0
Price: 0
ATH: 0
1H: 0
24H: 0
7D: 0
tBTC Logo for large screen

How to Use the tBTC dApp

  • Make sure you have Metamask installed

  • Get some ETH from Coinbase or another source (to pay for gas) if you don't have any already

  • Make sure you have some ETH in your Metamask wallet

Template tBTC App for large screen

Future of KEEP

Keep is a privacy layer for Ethereum.

Keep’s philosophy is rooted in the idea that people should have the freedom to make their own choices, and that markets based on incentives produce better results than tightly regulated structures where behavior is strictly prescribed.


KEEP, a work token, owes its design to these values. It offers holders the latitude to make their own decisions about which ideas to participate in and how many tokens to commit. Some will participate in every app, and others will devote themselves to one or two.


The Keep team doesn’t pick winners or losers among apps or force token holders into certain actions. Keep team confident that in the aggregate, the ecosystem they are building will create value for everyone.

Flag Keep
Logo tBTC

Trustlessness in tBTC

tBTC - The Safe Way to Earn with Your Bitcoin

The team at Keep has thought hard about how to provide true randomness, and therefore trustlessness. The random beacon is designed as an engine that can power many apps addressing many different use cases.


In tBTC, it provides the key component that ensures users’ BTC is safe when deposited — that they can trust the system without having to trust middlemen, because there are no middlemen. Keep believe in privacy and in finance as human rights, and in tBTC, they are demonstrating that they can strengthen one another.

The Keep Random Beacon

A foundational stand-alone component of the Keep Network

The Keep Network requires this trusted randomness: the Beacon selects providers for each new keep, an off-chain container for private data.


But the Random Beacon’s utility goes far beyond Keep. The Beacon will be able to serve any decentralized application (dApp) that needs the same level of decentralization and reliability. Keep Network team also written a few posts on foundational components for the beacon — threshold signatures, distributed hash tables, and libp2p, to name a few.

Random Beacon

  1. Create a wallet and export Keystore file
  2. Get tokens from the faucet, delegate stake and authorize contracts
  3. Create Infura account and write down the RPC URLs
  4. Configuration of the VPS
  5. Create all directories and files used by KEEP
  6. Run docker container and check the logs

Configuration of the VPS

  1. Login to your server using your favorite SSH client, add firewall rules for SSH and KEEP client and enable the firewall.

                                
    sudo ufw allow 22/tcp
    sudo ufw allow 3919/tcp
    sudo ufw allow 3920/tcp
    yes | sudo ufw enable
                                
                            
  2. After that, we have to install docker-engine on the server

                                
    sudo apt-get update
    sudo apt-get remove docker docker-engine docker.io
    sudo apt install docker.io curl -y
    sudo systemctl start docker
    sudo systemctl enable docker
    sudo docker --version
                                
                            
  3. Create all directories and files used by KEEP

                                
    mkdir -p $HOME/keep-client/config
    mkdir -p $HOME/keep-client/keystore
    mkdir -p $HOME/keep-client/persistence
    
    # Get your server's IP
    export SERVER_IP=$(curl ifconfig.me)
    # Change with your ID from Infura.
    export INFURA_PROJECT_ID="PLACE_HERE_YOUR_INFURA_PROJECT_ID"
    # Change with your ETH Wallet.
    export ETH_WALLET="PLACE_HERE_YOUR_ETH_WALLET"
    
    
    cat <<EOF >>$HOME/keep-client/config/config.toml
    # Ethereum host connection info.
    [ethereum]
    URL = "wss://ropsten.infura.io/ws/v3/$INFURA_PROJECT_ID"
    URLRPC = "https://ropsten.infura.io/v3/$INFURA_PROJECT_ID"
    # Keep operator Ethereum account.
    [ethereum.account]
    Address = "$ETH_WALLET"
    KeyFile = "/mnt/keystore/keep_wallet.json"
    # Keep contract addresses configuration.
    [ethereum.ContractAddresses]
    KeepRandomBeaconOperator = "0xC8337a94a50d16191513dEF4D1e61A6886BF410f"
    TokenStaking = "0x234d2182B29c6a64ce3ab6940037b5C8FdAB608e"
    KeepRandomBeaconService = "0x6c04499B595efdc28CdbEd3f9ed2E83d7dCCC717"
    # Keep network configuration.
    [LibP2P]
    Peers = ["/dns4/bootstrap-1.core.keep.test.boar.network/tcp/3001/ipfs/16Uiu2HAkuTUKNh6HkfvWBEkftZbqZHPHi3Kak5ZUygAxvsdQ2UgG",
    "/dns4/bootstrap-2.core.keep.test.boar.network/tcp/3001/ipfs/16Uiu2HAmQirGruZBvtbLHr5SDebsYGcq6Djw7ijF3gnkqsdQs3wK",
    "/dns4/bootstrap-3.test.keep.network/tcp/3919/ipfs/16Uiu2HAm8KJX32kr3eYUhDuzwTucSfAfspnjnXNf9veVhB12t6Vf",
    "/dns4/bootstrap-2.test.keep.network/tcp/3919/ipfs/16Uiu2HAmNNuCp45z5bgB8KiTHv1vHTNAVbBgxxtTFGAndageo9Dp"]
    Port = 3919
    # Override the node’s default addresses announced in the network
    AnnouncedAddresses = ["/ip4/$SERVER_IP/tcp/3920"]
    # Storage is encrypted
    [Storage]
    DataDir = "/mnt/persistence"
    EOF
    
                                
                            
  4. After that copy content of your keep-wallet.json and paste a wallet file on the server

                                
    nano $HOME/keep-client/keystore/keep_wallet.json
                                
                            
  5. Run docker container and check the logs

                                
    # You can set password permanently in VPS user's profile
    echo "export KEEP_CLIENT_ETHEREUM_PASSWORD=your_eth_wallet_password" >> ~/.profile
    
    # OR use a temporary environment variable
    export KEEP_CLIENT_ETHEREUM_PASSWORD="your_eth_wallet_password"
    
    sudo docker run -dit \
    --restart always \
    --volume $HOME/keep-client:/mnt \
    --env KEEP_ETHEREUM_PASSWORD=$KEEP_CLIENT_ETHEREUM_PASSWORD \
    --env LOG_LEVEL=debug \
    --name keep-client \
    -p 3920:3919 \
    keepnetwork/keep-client:latest --config /mnt/config/config.toml start
    
    # To access the logs
    sudo docker logs keep-client -f
    
    # To exit the logs 
    CTRL+C or COMMAND+C