# Cryptocurrency Wallets

## What are cryptocurrency wallets used for?

Cryptocurrency wallets are used to:

1. 'Store' and exchange cryptocurrency - tokens or cryptocurrencies are actually stored as records on the blockchain itself, but they are associated with a user's private key, which is stored in a cryptocurrency wallet.&#x20;
2. Authorize transactions on a blockchain&#x20;

There are many different wallets available, many of which are built to be compatible with a specific blockchain like Ethereum or Bitcoin. You can choose to use a [hardware wallet](#hardware-wallets) (discussed below), use only software or web-based wallets, or use a combination of both.&#x20;

Cryptocurrency wallets are used in decentralized, peer-to-peer environments that have no central oversight or source of authority. Because of this, trust mechanisms are built into wallet functionality. Methods and implementations vary, but most cryptocurrency wallets use cryptographically seeded public-private key-pairs that serve as a way for users to identify themselves and safely validate and authorize transactions on the blockchain. The public key serves as their address in a network, and their private key **(which should never be shared)** serves as as a method for authorizing transactions. It serves as your digital signature. In EW-DOS, the user's public key is used as the identifier in their DID that is anchored on the blockchain. You can read more about this [here](https://github.com/satoshilabs/slips/blob/master/slip-0044.md).&#x20;

{% hint style="info" %}
You should never lose track of or share your private key(s) with anyone. Anyone with access to the private key can access the funds of that key's account.&#x20;
{% endhint %}

Regardless of your choice of hardware wallet, we highly recommend that you use [MetaMask](https://metamask.io/) when developing with or using EW-DOS. MetaMask is a browser-based cryptocurrency wallet. It is both an Ethereum-compatible wallet and a gateway for using decentralized applications built on [Ethereum-based blockchains like the Energy Web Chain](ethereum). We discuss MetaMask's functionalities [below.](#metamask)&#x20;

## Multisignature Wallets

A multi-signature wallet is a [smart contract](https://ethereum.org/en/developers/docs/smart-contracts/) that allows multiple parties to agree on transactions before execution. It is analogous to a joint bank account.

One pain point of "traditional" crypto wallets is that anyone who has access to the wallet's private key has total authority over the wallet’s funds: they can move funds or perform transactions with no limitations or accountability.&#x20;

If an account is managed by multiple people, each person knows the private key and can therefore make transactions at their discretion without group consensus. Risk remains even if an account is managed only by one person. In this case, if the private key is stolen, someone else now has total control over the wallet and the funds in it.&#x20;

A multi-signature addresses these pain points. You can set multiple owners for a wallet and the number of minimum confirmations needed to perform transactions. It gives robust security for private users and businesses. Some benefits include:&#x20;

* No single-point-of-failure: If your wallet has 3 owners and 2 confirmations are needed to execute a transaction (2-­of-­3 scheme), and one of the private keys gets stolen or lost, the funds can still be accessed, or the compromised owner's address can be removed or changed. A wallet with 2-­of-­3 scheme can tolerate 1 failure, a wallet with 3-­of-­5 scheme can tolerate 2, etc.
* Accountability: No more insider theft. The transaction history, details, and the approvers of a transaction can be viewed.
* Daily withdrawal limit: an amount can be determined that can be withdrawn daily without confirmations
* Ease of use: less operational burden than a hardware wallet

There are a number of multi-signature wallets for the Ethereum network. One of the most widely used is the Gnosis Safe Multisig. You can view the smart contracts for Gnosis Safe [here](https://github.com/gnosis/safe-contracts).&#x20;

## Related Content

{% content-ref url="../community-resources/using-the-energy-web-chain/connect-trezor-hardware-wallet" %}
[connect-trezor-hardware-wallet](../community-resources/using-the-energy-web-chain/connect-trezor-hardware-wallet)
{% endcontent-ref %}

{% content-ref url="../ew-dos-technology-components-2023/trust-layer-energy-web-chain/ewc-guides-and-tutorials/connect-to-energy-web-chain-main-network-with-metamash" %}
[connect-to-energy-web-chain-main-network-with-metamash](../ew-dos-technology-components-2023/trust-layer-energy-web-chain/ewc-guides-and-tutorials/connect-to-energy-web-chain-main-network-with-metamash)
{% endcontent-ref %}

