Blockstack FAQs

This is a comprehensive list of all the Blockstack FAQs.

General questions

What is Blockstack?

Blockstack is a full-stack decentralized computing network that enables a new generation of applications where developers and users can interact fairly and securely. Blockstack uses blockchain technology to build protocols and developer tools designed to enable a fair and open Internet that returns digital rights to developers and consumers. Led by some of the world’s foremost experts on distributed systems, Blockstack allows users to own their own data that they can take with them from app to app in the ecosystem, along with their Blockstack ID that eliminates the need for password-based logins. The end result is privacy, security, and freedom.

What is decentralized computing?

Decentralized computing has these attributes:

  • Personal keys for a digital life. Users will have keys that unlock all their software interactions, email, subscriptions, and social. These keys are in users’ hands and under their control similar to physical keys (in some cases they are physical). Corporations no longer create or manage these keys.
  • Security is a first-class concern. Users want systems that protect both their identity and the data associated with that identity — health, application, and relationships.
  • Convenient and auditable. Applications will be readily available as cloud applications are today but will be written with open protocols and code that allow them to be audited.
  • Innovation focused. The code and data in a decentralized computing lacks corporate and other boundaries, as a result, a global workforce can easily contribute and benefit from them.

Blockstack technology is a shift in how people use software, create it, and benefit from the internet. It puts people back in control of the computing systems that manage today’s world.

What is the Blockstack Ecosystem?

The Blockstack Ecosystem is the legal entities and community structures that support the Blockstack technology, the apps that rely on it, and the people that work with it. The ecosystem’s mission is to foster an open and decentralized Internet that establishes and protects privacy, security, and freedom for all users.

There are multiple business entities that have been created to focus on advancing the ecosystem, with plans for further decentralization:

  • Blockstack PBC is a Public Benefit Corp that drives the development of the core Blockstack protocol and developer tools. Blockstack PBC was founded in 2013 by Princeton computer scientists and after 4+ years of R&D, launched the Blockstack Platform alpha in early 2017. The Blockstack Platform is the easiest way to start building decentralized, blockchain-based applications. It provides a complete decentralized application stack, powered by the Stacks blockchain, and maintained by a open-source community.
  • Blockstack Token LLC is the entity responsible for developing and commercializing the Stacks tokens in a manner that is approved by the SEC. Blockstack Token LLC works on regulatory filings and compliance for the Stacks token. The LLC conducted the 2017 token offering to accredited investors. Stacks tokens created by Blockstack Token LLC were distributed in the genesis block of the Stacks blockchain in Fall 2018.
  • Blockstack Signature Fund I is a fund comprised of multiple VCs representing $25 million in funding that makes opportunistic investments in the ecosystem — whether it be Blockstack applications or into tools and platforms that accelerate the growth of the ecosystem. Learn more about the Signature Fund.
  • Non-profit Foundation Blockstack PBC intends to assist in the formation of a non-profit foundation dedicated to supporting fundamental digital rights and ensuring that core internet infrastructure remains decentralized. In the future, it may support people and projects with funding, research grants, or other.
  • New Internet Labs is an independent company headquartered in Hong Kong and founded by Larry Salibra, an early employee of Blockstack PBC and long-time Blockstack contributor. New Internet Labs serves as an App Reviewer as part of the App Mining program and working to develop a browser for the decentralized internet. Learn more about their efforts here.

Any person or organization working with the Blockstack technology in the open-source ecosystem is considered a part of it. Other than the above entities there are 80+ independent organization and apps built by teams of developers that are part of the Blockstack Ecosystem.

What is a decentralized internet?

We envision an internet where users control their data, and power flows back to the users. A decentralized internet was how the internet was intended to be, a place where application creators cannot sell data without a user’s authorization. Users choose which data to share and who to share it with. In a decentralized internet, no single company or organization tracks users’ activities without permission, and that permission is the users to give or to take away.

What can developers achieve with the Blockstack Ecosystem?

The Blockstack Ecosystem is working to enable developers to build software that protects users’ digital rights. This new kind of software is known as decentralized applications or DApps.

DApps use blockchain technology. Where Bitcoin is a decentralized value exchange on a blockchain, DApps use blockchain technology for more than value exchange; they use a blockchain to exchange data and support application interactions.

Decentralized applications potentially represent the next generation of computing. In an entirely decentralized world, all things occur using peer-to-peer networks, and the idea of centralized entities are non-existent. This distributed future is still being designed and built, but the early stages of development are looking promising.

What problems do Blockstack DApps solve for me as a user?

Applications developed with Blockstack’s technology run like the traditional, web applications you know. Unlike traditional, web applications, DApps avoid abusing users by adhering to the following principles:

  • Users control their data, not the application developer. If you stop using an application, the application cannot access your data. When you leave the application, you take your data with you.
  • Users determine where to store their data. You can store your data on your computer. Alternatively, you can choose highly-available commercial storage providers you trust. The providers can only host your data; it is encrypted so they cannot unlock it to view.
  • Users control which applications and which third parties can access their data. Applications ask your permission to read your data, and you can withdraw those same permissions at any time. Applications cannot sell or mine your data on behalf of a third party you are unaware of.

