<p>If you are, or plan to be a Stacks token holder, you need to think about how you
can manage your tokens. How can you review your token balance or send and
receive your tokens? You manage your tokens through a <strong>cryptocurrency wallet</strong>.</p>
<p>Unlike the wallets you carry physical money in, a cryptocurrency wallet doesn’t
hold your tokens. Your tokens are recorded by transactions which are themselves
encrypted on the Stacks blockchain. The cryptocurrency wallet holds software
keys. You use these keys and some software to interact with the blockchain and
gain use of your tokens.</p>
<h2id="token-flow-and-wallets">Token flow and wallets</h2>
<p>Tokens move from one wallet to a another via the blockchain. For example, say
Lena decides to buy a book from Bitbooks, a company that accepts tokens. A
complete purchase, has the following general steps:</p>
<p><imgsrc="images/key.png"alt=""/></p>
<h2id="large-scale-or-institutional-token-holders">Large-scale or institutional token holders</h2>
<p>Just as you don’t keep all the money you have in your bank in a physical wallet,
you shouldn’t keep large amounts of tokens in your cryptocurrency wallet.
Instead, if you have a large number of crypto assets, you should store them with
a custodial service. Custodial services protect your token holdings using
high-security systems.</p>
<p>Custodial services have different techniques for storing crypto assets.
The techniques vary according to factors such as the liquidity level you want to
maintain or the security you would like. If you own large numbers of token
assets as an investment, you should choose a custodial service as if you were
selecting any investment service. Consider your needs, the firm’s reputation,
fees, and so forth.</p>
<divclass="uk-alert-danger"uk-alert=""><b>Warning:</b> None of our ecosystem entities, Blockstack PBC,
Blockstack Signature Fund, and Blockstack Token LLC, are custodial services.
Neither the pre-genesis software wallet or the upcoming wallet are recommended for
institutional holdings.</div>
<p>Blockstack suggests a firm such as <ahref="https://custody.coinbase.com/">Coinbase
Custody</a> for institutional holders. Coinbase
Custody charges its clients a management fee based on assets. Of course, like
any responsible asset holder, you should do your own research and select a
service that meets your needs. The Investopedia’s article <ahref="https://www.investopedia.com/news/what-are-cryptocurrency-custody-solutions/">What Are Cryptocurrency
Custody
Solutions?</a>
is one place to start.</p>
<h2id="choosing-a-cryptocurrency-wallet">Choosing a cryptocurrency wallet</h2>
<p>You can choose among different types of cryptocurrency wallets. There are mainly
two types of wallets, software and hardware.</p>
<p>Software wallets run as programs on a computer desktop/tablet, online (web), or
mobile phone. Desktop software wallets are downloaded to one computer. Because
they are on one system, they are vulnerable to theft either of the computer
itself or through computer hacking. Computer viruses can also impact desktop
wallets.</p>
<p>Similarly, mobile wallets are, but they also tend to be smaller and simpler.
Online wallets run over the web and are accessible from any networked device,
computer or phone. However, online wallets are vulnerable to hacking as well and
also rely on third-party service providers who themselves may also be
vulnerable.</p>
<p>Hardware wallets store your seed and addresses on a device like a USB. To use
these wallets, you connect them to a networked computer, enter a pin, and
communicate to send and receive tokens across the web.</p>
<p>Unlike a pure software wallet, hardware wallets can be disconnected and placed
offline in a secure physical location like a bank deposit box. For this reason,
hardware offers another level of security that software wallets don’t have.
Blockstack suggests that you use a hardware wallet such as
<ahref="https://trezor.io/">Trezor</a> or <ahref="https://www.ledger.com/">Ledger</a>.</p>
<p>Of course, you need not use a software or hardware wallet exclusively, you can
use multiple wallets choosing whichever works best for you at a specific time.
You’ll just need to transform tokens to whichever wallet you want to move.</p>
/* A CSS selector that points to your search box */
searchBox: {
selector: '#searchBox'
},
results: {
embedConfig: undefined, // {'url':undefined,'contentBlock':'.page-content-body'}, // if url is given the page will change to that URL and look for the content block there to insert the results
fullScreenConfig: undefined, // {trigger: '#ss360-search-trigger', caption: 'Search this site'}, trigger is the CSS selector to the element that starts the search full screen overlay and searchCaption the caption on the full screen search page
caption: 'Found #COUNT# search results for \"#QUERY#\"', // the caption of the search results
group: true, // whether results should be grouped if content groups are available
filters: undefined,
num: 96, // the maximum number of search results to be shown
highlightQueryTerms: true, // whether to highlight the query terms in search results
moreResultsButton: "Show more results", // HTML for the more results button, all results will be shown if this is null
noResultsText: 'Sorry, we have not found any matches for your query.', // the text to show when there are no results
queryCorrectionText: 'Did you mean "#CORRECTION#"?',
searchQueryParamName: 'ss360Query', // the name of the search query parameter
linksOpenNewTab: false, // should clicking on the result links open a new tab/window?
showSearchBoxLayover: true, //whether to show search box in search result layover
moreResultsPagingSize: 12, // the number of new results to show each time the more results button is pressed (max: 24)
orderByRelevanceText: "Relevance" // the text to be shown in order select box to describe 'order by relevance' option
},
suggestions: {
show: true, // whether to show search suggestions
maxQuerySuggestions: 3, // the maximum number of query suggestions
querySuggestionHeadline: undefined, // the headline of the query suggestions, leave blank if no headline should be shown
emptyQuerySuggestions: undefined,
showImages: false, // show images in search suggestions
num: 6, // the maximum number of search suggestions to be shown
minChars: 3, // minimum number of characters before the suggestions shows, default: 3,
maxWidth: 'auto', // the maximum width of the suggest box, default: as wide as the input box, at least 275px
throttleTime: 300, // the number of milliseconds before the suggest is triggered after finished input, default: 300ms
extraHtml: undefined, // extra HTML code that is shown in each search suggest, you can even show values of datapoints here,
highlight: true, // whether matched words should be highlighted, default: true
},
smart404: { /* The caption of the search results. */
caption: 'These links might be useful', /* The string in the title that identifies the page as a 404 page. */
identifier: 'Page not found', /* A CSS selector that points to the area in which the alternative links should be shown. */