💡Using Firn

Firn is easy-to-use and responsive.

In this page, we'll cover the basics of using Firn.

Feature Overview

Firn can be viewed as a general-purpose private wallet for Ethereum-based chains. Using Firn involves, roughly, three steps.

Creating an Account

Creating an account with Firn is extremely easy. Firn will never ask you to download or remember ad-hoc passcodes or aliases. Rather, your Firn account will always be controlled exclusively by some standard, regular Ethereum account, maintained by your active wallet. In other words, you don't have to store any secrets beyond your wallet's regular seed phrase (which you've already stored).

To start, on the main app page, log in using a wallet and select a network. Once you're logged in, your currently-active Ethereum account will appear at the top-right corner of the screen.

Make sure to use an Ethereum account you won't lose.

Before proceeding, make sure that you're using a secure Ethereum account, which you fully control. We recommend the use of Ledger-controlled accounts for this purpose. If you lose access to this Ethereum account, you will lose your funds.

Once you're ready, click "Enter App"; after signing a login message twice, you'll gain access to the main Firn interface. In the future, you'll only have to sign once.

Depositing Funds

Depositing funds into Firn is straightforward. Just enter an amount in the main box, and click "Deposit Privately". Your wallet will prompt you to confirm the deposit.

Firn's deposit panel.

Once you’ve logged in, you can freely switch accounts (and even wallets), while continuing to make deposits from these different accounts. The deposits will still work (and will all consolidate into your Firn account).

Withdrawing Funds

A Firn withdrawal entails removing funds from your private Firn wallet, and directing them to an external Ethereum address. Again, here, the process is straightforward: enter a destination address and an amount, and click "Withdraw Privately". The key, here, is that you should always send your funds to a fresh Ethereum account, which hasn't appeared on-chain before. Creating a new such account is straightforward in most wallets. This requirement comes from privacy; if you use an Ethereum account with history, that history can reveal information about you (defeating the purpose of using Firn).

Firn's withdrawal panel.

For similar reasons, you should not withdraw an unusual or unique amount, especially if you've previously deposited the same amount. For example, do not deposit 420.69 ETH and later withdraw this same amount (i.e., minus fees).

Sending and Receiving Funds

The best way to send funds to others is to privately send them within Firn. To receive funds from others, share your public key with them. You can even share this key publicly.

Share your public key with others to receive Firn transfers.

Symmetrically, to transfer funds, use the "Send" tab.

Transfer funds privately to other Firn users using the Send tab.

For peer-to-peer payments, Firn transfers always provide better privacy than withdrawals, since they hide the identities of the sender and receiver, as well as the amount transferred.

Further Remarks

The canonical way to use Firn is to deposit all of your active funds into Firn, and to withdraw funds on an as-needed basis. Firn should not be used as a "pass-through layer"; because of timing and amount inference, using Firn in this way will not provide strong privacy.

Interestingly, you may—and should—use your Firn account to consolidate funds from disparate Ethereum accounts. Firn’s deposits are privacy-preserving, in that consolidation behavior of this sort won’t reveal whether the relevant Ethereum accounts are controlled by the same entity or not. For more details on this technique, check out our Power-User's Guide.

Last updated