What problems does Blockstack solve for application developers?

  • Blockstack wraps blockchain operations in traditional REST calls. Developers can start programming using the same Javascript functionality they are currently familiar with.
  • Application data is stored off the blockchain for performance and scalability.
  • Blockstack ensures that all user data is signed and verified and (optionally) encrypted end-to-end, so users and developers can treat storage providers like dumb hard drives.
  • Developers do not host user data. Since users supply their storage and use public-key cryptography for authentication, applications don’t have to store anything–there’s nothing to steal when applications are hacked.
  • Moreover, many Web applications today can be refactored so that everything happens client-side, obviating the need for running dedicated application servers.

Who started Blockstack?

Blockstack was founded by two engineers from Princeton University, Muneeb Ali and Ryan Shea. They met at the Computer Science department at Princeton, where Muneeb was finishing his Ph.D. and Ryan was running the entrepreneurship club. In 2013, frustrated by the walled-gardens and security problems of the current internet they started working on a decentralized internet secured by blockchains. Blockstack is an open source project, and you can find the code on GitHub.

Application user questions

What is a decentralized application or DApp?

Decentralized applications or DApps are a new type of software application built with blockchain technology. Where Bitcoin is a decentralized value exchange on a blockchain, DApps use blockchain technology for more than value exchange; they use a blockchain to exchange data and support application interactions.

How do DApps differ from applications I typically use?

DApps (decentralized applications) differ from Web applications in these key ways:

  • Users have identities, not accounts. The user brings their identity to the applications; applications do not require the user to create accounts and passwords. A user can use a single identity on all applications.
  • Users determine where to store their application data. They can store their data on their computer or with a commercial cloud storage provider.
  • Users control data access. Users control access to their data. Software creators and their decentralized applications don’t keep or save your data. When a user logs into a DApp with an identity, the user gives the DApp authority to read existing data or write new data. When a user disconnects from a DApp, it no longer has access to the user data.

Do DApps work with a regular browser?

Yes! DApps run in the web browsers (Chrome, Safari, Internet Explorer, and so forth) you know today.

What is an identity or ID or Blockstack identity?

A name or identity, ID for short, is your home on the decentralized internet. Your identity is unique, like a passport number, only you have it. To use an application, you sign into the application with your identity and a secret key only you know.

Your data and where it is stored is connected with your identity. When you sign into a DApp, you give the DApp permission to read your data and write to your data store on your behalf. When you log out of an application, it no longer has access to your data or data store — until the next time you log in with your identity.

Do I need to keep my identity secret?

No. You can tell people your identity just as you tell them your name. What you need to secure and protect is your secret key.

How do I get an identity? Is it free?

Normally, registering an identity as a digital asset on the Stacks blockchain requires burning of Stacks tokens as fuel. However, Blockstack PBC is currently running a free service to pay for identities on behalf of the users. Through this service, you can get a free identity from Blockstack in the id.blockstack namespace. A namespace is similar to a domain (checklist.com, for example) on the old internet. So, a free identity has blockstack suffix in its name; for example, meepers.id.blockstack is a free Blockstack identity.

If I forget my identity or my lose my secret key, can Blockstack help me?

If you forget your identity or lose your secret key, no one else, no person, no software, can help you get your identity back. This restriction protects your identity and your secret key which together control access to data about you. In the new, decentralized internet, no one can keep and store your data but you, not even Blockstack.

You need to keep your identity and secret key in a safe, secure place you won’t forget.

Where is my identity kept?

When you create an identity, your id and your private key are hashed (encrypted) and registered on Blockstack’s blockchain. The data you create through your identity is encrypted and kept off the blockchain in your data storage.

Can Blockstack delete my Blockstack ID or deny me use of it?

No. When you’re using a Blockstack client, you control your data and ID with a private key. As long as no one gets access to your private key, no one can control your data or ID. When you use Blockstack, by design, your private keys are never sent to any remote servers.

Can I get an identity without the Blockstack in the name, like steve.id?

Yes, you can get an identity in the .id space without Blockstack in the name. For example, you can create steve.id. You can even create a different space like username.frank without the id designation. These identities (.id) are not free; they cost a small amount of Bitcoin. A space (.frank) takes some technical knowledge to create and cost more.

Can I have more than one identity?

Yes, you can create as many identities as you want.

Do identities last forever or do they expire?

Identities with the like meepers.id.blockstack or subdomain.name.namespace format do not expire. Names that have a single dot like name.namespace expire according to the rules set by the namespace creators. For example, name.id in the id namespace expires every two years and must be renewed. If a name.id expires, someone else can claim it.

Why do DApps ask me for an email in addition to an identity?

Your email is not kept by DApps or by Blockstack. It is stored in your browser client’s local web storage. (See the question about data storage for more information about web storage.) When you are logged into a DApp, it can use your email to send you any information you need to operate the DApp. When you log out, your email is no longer available to the DApp.

Where can I find Blockstack DApps that I can use?

You can see a list on the App.co site. Alternatively, you can go directly to your Blockstack Browser home page.

What is the Blockstack Browser?

The Blockstack Browser is a DApp used to create and manage Blockstack identities. To a user, it looks just like another tab in a standard browser. From the Blockstack Browser tab, you can find DApps to try, update settings related to your identity and storage – and much more.

