Tezos Wallet Documentation

A complete guide to Tezos Wallet: learn how it works, how to build on it, and how to use its unique features.

Background image

# Introduction

Tezos is a blockchain network of computers that enables users to perform tasks in an open, transparent, and secure manner. As a user of a Tezos wallet, you may be accessing the platform for various reasons. You might use the wallet to make payments, send and receive the Tezos cryptocurrency (tez, symbol ꜩ, or ticker XTZ), or for authenticating your identity securely on supported web applications. It’s similar to logging in with a username or email address, but using Tezos guarantees more privacy and security.

Another common use case for Tezos wallets is the ability to create and manage your own digital assets, also known as tokens. Additionally, you can execute smart contracts, which are self-executing contracts with the terms of the agreement directly written into code. Smart contracts run in a decentralized manner and are resistant to censorship, ensuring that no one can manipulate the contract’s outcome.

With Tezos, you benefit from its core properties. First, the blockchain is decentralized, meaning that all users have access to the data stored on it. This transparency ensures that anyone can make changes to the data, as long as they follow the system's rules. The Tezos blockchain is also free from central control, which allows for fairness and openness in all transactions and activities.

These features enable you to engage with a variety of tasks using Tezos. For instance, you can store data in a decentralized manner, ensuring it’s always accessible to users and protected by the blockchain. Additionally, you can use Tezos as a currency, recording transactions and maintaining agreements on the blockchain. Moreover, smart contracts give you the ability to perform decentralized computation, where the execution of programs is transparent and immune to tampering.

# Accounts

In the context of your Tezos wallet, an account acts as your digital identity, allowing you to interact with the Tezos blockchain and its decentralized applications. Your Tezos account enables you to perform a variety of tasks, such as managing tez (the native currency), storing and interacting with tokens, and authenticating yourself with applications that use Tezos for login or transactions. You can also send transactions, such as transferring tez or interacting with smart contracts, and sign messages to prove they came from you.

Each Tezos account is a unique identifier on the blockchain. The security of your account is ensured through the use of cryptographic keys. Transactions and messages are encrypted with your private key, linking all actions securely to your account. This system ensures that only you can authorize and verify actions made with your account.

Your Tezos wallet serves as your primary tool for managing your accounts. If you need help managing your account, refer to the wallet documentation for further details.


Account Addresses

Every Tezos account has a unique address that is used to identify it. These addresses usually start with tz1, but they can also begin with tz2, tz3, or tz4, depending on the method used to generate them. The address consists of 26 characters, a mix of letters and numbers.

Technically, your "account address" is the hash of your public key. This serves as a secure, unique identifier on the blockchain.


Public and Private Keys

To ensure your account’s security, Tezos uses a pair of cryptographic keys:
  • Private Key: This key allows you to "sign" transactions and messages, proving they originated from you. It must remain secure and confidential.
  • Public Key: This key is used by others to verify that a transaction or message was signed by your private key.

Generally, you don't need to interact directly with these keys, as your wallet handles the storage and security of your keys, often protected by a password.


Account Security

Important Warning

Always keep your private key and recovery information secure.

If someone gains access to your private key, they could impersonate your account, sending transactions on your behalf, including moving your tez and tokens to another address. If your wallet offers a recovery phrase, it’s crucial to keep it secret, as it can be used to regenerate your private key.

Your wallet application keeps your private keys safe, signing transactions on your behalf. Many wallets also require a password, which should be kept confidential. Additionally, some wallets provide recovery options, such as recovery phrases or private key regeneration methods. Make sure to secure these recovery options as well.

Be wary of phishing scams and malicious applications designed to steal your private key, password, or recovery information. You should never share your private key or recovery phrase, except when setting up or restoring your account in a legitimate wallet application.

# dApps

As a Tezos wallet user, you can interact with decentralized applications (dApps) that run on the Tezos blockchain. These dApps offer a variety of functionalities, providing security and privacy through your Tezos account and wallet.


What are dApps?

dApps, or decentralized applications, operate without a central authority, meaning no single entity controls them. These applications offer transparency, as all data on the Tezos blockchain is publicly accessible, although it may be complex to interpret. Since dApps run on the blockchain, they cannot be shut down or blocked, ensuring persistence. Additionally, your Tezos account remains pseudonymous, meaning no personal information is required for interaction, ensuring privacy. The security of your interactions is guaranteed by the private keys associated with your wallet, eliminating the need for traditional passwords.


Common dApp Use Cases