Developers use the Blockstack Browser to handle login requests from DApps. From a Blockstack DApp, a user chooses the Log In with Blockstack button. Clicking this button sends users to a Blockstack Browser dialog. This dialog asks users to allow the DApp to access their data.

Do Blockstack DApps work with my web browser?

Yes! DApps using Blockstack run in the web browsers you know and love (Chrome, Safari, Firefox, and Edge). Blockstack DApps are web applications; they happen to use the blockchain. DApps are just as fast as traditional web applications, often more so. If you use our Web-hosted Blockstack Browser, you can get started using DApps right away.

Is there a downloadable version of the Blockstack Browser?

Yes. You can download a desktop version of the Blockstack Browser here.

What is Gaia?

The Gaia Storage System is a feature of the Blockstack Platform. Developers or organizations can use the Gaia Storage System to create a data storage provider. Users choose a data storage provider when they create an identity.

Where is the data about me kept or what is a data store?

Data about you appears in two locations, browser web storage and a data store. Web storage lives in your browser client, Chrome, Safari, and so forth. Data in web storage is sparse, it never leaves your device (computer or phone), and it is temporary. You can clear or remove your web storage just as you can your browser’s cache. Web storage data includes your email and your encrypted identity. Web storage never leaves your browser and never crosses a network to an external server.

Your Blockstack identity and any connected application data are kept in your data store. Unlike web storage, a data store has to live on a server accessible via the internet. That server is running the Gaia Storage System. The Gaia Storage System keeps the data encrypted. When you use an application, you give it permission to read and write from your data store. The application needs your permission to decrypt the data.

What kind of data does a Blockstack DApp keep about me?

Blockstack does not keep any data about you. When you login into an application, you are asked to provide an email. That email is in your browser’s web storage; it doesn’t leave your device (computer or phone). When you reset the Blockstack Browser or clear your browser’s web storage, the local storage and your email are removed.

What is a data storage provider?

A data storage provider is a person or a company that runs a Blockstack Gaia Storage System. You could, for example, run a Gaia Storage System on your own. Blockstack assumes that most users will use a commercial storage provider rather than a personal one.

Commercial storage providers typically use cloud computing services such as Digital Ocean, Amazon, or S3. These have the advantage of larger drives, regular backups, and more secure storage. Individual users can use these too, or they can use a local drive.

A Gaia Storage System has a location (URL) on the internet. The URL for a user’s storage provider is stored in their zone file. You can get a zone file with blockstack-cli lookup in the CLI. See the CLI documentation for more information about available commands.

Can I move my data from one storage provider to another?

Currently, moving your data from one storage provider to another is not supported via the UI. You can do this move with assistance from Blockstack.

Stacks Token questions

How do I check the status of my previously purchased Stacks tokens?

You may check the status of previously purchased Stacks tokens at the Blockstack Explorer. Additional wallet-related information is available here.

How do I check my STX balance?

Blockchain transactions take time. Once Stacks are sent to you, you see a PENDING transaction, which means the transaction is still being recorded by the blockchain. Your balance will not change until the transaction is recorded. It may be minutes or hours before the transaction is recorded in the blockchain.

When the transaction is complete, you can see a receipt for the transaction in your Stacks Wallet. The PENDING marker goes away once the funds are recorded on the blockchain. Then, at this point, the balance in your Stacks Wallet software should reflect the completed transaction.

Is there an exchange where I can buy and sell Stacks tokens?

Stacks tokens will be available for secondary trading on Binance's global exchange or Hashkey Pro's institutional exchange.

Only non-US persons located outside of the US are eligible to buy or sell STX on these exchanges, subject to your country's laws.

When will Stacks tokens be available on an exchange for US residents?

For US investors, there is currently no authorized exchange or alternative trading system (ATS) for buying and selling Stacks tokens, and we cannot comment on when an exchange or ATS might list Stacks tokens at this time. Please keep an eye out for updates at stackstoken.com. If you see Stacks listed on an exchange, please let us know at legal@blockstack.com, as the listing may be illegal or a scam.

If I am already a Stacks token holder, how does the listing on Binance affect me?

If I'm already a Stacks token holder, how does the listing on Binance affect me? If you are a non-US resident and your country's laws allow you to legally use Binance's global exchange, you can exchange any of your Stacks tokens that are no longer subject to a time or transfer lock.

If you cannot legally access Binance's global exchange (e.g., if you are a US resident) then this does not affect you.

Can I sell or transfer Stacks tokens directly to someone else?

It may be possible to sell or transfer Stacks directly to another person in a peer-to-peer transaction. We recommend that you consult an attorney before engaging in such a transaction, especially if buying from or selling to a US person or entity, as we cannot give you legal or regulatory advice.

How can I use Stacks within the Blockstack Ecosystem?

Stacks (STX) are the native token of the Blockstack network. Stacks are consumed when users register blockchain-based identities. In the future, we plan for users and developers to use STX to interact with Clarity smart contracts and to be paid to miners that host Blockstack nodes and secure the network.

What types of transfer or time locks are Stacks tokens subject to?

Previous and future sales of Stacks tokens are subject to two potential types of locks on use and transfer: a transfer lock and a time lock. Transfer locks are implemented where the tokens sold are considered sales of “restricted securities” under the Securities Act of 1933. Tokens subject to transfer locks are non-transferable on the Blockstack network until a one-year holding period following their sale has lapsed. A token can be burned on the network while subject to a transfer lock (provided it is not subject to a time lock), but otherwise is non-transferable.

Separately, tokens on the Blockstack network can be subject to a time lock, a general restriction that prevents a Stacks token from being used for any purpose on the Blockstack network, such that the Stacks token cannot be burned or transferred. Time locks operate such that Stacks tokens unlock in equal increments each time a pre-set number of blocks is processed on the blockchain.

What types of transfer or time locks apply to the current and future sales of Stacks tokens?

2019 Regulation A offering: Stacks tokens sold pursuant to our Regulation A offering are subject to an approximately two-year time lock from the date of the hard fork that distributes the tokens. 1/24th of the amount of tokens purchased will be released from this time lock on the date of distribution of the tokens, and an additional 1/24th will be released approximately every month. These tokens will not be subject to a transfer lock.

2019 Regulation S offering: Stacks tokens sold pursuant to our Regulation S offering to non-US institutional investors are subject to a one-year transfer lock from the date of sale and an approximately two-year time lock that unlocks on an approximately monthly basis from the date of the hard fork that distributes the tokens.

2017 Accredited Investor Sale: Stacks tokens sold pursuant to our Regulation D offering to accredited investors in 2017 are subject to an approximately two-year time lock that unlocks on an approximately monthly basis from the date of the genesis block, except for 50,000,000 of those tokens, which are subject to an approximately four-year time lock. The tokens were previously subject to a one-year transfer lock, which has expired.

2017 Founder Sale & Equity Investor Sale: Stacks tokens sold to founders and certain stockholders of Blockstack PBC in 2017 are subject to an approximately three-year time lock that unlocks on an approximately monthly basis from the date of the genesis block.

What is the current circulating supply of Stacks?

As of June 10, 2019, 866,827,880 tokens of the 1.32B genesis block have been distributed and approximately 229,229,868 of those 866,827,880 distributed tokens have been released from their time locks. The remainder continue to be subject to time locks that release approximately monthly over approximately two, three or four year periods.

120,056,154 tokens were sold in the 2019 Reg S and Reg A offerings with an additional 40,000,000 tokens allocated for App Mining. Token distribution will proceed after the October 18, 2019 hard fork according to their corresponding time locks. For more details, please refer to the public filing with the SEC in our offering circular and to our Stacks Token Whitepaper.

How will mining affect the supply of Stacks tokens?

Mining is not currently available on the Blockstack network. As a result, we expect the supply of 1.32 billion Stacks tokens created in the genesis block to decline over time due to burning.

We hope to introduce mining in or around 2020, which may increase the token supply through the creation of tokens as mining rewards. We anticipate that the number of tokens added will be governed by a principle that we call adaptive mint and burn, which provides that a minimum number of new Stacks tokens will be created as the mining reward for each block added to the blockchain, and a number of additional tokens may also be included in the mining reward to replace tokens that have been recently burned and thereby removed from the token supply, which additional tokens we refer to as replacement tokens. The number of tokens recently burned would be calculated using a measurement algorithm that remains to be determined.

Unless the number of tokens burned exceeds the maximum number of additional tokens that can be created, or the measurement algorithm fails to accurately measure the rate at which tokens are being burned, adaptive mint and burn will result in a net number of tokens being added to the token supply each year equal to the minimum number of tokens created — which would be equal to approximately 26,298,000 tokens each year for the first five years, 21,038,400 tokens each year over the next five years, and then 15,778,800 tokens each year after that. If the token-burning activity on the network consistently exceeds the cap on token creation, however, more tokens may be burned than are replaced by the replacement tokens, and this could result in less net tokens being added to the network over time than anticipated.

In addition, the blockchain would further add to the token supply by creating 12 million new Stacks tokens a year for App Mining, and 25 million tokens and 15 million tokens the first and second year after the introduction of mining, respectively, for user incentive programs. We are considering whether these caps on the number of additional tokens should be removed at some time in the future.

For more details, please see Description of the Stacks Tokens—Creation of new Stacks Tokens in our offering circular.

What will the supply of Stacks tokens be in 2050?

There is no pre-set limit on the number of Stacks tokens that will be released over time. We anticipate that approximately 2,048,036,800 Stacks tokens will be in circulation in the year 2050 based on the assumption that mining is introduced in 2020, and fewer tokens than this estimate may be in circulation. For more details, please see Description of the Stacks Tokens—Creation of new Stacks Tokens in our offering circular.

I have a tax question about my Stacks tokens. Who should I talk to?

If you have a tax question about your Stacks tokens, we recommend you speak to an accountant or tax lawyer. If you participated in the 2017 token sale through the Blockstack Token Funds, we’ll provide you with the necessary tax reporting forms by the required deadlines, but in general, we cannot give you tax advice.

How much money has Blockstack raised?

Blockstack PBC has raised ~$75m+ from equity investments and token offerings--approximately $23.0M from two token offerings in 2019, $47.5m from a token offering in 2017, and $5.1m in equity investments.

Traditionally, venture-capital-backed startups target around 12 to 18 months of runway after a new round of financing. As of October 2019, Blockstack PBC has a projected runway until at least the end of 2021 at current burn rates.