Tezos dApps can serve a wide range of purposes, similar to traditional web applications, but with the added benefits of decentralization. You can use them for e-commerce, where tez tokens are used for payments, or participate in Decentralized Finance (DeFi) applications offering services such as lending and borrowing. There are also decentralized exchanges (DEXs) for trading tokens, as well as games that leverage Tezos for managing in-game mechanics and assets. Digital art platforms, where creators can tokenize and sell their art, are also a popular use case. An example of a Tezos dApp is staking, which allows you to contribute tokens to support the network and earn rewards.


Using dApps Safely

When engaging with dApps, safety is a priority. Always verify the authenticity of the dApp by ensuring you're visiting the correct URL, typed directly into your browser to avoid phishing scams. It's essential to review any actions carefully before confirming them. Double-check transaction amounts and associated fees to ensure they align with your intentions. For maximum security, consider using a hardware wallet and follow best practices for safeguarding your private key and recovery information. After completing a transaction, verify its status using a blockchain explorer. Finally, make sure you are interacting with the correct account, as some dApps might not allow easy switching between accounts.

By adhering to these guidelines, you can safely interact with dApps on Tezos and fully leverage the potential of decentralized applications.

# Bakers

Baking involves the process of generating new blocks in our blockchain. The baking process is handled by executable programs working alongside nodes. These bakers cooperate to decide the next block, validate pending operations, package them, sign, and propose the new block to others. They also verify the validity of blocks proposed by other bakers.

Bakers are run on behalf of user accounts. Essentially, users running the bakers' daemons are the bakers.


Using dApps Safely

The protocol selects bakers to create blocks in a set cycle.

It also picks bakers to validate blocks created by others and issue attestations for validity.

The first baker has a set amount of time (a round) to create the block. If they fail, the next baker in line has the opportunity to bake the block.

Validators check the block's accuracy and issue attestations in upcoming blocks.

The cycle repeats until a full set of blocks is created.


Becoming a Baker

To bake, create an account acting as a delegate—an account authorized to bake and validate blocks. Delegates temporarily stake a security deposit of tez to ensure proper behavior. Tez can be unstaked after a set number of cycles, but it may be slashed if rules are violated.

Baking power is based on the amount of tez staked. The more tez staked, the higher the chance of being selected to bake or validate. A delegate must have at least 6,000 tez to bake.

Delegates also influence governance based on their voting power, which is proportional to staked tez.

Bakers need to run a Tezos node and daemon, ensuring a stable power source and internet connection to maintain rewards and avoid inactivity.


Staking with a Baker

If you lack enough tez to bake or prefer not to run a baking node, you can delegate your tez to a baker and receive a share of their rewards. For instructions, refer to our Staking guide.


Delegating to a Baker

Originally, delegating was the main way to earn rewards by entrusting tez to a baker. While delegating still works in this way, it now serves as a prerequisite for staking. The protocol now automatically rewards stakers.

# Smart contracts

A smart contract is a blockchain-based code that contains instructions for execution. Once deployed, it cannot be altered, but users can trigger its execution.

Smart contracts function similarly to vending machines, where users provide cryptocurrency in exchange for goods or services. Different machines may have separate contracts for various items, and other contracts may collect payments. These contracts operate after receiving sufficient funds (Gas), and the goods’ quantities may vary, but the types remain constant.

These contracts are often used for financial tools, tokens, and projects like lending and crowdfunding. They eliminate intermediaries, reducing costs compared to paper contracts. However, smart contracts only interact with the blockchain they reside on and cannot connect to external programs. This is where decentralized applications (dApps) provide necessary interfaces.

A smart contract is made up of three components: its balance, which acts like an account to receive and send tez; its storage, where data is read or written; and its code, which includes entrypoints that can be called by external contracts or the blockchain.

Limitations of smart contracts include their inability to access external APIs or programs, modify their own code, or handle errors in the usual way. They can, however, perform computations, read and update storage, and generate operations interacting with other contracts.

Tezos smart contracts feature storage for data, callable entrypoints, a variety of data types, operations with other contracts, views for exposing data, error handling, constants, and private transactions with Sapling.

The lifecycle of a Tezos smart contract involves deployment and interactions. Deployment (origination) assigns the contract an address and persistent storage. After origination, anyone can interact with the contract through operations.

To deploy a contract, the origination process includes defining a complex parameter type, storage type, initial value, and set of instructions. Once deployed, the contract is immutable and cannot be changed or removed from the blockchain.

Smart contracts can be called by traditional accounts or other contracts, and a transaction specifies the arguments needed to trigger the contract’s execution.