Our audited financials are available in our offering circular.

What has been the recent traction on the network?

Blockstack PBC moved from the R&D phase to the infrastructure building phase in 2017 (upon closing of the Series A equity investment). Blockstack PBC successfully completed the launch of the Stacks blockchain in Q4 2018, meeting Milestone 1.

Since Q4 2018, we’ve been in the developer traction phase. The number of independent applications built on the network increased from 17 to 46 in Q4 2018, from 46 to 86 in Q1 2019, from 86 to 165 in Q2 2019, to 165 to 265+ apps in Q3 2019. The Blockstack network has 115,780 registered user accounts as of July 2019, and Blockstack PBC has increased focus on user acquisition during the transition from the developer traction phase to user engagement phase.

How were tokens distributed to early investors?

Accredited Investors and funds in the 2017 Reg D token offering purchased tokens at a $0.12 price. Blockstack PBC raised $47.5M in this offering.

Holders of Blockstack’s Series A convertible preferred stock—who had invested a total of $5.1 million as of late 2016 and funded Blockstack’s early growth and development before the decision to create a token, or the drafting or publication of any white papers—were also provided an opportunity to purchase tokens at a nominal price per token before the 2017 Reg D offering. This opportunity to participate at a nominal price was given in return for their early support and in proportion to their equity ownership, and it was based on their reasonable expectation as early investors that they would receive tokens if Blockstack ever decided to create a digital token.

These tokens are subject to a three-year time lock, commencing upon the introduction of the genesis block to the Blockstack network in November 2018. The tokens for founders and employees are also subject to a three-year time lock starting November 2018.

Further, affiliates of Blockstack PB,C including Union Square Ventures, Muneeb Ali, and Ryan Shea — three of the largest holders of Stacks tokens — have additional restrictions on selling tokens on the open markets.

Stacks Wallet questions

What is a seed phrase?

When you create a wallet address, you also create a seed phrase. With one significant exception, a seed phrase is similar to a banking pin in that it gives you access to your wallet and your token allocation. Unlike a pin, if you lose your seed phrase, you can never access your wallet or your token allocation ever again.

Warning: Losing a seed phrase is final and destructive. Blockstack does not keep a copy of your seed. Blockstack cannot give you a new seed, get your access to your wallet, or return your tokens if you lose your seed phrase.

Keep your seed phrase secret. Just as with a banking pin, anyone that knows or steals your seed phrase can access your allocation.

You should write your seed phrase down and store the paper you write on in at least two secure locations. A safe or lockbox is a good location. You can also store it online in an encrypted password manager such as 1Password. You should never simply store a seed phrase in Apple Cloud or Dropbox.

I have lost my seed phrase, what can I do?

Your seed phrase is a 24-word combination that was given to you during the setup of your Stacks Wallet. Unfortunately, as noted during the Stacks Wallet setup, there is no way we can recover your 24-word seed phrase for you.

How do I keep my tokens secure?

The safety of your Stacks tokens is extremely important to us. To help ensure that you complete the process of receiving your tokens correctly and securely, please read the following guidelines:

  • Website Safety: When inputting data on a website or verifying the presence of data on a website, it is essential that you confirm that the URL is correct and that your browser is using HTTPS.

  • Email Safety: Blockstack will never ask for your personal identifying information over email, or call you directly. When we ask verifying questions, we will only do so when you call us to confirm your identity. We will never ask you for money or your Seed Phrase (private key).

If you have large token holdings, make sure you take advantage of custodial services. A wallet does not provide the security of a custodial service.

Where can I access the Stacks Wallet?

The Stacks Wallet is available for download at wallet.blockstack.org.

What is a public Stacks Wallet address?

During the initial grant process, investors submitted a public Stacks Wallet address to Blockstack. This is a string of letters and numbers starting with an ‘SP’ or SM’; for example, SP017AUV5YRM7HT3TSQXJF7FCCYXETAB276BQ6XY is a wallet address.

If you purchased Stacks tokens through stackstoken.com using CoinList, you can find your address at CoinList. If you submitted your Stacks address directly to Blockstack, you can either use the Restore from Seed Phrase feature on the Stacks Wallet or contact us at hello@stackstoken.com for help.

Can I use another software wallet with Stacks?

Currently, the only software wallet that supports Stacks is the Blockstack Wallet software.

Can I use the older version 1 Blockstack Wallet?

Version 1 of the Blockstack Wallet software was a read-only wallet. To view Stacks balances, send or receive Stacks you need to use the latest version 3 wallet. You can use the seed phrase you created with the old wallet with the new version.

Can I send Bitcoin to my Stacks Wallet?

No, you cannot send Bitcoin to a Stacks address. You can only add Bitcoin as fuel to the wallet. Please follow the instructions for adding "gas".

How do I get help with my wallet from a person?

For questions or help regarding the Stacks token, you can contact us at hello@stackstoken.com.

DApp developers questions

Who should build with the Blockstack Platform?

Everyone! However, more seriously, if you are building an application in JavaScript that requires sign-in and storage, you should look at using Blockstack.

I’m a web developer. Can I build on the Blockstack Platform?

Yes! Blockstack is geared primarily towards web developers. All of your existing knowledge is immediately applicable to Blockstack. Anything you can do in a web browser, you can do in a Blockstack app.

I’m a non-web developer. Can I build on Blockstack Platform?

Yes! Blockstack implements a RESTful API which lets you interact with Blockstack from any language and any runtime. In fact, the reference client (blockstack.js) is mainly a wrapper around these RESTful API calls, so you won’t be missing much by using a language other than Javascript.

How do I get started using Blockstack to build decentralized applications?

The Zero-to-Dapp Tutorial is the best place to learn to build with Blockstack. The tutorial takes you through key aspects of building with Blockstack and takes less than 60 minutes. If you want something short and sweet, we have a Hello World that takes about 10 minutes. In the end, you’ll have a working demo and even get a free limited edition t-shirt!

What’s the difference between a web app and a Blockstack app?

Blockstack apps are built like single-page web apps — they are, in fact, a type of web application.

Blockstack apps are a subset of web applications that use Blockstack’s technology to preserve the user’s control over their identities and data. As such, they tend to be simple in design and operation, since in many cases they don’t have to host anything besides the application’s assets.

Do I need to learn any new languages or frameworks?

No. Blockstack applications are built using existing web frameworks and programming. The only new thing you need to learn is either blockstack.js or the Blockstack RESTful API.

What is the general architecture of the Blockstack Platform?

Applications built with Blockstack are serverless and decentralized. Developers don’t have to worry about running servers, maintaining databases, or building out user management systems.

Developers build an application in Javascript using the blockstack.js library. This library handles everything from identity and authentication to data storage. Applications can request permissions from users for read and write access to user resources. Data is stored off the blockchain in a storage provider running Blockstack’s Gaia Storage system. Gaia is simple and reliable and uses existing cloud infrastructure.

Under the hood, Blockstack provides a decentralized domain name system, the Blockstack Naming System (BNS). BNS is a decentralized public key distribution system and registry for apps and user identities.

What is a serverless app?

The application should not run application-specific functionality on a server. All of its functionality should run on end-points. Serverless can also mean applications where the application developer still writes some amount of server-side logic, but unlike traditional architectures, this logic is run in stateless compute containers that are event-triggered and ephemeral (may only last for one invocation).

However, applications may use some servers with the caveat that they must not be part of the application’s trusted computing base. The Gaia Storage System is part of most DApps’ computing base, but because user data is signed and verified end-to-end, the storage systems are not trusted to always serve correct data.

How does my web app interact with Blockstack?

The blockstack.js library gives any web application the ability to interact with Blockstack’s authentication and storage services. In addition, we supply a public RESTful API.

What does blockstack.js do?

This is the reference client implementation for Blockstack. You use it in your web app to do the following:

  • Authenticate users
  • Load and store user data
  • Reuse users’ public data in your application

There are also mobile libraries for iOS and Android.

How do I use blockstack.js?

Our documentation has several examples you can use to get started.

How do I register Blockstack IDs?

You should use the Blockstack Browser.

How can I look up names and profiles?

You can use blockstack.js, or you can use the public Stacks Blockchain endpoint.

What kind of scalability and performance can I expect from applications built with Blockstack?

Blockstack uses the blockchain only for name registration. Data storage is kept off-chain in the Gaia Storage System. This basic application architecture means any application can perform and scale as they do without a blockchain.

Is there a limit to the file sizes I can store in a Gaia Storage System

The file size limit is 25 MB per file.

Can I run a Gaia Storage System commercially?

Yes, you can. Anyone interested in running a Gaia Storage System can run one and make it available to users.

Is the platform private or open sourced?

The project is open-source, and anyone can contribute! The major contributors are mostly employees of Blockstack PBC. You can see the full list of contributors here: https://github.com/blockstack/blockstack-core/graphs/contributors

What programming language can I use to build these apps?

To make apps that run in the web browser using Blockstack, you can use JavaScript and any of the same web frameworks or libraries you use today such as React, AngularJs, Vue.js or jQuery. Stacks Node is implemented in Python (the next major release will be in Rust), but you can use any language you like for native apps as long as it can consume a JSON REST API.

How is Blockstack different from Ethereum for building decentralized apps?

You can think of Ethereum as a heavy blockchain that does everything for you. All the complexity is handled on-chain, computations are run there, and all scalability and security concerns must be handled at the blockchain level. Ethereum amounts to a mainframe that runs all the applications in the ecosystem.

Blockstack puts minimal logic into a blockchain and handles scalability outside of the blockchain by re-using existing internet infrastructure. Our architectural design mirrors how computing has developed; moving from mainframes to smaller networked entities.

Can Blockstack applications interact with Bitcoin? Ethereum? Other blockchains?

Yes! Since Blockstack applications are built like web applications, all you need to do is include the relevant Javascript library into your application.

Core developer questions

What is Stacks Blockchain?

Stacks Blockchain is the reference implementation of the Blockstack protocol described in our white paper. Today, it consists of these components:

  • Stacks Node: A Python backend service which reads transactions from the Stacks blockchain. This blockchain enables the Stacks Token (STX) and Blockstack Naming service.
  • Atlas: A peer network for communicating data about the Blockstack Naming System (BNS).
  • Blockstack API: A service for indexing the data stored by Stacks Blockchain and making it available in a performant way.

The next version of the Stacks Blockchain is under active development in the Rust programming language and employs our Tunable Proof-of-Work consensus algorithm and a unique scaling solution that enable individual apps to create their own app chains.

How will the next version of Stacks Blockchain change?

The next version of Stacks Blockchain will incorporate smart contacts and do away with the virtual chain. This next version is expected toward the end of the year and will contain these components:

  • Leader election and Tunable Proof-of-Work implementation: This component governs how clients select the longest chain and which miners receive transaction fees for broadcasting transactions.
  • Peering network: This component distributes blocks and microblocks among peer nodes participating in the Stacks blockchain.
  • Smart contracting VM: This component is responsible for executing and validating transactions in the Stacks blockchain, including smart contract publishing and execution.
  • Blockstack API: This API indexes the data stored by Stacks Blockchain, exposing a JSON REST API for querying information about Stacks ownership, the Blockstack Naming System, and other data stored in smart contracts.

What is Leader Election and Proof-of-Burn?

Proof-of-Burn is a mechanism through which potential block miners (what we call leaders) burn an existing cryptocurrency to announce their candidacy for mining a particular block. The more cryptocurrency burnt by a particular leader, the more likely they are to be selected to lead a block (a process which uses cryptographic sortition). Once elected, a leader constructs a valid block, choosing the chain tip to base their fork off of, and announces the block to the network. In the event of chain forks, clients select the longest such fork as the correct fork.

How are user identities managed in the Blockstack architecture?

Identity is user-controlled and utilizes a smart contract implemented on the Stacks blockchain for secure management of keys, devices, and usernames. When users log in with apps, they are anonymous by default and use an app-specific key, but their full identity can be revealed and proven at any time. Keys are used for signing and encryption.

Can anyone register names on Blockstack?

Anyone can register a name or identity on Blockstack — you just need to use a Blockstack client to submit a registration request to a Stacks Node. All of that software is Open-Source and can be run without any centralized parties.

What is a Blockstack Subdomain?

A Blockstack subdomain can be used for all the things a Blockstack ID can be used for. The only difference is that they have the format ~~foo.bar.baz~~ instead of ~~bar.baz~~. For example, jude.personal.id is a Blockstack ID, and is a subdomain of ~~personal.id~~. Hundreds of subdomains can be registered with a single transaction. The BNS documentation describes them in detail.

Can I get a Blockstack subdomain without spending Bitcoin?

Blockstack subdomains can be obtained without spending Bitcoin by asking a subdomain registrar to create one for you.

Is there a Blockstack name explorer?

Why should I trust the information, like name ownership or public key mappings, read from Blockstack?

Blockstack records are tough to tamper with. The difficulty comes from the fact that the bindings for name ownership (names on Blockstack are owned by public keys) are announced on the Stacks blockchain. To change these bindings, an attacker must initiate a winning fork of the Stacks blockchain that is longer than the true chain but with a different history. The longer your name binding exists on the correct chain, the harder this task becomes.

Do you have a testnet or sandbox to experiment with Blockstack?

We have an integration test framework that provides a private Blockstack testnet. It uses bitcoin -regtest to create a private blockchain that you can interact with, without having to spend any Bitcoin or having to wait for blocks to confirm. There is a deployed testnet of the current version of blockstack-core at testnet.blockstack.org. To deploy your own testnet, please see the README for details.

Can the Blockstack blockchain fork?

Yes, the Blockstack network can fork. We hard fork the network once a year to make protocol-breaking changes and upgrade the network. The latest fork was in 2018 where we introduced the genesis block of the Stacks blockchain. For technical details, see the 2018 forum post for the annual hard fork.

Which coin fuels the Blockstack blockchain?

Currently, transactions fees are paid in Bitcoin. In 2018 our annual hard fork enabled the fuel payments for digital asset registration to be paid in Stacks token. For technical details, see the 2018 forum post for the annual hard fork. In the next version of the Stacks chain, which will implement Proof-of-Burn mining and leader election, all transaction fees will be paid in Stacks.

How is the Blockstack network upgraded over time? What parties need to agree on an upgrade?

We’re working on an on-chain voting strategy similar to how mining works, where anyone can cast a vote proportional to the amount of Bitcoin burned. Similar to how Bitcoin upgrades, a new feature is activated if a certain threshold (e.g., 80%) of votes consistently request its adoption over a given time interval (e.g., a couple of weeks).

Until then, Blockstack publicly announces the availability of new software, with the promise that each release will bring highly-desired features to make upgrading worth the users’ whiles.

Who gets the registration fees for name registrations?

With the current design, names are secured through proof of burn mining which uses Bitcoin. Namespace creators determine how much names costs in a space, when and if the names expire. These creators can also elect to receive fees for creating names in the first year that a namespace exists.

Do I need to run a full Blockstack node to use Blockstack?

No. We maintain a fleet of Stacks Nodes that your Blockstack applications can connect to by default.

Can I run my own Blockstack node?

If you want to run your own, we provide detailed instructions on our install page. It only takes about 5-10 minutes to spin up your full node! Running a Blockstack node keeps you secure by ensuring that your app gets the right names and public keys. It’s not expensive; it takes as many resources as a Chrome tab.

What is the capacity per block for registrations using Blockstack?

Initial registrations can be done at an order of hundreds per block, and once an identity is registered, you can do unlimited updates to the data because that is off-chain.

Can I programmatically register Blockstack IDs?

Blockstack applications do not currently have access to the user’s wallet. Users are expected to register Blockstack IDs themselves.

However, if you feel particularly ambitious, you can do one of the following:

  • Set up a blockstack api endpoint (see the project README) and write a program to automatically register names. Also, see the API documentation for registering names on this endpoint.

  • Write a node.js program that uses blockstack.js to register names. This is currently in development.

Can I programmatically register Blockstack Subdomains?

Yes! Once you deploy your own subdomain registrar, you can have your web app send it requests to register subdomains on your Blockstack ID. You can also create a program that drives subdomain registration on your Blockstack ID.

What language is the Blockstack software written in?

The current Stacks chain is implemented in Python 2. The next version of the Stacks chain will be written in Rust.

Our libraries and many of our developer tools are written in Javascript (and we’re working on porting much of our Javascript to TypeScript).

What if the current companies and developers working on Blockstack disappear, would the network keep running?

Yes, the Blockstack network will keep running. All of Blockstack’s code is open-source, and anyone can deploy Blockstack nodes or maintain the code. Further, Blockstack nodes don’t need to coordinate with each other to function. Any node that a user deploys can function correctly independently.

Open source developer questions

How old is the Blockstack project?

Work on the project started in late 2013. First public commits on the code are from Jan 2014. The first registrar for Blockstack was launched in March 2014, and the project has been growing since then.

What is the current development roadmap look like?

See this page for the current development roadmap.

Where are the current core developers based? What are the requirements for being a core developer?

Our core developers work in various cities, New York City, Seattle, Toronto, Chicago, Minneapolis, NYC, San Francisco Bay Area, Barcelona, and the Netherlands. Developers who’ve contributed to the core open-source software over a long enough period, by default, get included in the list of core developers. There is no formal process for being part of this informal list. Core developers, generally, can write high-quality code, understand distributed systems and applied crypto, and share a vision of building a genuinely decentralized internet and are dedicated to that cause.

I heard some companies working on Blockstack have raised venture capital, how does that impact the project?

Blockstack, like Linux, is an open-source project with a Linux GPLv2 license for the core technology. Just like different companies build apps and services on top of Linux and have different individual business models, some companies are building apps & services for Blockstack on top of the core open-source technology, and these companies have various business models and funding sources respectively. Having more venture-backed companies join the ecosystem for a decentralized internet is a good thing for everyone participating in the ecosystem including users and developers.

Miscellaneous questions

What’s the difference between Onename and Blockstack?

Onename was a free Blockstack ID registrar run by Blockstack. It makes it easy to register your name and set up your profile. Once the name has been registered in Onename, you can transfer it to a wallet you control, or leave it there and use it as you like.

Does Blockstack use a DHT (Distributed Hash Table)?

It does not, as of November 2016. It uses a much more reliable system called the Atlas Network. Details here: https://blockstack.org/blog/blockstack-core-v0-14-release/

How can I transfer my Stacks Token out of my Stacks Wallet?

Your Stacks Wallet seed phrase is required to send Stacks Tokens from your Stacks Wallet. Access your Stacks Wallet using your unique wallet address and seed phrase to transfer unlocked STX tokens. Please see here for more information on time and transfer locks on various Stacks Tokens based on when you purchased your tokens.

Important disclaimer

The Securities and Exchange Commission (SEC) has qualified the offering statement that we have filed with the SEC under Regulation A for our offering of certain of our Stacks Tokens. The information in that offering statement is more complete than the information we are providing now, and could differ in important ways. You must read the documents filed with the SEC before investing. The offering is being made only by means of its offering statement. This document shall not constitute an offer to sell or the solicitation of an offer to buy, nor shall there be any sale of these securities in any state or jurisdiction in which such offer, solicitation or sale would be unlawful prior to registration or qualification under the securities laws of any such state or jurisdiction.

An indication of interest involves no obligation or commitment of any kind. Any person interested in investing in any offering of Stacks Tokens should review our disclosures and the publicly filed offering statement and the ffinal offering circular that is part of that offering statement. Blockstack is not registered, licensed or supervised as a broker dealer or investment adviser by the SEC, the Financial Industry Regulatory Authority (FINRA) or any other financial regulatory authority or licensed to provide any financial advice or services.

Forward-looking statements

This communication contains forward-looking statements that are based on our beliefs and assumptions and on information currently available to us. In some cases, you can identify forward-looking statements by the following words: “will,” “expect,” “would,” “intend,” “believe,” or other comparable terminology. Forward-looking statements in this document include, but are not limited to, statements about our plans for developing the platform and future utility for the Stacks Token, our Clarity smart contracting language, and potential mining operations. These statements involve risks, uncertainties, assumptions and other factors that may cause actual results or performance to be materially different. More information on the factors, risks and uncertainties that could cause or contribute to such differences is included in our filings with the SEC, including in the “Risk Factors” and “Management’s Discussion & Analysis” sections of our offering statement on Form 1-A. We cannot assure you that the forward-looking statements will prove to be accurate. These forward-looking statements speak only as of the date hereof. We disclaim any obligation to update these forward-looking statements.