Browse Source

Consolidating all the faqs into a single data file.

S

Signed-off-by: Mary Anthony <mary@blockstack.com>
feat/clarity-updates
Mary Anthony 6 years ago
parent
commit
8ccbf07831
  1. 11
      _config.yml
  2. 195
      _core/faq_technical.md
  3. 2
      _data/navigation_org.yml
  4. 686
      _data/theFAQs.json
  5. 7
      _develop/appMiningFAQ.md
  6. 92
      _faqs/allFAQS.md
  7. 4
      _faqs/allfaqs.json

11
_config.yml

@ -171,19 +171,19 @@ collections:
basepath: "blockstack/blockstack-android/blob/master/docs"
community:
output: true
basepath: "blockstack/blockstack-core/blob/master/docs"
basepath: "moxiegirl/docs.blockstack"
core:
output: true
basepath: "blockstack/blockstack-core/blob/master/docs"
basepath: "moxiegirl/docs.blockstack"
develop:
output: true
basepath: "moxiegirl/docs.blockstack"
storage:
output: true
basepath: "blockstack/gaia/blob/master/docs"
basepath: "moxiegirl/docs.blockstack"
browser:
output: true
basepath: "blockstack/blockstack-browser/blob/master/docs"
basepath: "moxiegirl/docs.blockstack"
ios:
output: true
basepath: "blockstack/blockstack-ios/blob/master/docs"
@ -193,3 +193,6 @@ collections:
org:
output: true
basepath: "moxiegirl/docs.blockstack"
faqs:
output: true
basepath: "moxiegirl/docs.blockstack"

195
_core/faq_technical.md

@ -4,182 +4,51 @@ permalink: /:collection/:path.html
---
# Blockstack Technical FAQ
{:.no_toc}
* TOC
{:toc}
This document lists frequently-asked questions and answers to technical
questions about Blockstack.
If you are new to Blockstack, you should read the
[non-technical FAQ](https://blockstack.org/faq) first.
questions about Blockstack. If you are new to Blockstack, you should read the
[genera questions](faqs/allFAQs) first.
If you have a technical question that gets frequently asked on the
[forum](https://forum.blockstack.org) or [Slack](https://blockstack.slack.com),
feel free to send a pull-request with the question and answer.
## Who should build on Blockstack?
Everyone! But more seriously, if you are building an application in JavaScript
that requires sign-in and storage you should look at using Blockstack. The APIs
we provide are not only decentralized (No dependency on Google, Facebook, or
other OAuth provider) but easier to use than traditional OAuth. Also you no
longer have to maintain and secure databases with all your user information.
That data is stored securely with the people who created it.
## What is a "serverless" app?
The application itself should not run application-specific functionality on a server. All of its functionality should run on end-points. However, the application may use non-app-specific servers with the caveat that they must not be part of the trusted computing base. This is the case with storage systems like Amazon S3 and Dropbox, for example, because Blockstack's data is signed and verified end-to-end (so the storage systems are not trusted to serve data). Serverless can also mean applications where some amount of server-side logic is still written by the application developer but unlike traditional architectures is run in stateless compute containers that are event-triggered, ephemeral (may only last for one invocation)
## How are Blockstack domains different from normal DNS domains?
Blockstack domains are not registered on the traditional DNS run by an organized called ICANN. Instead they're registered on a blockchain in a fully decentralized way. This means that Blockstack domains are truly owned by their owners and cannot be taken away. All Blockstack domains have public keys by default (public keys are required to own the domains), unlike the traditional DNS where a small fraction of domains get the (optional) public key certificates.
## What is a virtual chain?
Blockstack is designed around a "virtual chain" concept, where nodes only need to reach consensus on the shared "virtual chain" they're interested in. Virtual chains do not interact with one another, and a single blockchain can host many virtual chains. These virtual chains can live in any blockchain for which there exists a driver, and virtual chain clients only need to execute their virtual chain transactions (i.e. Blockstack only processes Blockstack virtual chain transactions).
## What is Blockstack Core and who is working on it?
Blockstack Core is the reference implementation of the Blockstack protocol described in our white paper. It consists of a couple of parts:
- Virtualchain implementation: This is a python library that parses the underlying blockchain (Bitcoin) and builds the state of the Blockstack DNS.
- Blockstack Core: Uses the Virtualchain to build the DNS state and comes to a consensus on that state in a peer network (Atlas).
- Blockstack API: Indexes the data stored by Blockstack Core and makes it available in a performant way to applications.
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
## 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 need to be handled at the blockchain level. It 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.
Read more about the differences between Blockstack and Ethereum dapps in the following forum post: https://forum.blockstack.org/t/what-is-the-difference-between-blockstack-and-ethereum/781/2
## Can Blockstack only run on Bitcoin?
The model we're currently exploring is where Blockstack can process multiple blockchains to construct the global state where each namespace is tied to a single blockchain. Meaning that say the .id namespace is defined to run on Bitcoin and a .eth namespace is defined to run on Ethereum. Blockstack can process transactions from both blockchains and update the state of namespaces, but the consistency of any given namespace depends only on the underlying blockchain it was defined on.
## 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://blog.blockstack.org/blockstack-core-v0-14-0-release-aad748f46d#.30gzlthdw
## Can the Blockstack network fork?
Yes, the Blockstack network can fork if the underlying blockchain encounters a deep fork. In this case, blockstack nodes on either side of the fork will diverge from one another.
We have yet to encounter a deep fork. If this does happen, then Blockstack will use the virtualchain state on the majority fork once the fork resolves.
We also hard fork the network once a year to make protocol breaking changes and upgrade the network. The last one of these happened on block `488500` on the bitcoin blockchain. There are more details about the fork in this forum post: https://forum.blockstack.org/t/blockstack-annual-hard-fork-2017/1618
## 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 will activate if a certain threshold (e.g. 80%) of votes consistently request its adoption over a given time interval (e.g. a couple weeks).
Until then, we will publicly announce 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 purchased by paying tribute with Bitcoin mining fees.
## Where are the current core developers based? What are the requirements for being a core developer?
Most of the core developers work in NYC and Hong Kong. Developers who've contributed to the [core open-source software](https://github.com/blockstack/blockstack-core) over a long enough time 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, have the ability to write high-quality code, understand distributed systems and applied crypto, and share a vision of building a truly 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 GPLv3 license for the core technology. Just like different companies build apps and services on top of Linux and have different individual business models, there are companies who're 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.
## Where is my data stored and how do I control who access it?
You control where your data is stored (you could run your own server, or use your own cloud storage - Dropbox, Amazon S3, and keep backups across all). You then use those places as locations pointed to by the URLs in your Blockstack ID's zone file.
## Why should I trust the information, like name ownership or public key mappings, read from Blockstack?
Blockstack records are extremely hard to tamper with. This is because the bindings for name ownership (names on Blockstack are owned by public keys) are announced in a proof-of-work blockchain (Bitcoin) and to change these binding an attacker will need to come up with a blockchain with more proof-of-work than the current Bitcoin blockchain but with a different history. Bitcoin's [current hash rate](https://blockchain.info/charts/hash-rate) makes this task almost impossible for non-state actors.
## Can anyone register a TLD?
Yes, anyone can register a TLD. If a TLD has not been registered already and you're willing to pay the registration fee for it, you can go ahead and register that TLD. There is no centralized party that can stop you from registering a TLD.
## 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. The Blockstack Core is implementated in Python, but you can use any language you like for native apps as long as you are able to consume a JSON REST API.
## Do I need to run a full Blockstack node to use Blockstack?
tl;dr: You don't, but its very easy to.
To reduce the overhead involved in getting started we maintain a fleet of Blockstack Core nodes that your Blockstack applications connect to by default. If you want to run your own we provide detailed instructions on our [install page](https://blockstack.org/install). It only takes about 5-10 minutes to spin up your full node!
## 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. We’re also working on a more scalable solution where a very large number of identities can be registered but that’s not live yet and is in the pipeline as a rough benchmark. in summer 2015, Blockstack did 30,000+ identity registrations in a matter of few days live on the blockchain and Blockstack was actually throttling its servers and not taking up more than 100-200 transactions per block. It could’ve easily taken up more transactions without impacting the network.
## What language is the Blockstack software written in?
Python 2 and Node.js
## What incentives are there to run a Blockstack 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 much resources as a Chrome tab.
## Can Blockstack apps scale, given that Blockstack uses blockchains which don't scale that well?
Yes. Blockstack only uses the blockchain for name registration. Everything else happens off-chain, so apps work just as fast as they do on the Web.
## 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.
## Where does Blockstack keep my app data?
As a Blockstack user, you can choose exactly where your data gets stored.
Blockstack uses a decentralized storage system called
[Gaia](https://github.com/blockstack/gaia) to host your data. Gaia is different
from other storage systems because it lets you securely host your data wherever you want &mdash; in cloud
software providers, on your personal server, or in another decentralized storage
system like BitTorrent or IPFS.
When you register, you are given a default Gaia hub that replicates your
data to a bucket in Microsoft Azure. However, you can configure and
deploy your own Gaia hub and have Blockstack store your data there instead.
The [Blockstack Naming Service]({{ site.baseurl }}/core/naming/introduction.html) and the [Atlas network]({{ site.baseurl }}/core/atlas/overview.html) work together to help other users discover your
app-specific public data, given your Blockstack ID.
* TOC
{:toc}
## What is a Blockstack Subdomain?
## DApp developers
This is also a Blockstack ID, and 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](https://core.blockstack.org/v1/users/jude.personal.id) is a
Blockstack ID, and is a subdomain of `personal.id`.
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'dappdevs' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
Subdomains are first-class Blockstack IDs---they can be used for all the same
things that an on-chain Blockstack ID can be used for, and they have all of
the same safety properties. They are globally unique, they are strongly owned
by a private key, and they are human-readable.
Subdomains are considerably cheaper than Blockstack IDs, since hundreds of them
can be registered with a single transaction. The [BNS
documentation]({{ site.baseurl }}/core/naming/introduction.html) describes them in detail.
## Core developers
Subdomains provide a fast, inexpensive way to onboard many users at once.
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'coredevs' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## Can I get a Blockstack ID without spending Bitcoin?
## Open source developers
Blockstack subdomains can be obtained without spending Bitcoin
by asking a subdomain registrar to create one for you.
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'opensource' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## Is there a Blockstack name explorer?
## Miscellaneous questions
Yes! It's at https://explorer.blockstack.org
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'miscquest' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}

2
_data/navigation_org.yml

@ -18,5 +18,5 @@
- title: Reference
docs:
- org/secureref
- org/faq
- faqs/allFAQS
- org/terms

686
_data/theFAQs.json

@ -0,0 +1,686 @@
{
"faqs": [
{
"category": "general",
"question": "What is Blockstack?",
"answer": "<p>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.<\/p>"
},
{
"category": "general",
"question": "What is decentralized computing?",
"answer": "<p>Decentralized computing has these attributes:<\/p> <ul> <li><strong>Personal keys for a digital life<\/strong>. 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.<\/li> <li><strong>Security is a first-class concern<\/strong>. Users want systems that protect both their identity and the data associated with that identity — health, application, and relationships.<\/li> <li><strong>Convenient and auditable.<\/strong> 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.<\/li> <li><strong>Innovation focused.<\/strong> 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.<\/li> <\/ul> <p>Blockstack technology, then, is a shift in how people use software, create it, and benefit from it. It puts people back in control of the computing systems that manage today’s world.<\/p>"
},
{
"category": "general",
"question": "What is the Blockstack Ecosystem?",
"answer": "<p>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.</p> <p>There are multiple business entities that have been created to focus on advancing the ecosystem, <a href='https://blog.blockstack.org/a-path-to-decentralization/'>with plans for further decentralization</a>:</p> <ul> <li><strong>Blockstack PBC</strong> 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&amp;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.</li> <li><strong>Blockstack Token LLC</strong> 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 any appropriate regulatory filings and conducted the 2017 token offering. Stacks tokens created by Token LLC were distributed in the genesis block of the Stacks blockchain in Fall 2018.</li> <li><strong>Blockstack Signature Fund</strong> <strong>I</strong> 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 <a href='https://signature.vc/'>the Signature Fund</a>.</li> <li><strong>Blockstack Foundation (working title)</strong> will be a 501c(3) non-profit organization dedicated to education and adoption related to the decentralized internet. In the future it may support people and projects with funding, research grants, or other.</li> <li><strong>New Internet Labs</strong> 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 <a href='https://app.co/mining'>App Mining</a> program and working to develop a browser for the decentralized internet. Learn more about <a href='https://www.newinternetlabs.com/'>their efforts here</a>.</li> </ul> <p>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.</p>"
},
{
"category": "general",
"question": "What is a decentralized internet?",
"answer": "<p>We envision an internet where users control their data, and power flows back to the users. In a decentralized internet, 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.<\/p>"
},
{
"category": "general",
"question": "What makes the Blockstack Ecosystem exciting?",
"answer": "<p>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.<\/p> <p>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.<\/p> <p>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.<\/p>"
},
{
"category": "general",
"question": "What problems do Blockstack DApps solve for me as a user?",
"answer": "<p>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:<\/p> <ul> <li><strong>Users control their data, not the application developer.<\/strong> If you stop using an application, the application cannot access your data. When you leave the application, you take your data with you.<\/li> <li><strong>Users determine where to store their data.<\/strong> 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.<\/li> <li><strong>Users control which applications and which third parties can access their data.<\/strong> 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.<\/li> <\/ul>"
},
{
"category": "general",
"question": "What problems does Blockstack solve for application developers?",
"answer": "<ul> <li>Blockstack wraps blockchain operations in traditional REST calls. Developers can start programming using the same Javascript functionality they are currently familiar with.<\/li> <li>Application data is stored off the blockchain for performance and scalability.<\/li> <li>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.<\/li> <li>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.<\/li> <li>Moreover, many Web applications today can be refactored so that everything happens client-side, obviating the need for running dedicated application servers.<\/li> <\/ul> "
},
{
"category": "general",
"question": "Who started Blockstack?",
"answer": "<p>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, you can <a href='https://github.com/blockstack'>find the code on GitHub<\/a>.<\/p>"
},
{
"category": "appusers",
"question": "What is a decentralized application or DApp?",
"answer": "<p>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.<\/p>"
},
{
"category": "appusers",
"question": "How do DApps differ from applications I typically use?",
"answer": "<p>DApps (decentralized applications) differ from Web applications in these key ways:<\/p> <ul> <li><strong>Users have identities, not accounts.<\/strong> 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.<\/li> <li><strong>Users determine where to store their application data.<\/strong> They can store their data on their computer or with a commercial cloud storage provider.<\/li> <li><strong>Users control data access.<\/strong> 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.<\/li> <\/ul>"
},
{
"category": "appusers",
"question": "Do DApps work with a regular browser?",
"answer": "<p>Yes! DApps run in the web browsers (Chrome, Safari, Internet Explorer, and so forth) you know today.<\/p>"
},
{
"category": "appusers",
"question": "What is an identity or ID or Blockstack identity?",
"answer": "<p>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.<\/p> <p>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.<\/p>"
},
{
"category": "appusers",
"question": "Do I need to keep my identity secret?",
"answer": "<p>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.<\/p>"
},
{
"category": "appusers",
"question": "How do I get an identity? Is it free?",
"answer": "<p>You can get a free identity from Blockstack in the <strong>id.blockstack<\/strong> namespace. A namepace is similar to a domain (<strong><a href='http://checklist.com'>checklist.com<\/a><\/strong>, for example) on the old internet. So, a free identity has <strong>blockstack<\/strong> suffix in its name; for example, <strong>moxiegirl.id.blockstack<\/strong> is a free Blockstack identity.<\/p>"
},
{
"category": "appusers",
"question": "What if I forget my identity or my lose my secret key, can Blockstack help me?",
"answer": "<p>If you forget your identity or lose your secret key, no one else, <em>no person, no software, can help you get your identity back<\/em>. 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.<\/p> <p>You need to keep your identity and secret key in a safe, secure place you won’t forget.<\/p> "
},
{
"category": "appusers",
"question": "Where is my identity kept?",
"answer": "<p>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.<\/p>"
},
{
"category": "appusers",
"question": "Can Blockstack delete my Blockstack ID or deny me use of it?",
"answer": "<p>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.<\/p>"
},
{
"category": "appusers",
"question": "Can I get an identity without the Blockstack in the name, like steve.id?",
"answer": "<p>Yes, you can get an identity in the .id space without Blockstack in the name. For example, you can create <strong>steve.id<\/strong>. You can even create a different space like <strong><em>username<\/em><\/strong><strong>.frank<\/strong> without the id designation. These identities (<strong>.id<\/strong>) are not free; they cost a small amount of Bitcoin. A space (<strong>.frank<\/strong>) takes some technical knowledge to create and cost more.<\/p>"
},
{
"category": "appusers",
"question": "Can I have more than one identity?",
"answer": "<p>Yes, you can create as many identities as you want.<\/p>"
},
{
"category": "appusers",
"question": "Do identities last forever or do they expire?",
"answer": "<p>Identities with the like <strong>moxiegirl.id.blockstack<\/strong> or <strong>subdomain.name.namespace<\/strong> format do not expire. Names that have a single dot like <strong>name.namespace<\/strong> expire according to the rules set by the <strong>namespace<\/strong> creators. For example, <strong>name.id<\/strong> in the <strong>id<\/strong> namespace expires every two years and must be renewed. If a <strong>name.id<\/strong> expires, someone else can claim it.<\/p>"
},
{
"category": "appusers",
"question": "Why do DApps ask me for an email in addition to an identity?",
"answer": "<p>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.<\/p>"
},
{
"category": "appusers",
"question": "Where can I find Blockstack DApps that I can use?",
"answer": "<p>You can see a list on <a href='https://app.co/'>the App.co site<\/a>. Alternatively, you can go directly to your <a href='https://browser.blockstack.org/'>Blockstack Browser<\/a> home page.<\/p>"
},
{
"category": "appusers",
"question": "What is the Blockstack Browser?",
"answer": "<p>The Blockstack Browser is a DApp users use to create and manage their Blockstack identities. Users use the Blockstack Browser to manage their identities and their data storage. <\/p> <p>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. <\/p>"
},
{
"category": "appusers",
"question": "Do Blockstack DApps work with my web browser?",
"answer": "<p>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 <a href='https://browser.blockstack.org/'>Web-hosted Blockstack Browser<\/a>, you can get started using DApps right away.<\/p>"
},
{
"category": "appusers",
"question": "Is there a downloadable version of the Blockstack Browser?",
"answer": "<p>Yes. You can download a desktop version of the Blockstack Browser <a href='https://blockstack.org/install/'>here<\/a>.<\/p>"
},
{
"category": "appusers",
"question": "What is Gaia?",
"answer": "<p>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.<\/p>"
},
{
"category": "appusers",
"question": "Where is the data about me kept or what is a data store?",
"answer": "<p>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.<\/p> <p>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.<\/p>"
},
{
"category": "appusers",
"question": "What kind of data does a Blockstack DApp keep about me?",
"answer": "<p>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.<\/p>"
},
{
"category": "appusers",
"question": "What is a data storage provider?",
"answer": "<p>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.<\/p> <p>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.<\/p> <p>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 <code>blockstack-cli<\/code> <code>lookup<\/code> in the CLI. See the <a href='https://docs.blockstack.org/develop/clidocs'>CLI documentation<\/a> for more information about available commands.<\/p>"
},
{
"category": "appusers",
"question": "Can I move my data from one storage provider to another?",
"answer": "<p>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.<\/p>"
},
{
"category": "dappdevs",
"question": "Who should build with the Blockstack Platform?",
"answer": "<p>Everyone! However, more seriously, if you are building an application in JavaScript that requires sign-in and storage, you should look at using Blockstack.<\/p>"
},
{
"category": "dappdevs",
"question": "I’m a web developer. Can I build on the Blockstack Platform?",
"answer": "<p>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.<\/p>"
},
{
"category": "dappdevs",
"question": "I’m a non-web developer. Can I build on Blockstack Platform?",
"answer": "<p>Yes! Blockstack implements a <a href='https://core.blockstack.org'>RESTful API<\/a> which lets you interact with Blockstack from any language and any runtime. In fact, the reference client (<a href='https://blockstack.github.io/blockstack.js/'>blockstack.js<\/a>) is mainly a wrapper around these RESTful API calls, so you won’t be missing much by using a language other than Javascript.<\/p>"
},
{
"category": "dappdevs",
"question": "How do I get started using Blockstack to build decentralized applications?",
"answer": "<p>The <a href='https://docs.blockstack.org/develop/zero_to_dapp_1.html'>Zero-to-Dapp Tutorial<\/a> 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 <a href='https://docs.blockstack.org/browser/hello-blockstack.html'>Hello World<\/a> that takes about 10 minutes. In the end, you’ll have a working demo and even get a free limited edition t-shirt!<\/p>"
},
{
"category": "dappdevs",
"question": "What’s the difference between a web app and a Blockstack app?",
"answer": "<p>Blockstack apps are built like <a href='https://en.wikipedia.org/wiki/Single-page_application'>single-page web apps<\/a> — they are, in fact, a type of web application.<\/p> <p>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.<\/p>"
},
{
"category": "dappdevs",
"question": "Do I need to learn any new languages or frameworks?",
"answer": "<p>No. Blockstack applications are built using existing web frameworks and programming The only new thing you need to learn is either <a href='https://blockstack.github.io/blockstack.js/'>blockstack.js<\/a> or the <a href='https://core.blockstack.org'>Blockstack RESTful API<\/a>.<\/p> "
},
{
"category": "dappdevs",
"question": "What is the general architecture of the Blockstack Platform?",
"answer": "<p>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.<\/p> <p>Developers build an application in Javascript using the <a href='https://blockstack.github.io/blockstack.js/'>blockstack.js<\/a> 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.<\/p> <p>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.<\/p>"
},
{
"category": "dappdevs",
"question": "What is a “serverless” app?",
"answer": "<p>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).<\/p> <p>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.<\/p>"
},
{
"category": "dappdevs",
"question": "How does my web app interact with Blockstack?",
"answer": "<p>The <a href='https://blockstack.github.io/blockstack.js/'>blockstack.js<\/a> library gives any web application the ability to interact with Blockstack’s authentication and storage services. In addition, we supply a <a href='https://core.blockstack.org'>public RESTful API<\/a>.<\/p>"
},
{
"category": "dappdevs",
"question": "What does blockstack.js do?",
"answer": "<p>This is the reference client implementation for Blockstack. You use it in your web app to do the following:<\/p> <ul> <li>Authenticate users<\/li> <li>Load and store user data<\/li> <li>Reuse users’ public data in your application<\/li> <\/ul><p>There are also mobile libraries for <a href='https://blockstack.github.io/blockstack-ios/'>iOS<\/a> and <a href='https://blockstack.github.io/blockstack-android/'>Android<\/a>.<\/p>"
},
{
"category": "dappdevs",
"question": "How do I use blockstack.js?",
"answer": "<p>Our documentation has <a href='https://docs.blockstack.org/develop/zero_to_dapp_1.html'>several examples<\/a> you can use to get started.<\/p>"
},
{
"category": "dappdevs",
"question": "How do I register Blockstack IDs?",
"answer": "<p>You should use the <a href='https://browser.blockstack.org'>Blockstack Browser<\/a>.<\/p>"
},
{
"category": "dappdevs",
"question": "How can I look up names and profiles?",
"answer": "<p>You can use <a href='https://blockstack.github.io/blockstack.js/'>blockstack.js<\/a>, or you can use the <a href='https://core.blockstack.org'>public Blockstack Core endpoint<\/a>.<\/p>"
},
{
"category": "dappdevs",
"question": "What kind of scalability and performance can I expect from applications built with Blockstack?",
"answer": "<p>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.<\/p>"
},
{
"category": "dappdevs",
"question": "Is there a limit to the file sizes I can store in a Gaia Storage System",
"answer": "<p>The file size limit is 25 MB per file.<\/p>"
},
{
"category": "dappdevs",
"question": "Can I run a Gaia Storage System commercially?",
"answer": "<p>Yes, you can. Anyone interested in running a Gaia Storage System can run one and make it available to users.<\/p>"
},
{
"category": "dappdevs",
"question": "Is the platform private or open sourced?",
"answer": "<p>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: <a href='https://github.com/blockstack/blockstack-core/graphs/contributors'>https://github.com/blockstack/blockstack-core/graphs/contributors<\/a><\/p>"
},
{
"category": "dappdevs",
"question": "What programming language can I use to build these apps?",
"answer": "<p>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. Blockstack Core 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.<\/p>"
},
{
"category": "dappdevs",
"question": "How is Blockstack different from Ethereum for building decentralized apps?",
"answer": "<p>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.<\/p> <p>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.<\/p>"
},
{
"category": "dappdevs",
"question": "Can Blockstack applications interact with Bitcoin? Ethereum? Other blockchains?",
"answer": "<p>Yes! Since Blockstack applications are built like web applications, all you need to do is include the relevant Javascript library into your application.<\/p>"
},
{
"category": "appminers",
"question": "What is App Mining?",
"answer": "<p>Traditionally the term mining in cryptocurrency refers to the process of contributing compute resources to the network and earning a reward. In the Blockstack Ecosystem, instead of just mining through computation, developers mine by building apps and the Blockstack community funds them simply for being pioneers in the emerging Blockchain software market. <\/p> <p>We believe app mining represents a revolution in app funding, allowing small teams to bootstrap without advertising or venture capital. Each month, qualifying apps compete for funding. Qualified apps are evaluated and ranked by expert app reviewers. The better your app, the higher payout you earn. <\/p> <p>App mining is a new mining model that we expect will evolve and improve over time. We look forward to feedback from our community regarding the App Mining process and program. <\/p>"
},
{
"category": "appminers",
"question": "What is the App Mining timeline?",
"answer": "<h5>On the first of every month (or as listed on the calendar): <\/h5> <ul> <li>Registration is closed for that months ranking.<\/li> <li>Blockstack team sends the complete list of apps to our app reviewer partners. App miners do not need to reach out to Product Hunt, Democracy Earth, or TryMyUI. <\/li> <li>Blockstack <strong>emails<\/strong> app miners are emailed about Product Hunt Hunting process. App miners can choose to hunt their app independently or can request to be featured by the Product Hunt the team. <a href='https://docs.blockstack.org/develop/mining_intro.html' target='_blank'>Read more<\/a>.<\/li> <li>App miners <strong>debate<\/strong> on their app in Democracy Earth. <a href='https://docs.blockstack.org/develop/vote-blockstack.html' target='_blank'>Read more<\/a>.<\/li><li>Registered stack holders <strong>are alerted<\/strong> about new apps and prompted to vote. <a href='https://docs.blockstack.org/develop/vote-blockstack.html' target='_blank'>Read more<\/a>.<\/li><\/ul><h5>Over the next two weeks:<\/h5> <ul> <li>TryMyUI Tests are happening. Please don’t perform upgrades that might break the app.<\/li> <li>Voters participate on <a href='https://vote.blockstack.org' target='_blank'>vote.blockstack.org<\/a>. <\/li> <li>Products are launched on Product Hunt. Product Hunt team performs internal review.<\/li> <\/ul> <h5>On the last day of ranking at 11:59pm ET: <\/h5> <p>App mining results are sent to Blockstack by app reviewer partners.<\/p> <h5>On the 15th (or as listed on the calendar):<\/h5> <p>Blockstack team performs App Mining algorithm as referenced <a href='https://blog.app.co/how-app-minings-ranking-algorithm-works/' target='_blank'>here<\/a>.<\/p> <h5>On the following weekday:<\/h5> <ul> <li>App miners are emailed login info to access their TryMyUI tests<\/li> <li>Full App Mining results are published<\/li> <\/ul>"
},
{
"category": "appminers",
"question": "Where can I find a calendar of App Mining events?",
"answer": "<p>The following calendar shows events each month related to App Mining:<\/p><p><iframe src='https://calendar.google.com/calendar/b/1/embed?showCalendars=0&amp;height=400&amp;wkst=1&amp;bgcolor=%23ffffff&amp;src=blockstack.com_u71ao2dalkd88b493k3671233s%40group.calendar.google.com&amp;color=%235229A3&amp;ctz=America%2FNew_York' style='border-width:0' width='600' height='400' frameborder='0' scrolling='no'><\/iframe><\/p>"
},
{
"category": "appminers",
"question": "How much can I earn and how are rewards distributed? ",
"answer": "<p>Payouts for the pilot run are $100k in total each month (the original alpha run paid out $25K. In the pilot run, the highest-ranked app receives 20% of the 100K, the next highest-ranked app receives 20% of the remaining 80%, and so on (this distribution is subject to change). <\/p><p>Rewards are paid in Bitcoin. The payouts are administered by Blockstack PBC and facilitated by App.co.<\/p>"
},
{
"category": "appminers",
"question": "How is App Mining different from cryptocurrency mining?",
"answer": "<p>Traditionally the term mining in cryptocurrency refers to the process of contributing compute resources to the network and earning a distributed of new tokens as a reward. On the Stacks blockchain, developers can “mine” by contributing apps to the ecosystem and making applications the community wants. <\/p>"
},
{
"category": "appminers",
"question": "What qualifies my app to compete in App Mining?",
"answer": "<p>Your app should integrate Blockstack authentication for logging into your app. Your finished app should be available to the public for use. In the future, App Mining may reward apps that have taken steps to further decentralize, such as utilizing Gaia storage or the publishing your app to the Blockstack Naming System. Test flight apps, hello-world apps and apps created through blockstack tutorials (e.g. animal kingdom apps) do not qualify.<\/p>"
},
{
"category": "appminers",
"question": "Does my app have to be listed on App.co to enter App Mining?",
"answer": "<p>Yes, it does.<\/p>"
},
{
"category": "appminers",
"question": "How do I submit my application for App Mining?",
"answer": "<p>Complete <a href='https://app.co/submit#'>the submission form on App.co<\/a>. Blockstack suggests registering several days before the ranking deadline — our team needs to verify your details to ensure your app qualifies. Full enrollment details can be found <a href='https://docs.blockstack.org/develop/mining_enroll.html' target='_blank'>here<\/a>. When you have met all the requirements, you should see your app listed <a href='https://app.co/mining/apps'>on this page<\/a>.<\/p>"
},
{
"category": "appminers",
"question": "When are my submission materials due?",
"answer": "<p>Your submission materials are due at 11:59 PM Eastern Time US on the last day of each month. For example, if you are making a submission for March, your materials must be submitted on or before Feb 28 at 11:59 EST.<\/p>"
},
{
"category": "appminers",
"question": "How often can I submit my application for App Mining?",
"answer": "<p>You need only to submit your application once. Each month after your submission, your app is competing in App Mining. <\/p>"
},
{
"category": "appminers",
"question": "How do I launch my app on Product Hunt as an app reviewer?",
"answer": "<p>Part of the ranking process includes an assessment by the Product Hunt app reviewer via their community vote and their internal team vote. You can find <a href='https://docs.blockstack.org/develop/mining_intro.html' target='_blank'>information on the algorithm in this documentation<\/a>.<\/p> <p>Your product's launch on Product Hunt has an impact on your final App Mining ranking as stated in the algorithm information. If your app has not been “hunted” yet on Product Hunt, you have the option to hunt the app independently or to ask Product Hunt to hunt it for you. Make sure you understand the hunting process. Only hunted products can be featured by Product Hunt. More information on successful product hunt launches <a href='https://blog.producthunt.com/how-to-launch-on-product-hunt-7c1843e06399' target='_blank'>can be found on the Product Hunt blog<\/a>.<\/p> <p>Blockstack will email each miner about the hunt process at the start of each App Mining review cycle. You should feel free to let us know your preference, hunt yourself or by Product Hunt, before the review cycle.<\/p>"
},
{
"category": "appminers",
"question": "Does my code repository need to be public?",
"answer": "<p>Your application code can be public or private.<\/p>"
},
{
"category": "appminers",
"question": "Is Blockstack Auth difficult to integrate?",
"answer": "<p>If you’re already building your app with JavaScript, adding Blockstack authentication is easy! We have docs, tutorials, and thorough API references for you to learn from. Vist the <a href='https://docs.blockstack.org/develop/zero_to_dapp_1.html'> Zero-to-Dapp tutorial<\/a> for end-to-end training. Or <a href='https://docs.blockstack.org/develop/auth_provider.html'>use this short example<\/a>.<\/p> <p>If you’re developing a traditional server-side application, you can still take advantage of Blockstack authentication. For an example, check out <a href='https://github.com/blockstack/blockstack-ruby'>our Ruby on Rails gem<\/a>.<\/p>"
},
{
"category": "appminers",
"question": "Who are the app reviewers?",
"answer": "<p>App reviewers are currently selected by Blockstack PBC. Reviewers are entities that have a proprietary methodology that helps them make objective judgements for why a certain app might be better than others. We strive to engage a diverse coalition of app reviewers with the goal of making application ranking objective and resilient to abuse. <\/p> <p>As of January 2019, the reviewers were: Product Hunt, Try My UI and Democracy Earth (who uses software to collect votes by Stacks token holders). See <a href='https://docs.blockstack.org/develop/mining_intro.html#how-apps-are-reviewed'>here<\/a> for more details about each reviewer. Future reviewers could expand to community election. Please see our <a href='https://github.com/blockstack/app-mining'>github repository<\/a> to raise issues or make suggestions for App Mining. <\/p>"
},
{
"category": "appminers",
"question": "How are apps ranked?",
"answer": "<p>App reviewers have a proprietary methodology that helps them make objective judgments for why one app might be better than another. Each app reviewers determines the data, formula, and personnel they wish to utilize. For example, Product Hunt can tap into their community data to determine relative app popularity. Reviewers must publish their methodology periodically to ensure transparency. <\/p> <p>To learn more see <a href='https://blog.app.co/how-app-minings-ranking-algorithm-works'>the detailed explanation of our ranking algorithm on our blog<\/a> and in <a href='https://docs.blockstack.org/develop/mining_intro.html'>our documentation<\/a>.<\/p><p>Apps may have unique circumstances such that the app cannot be ranked by all the reviewers, for example, apps that require specific hardware. In these cases, reviewers that can review and rank the app will. An app’s final ranking is determined by the average of those reviewers that can fully review the app.<\/p>"
},
{
"category": "appminers",
"question": "Do I have to Hunt my app on Product Hunt?",
"answer": "<p>As part of the ranking process, there is an assessment by App Reviewer Product Hunt via their community vote and their internal team vote. More info on the algorithm, <a href='https://docs.blockstack.org/develop/mining_intro.html'>here<\/a>. The Hunt launch will have an impact on your final ranking, as you can see in the algorithm breakdown. Here is <a href='https://blog.producthunt.com/how-to-launch-on-product-hunt-7c1843e06399'>more info<\/a> on Product Hunt launch best practices. In general, sharing and responsiveness to questions are encouraged and it might help your community reception if you choose to hunt the app yourself. If not, Product Hunt can hunt your App as well.<\/p><p>Apps will be hunted every 6 months, so if you hunted your app in a past month, as long as you are in the 6 month time window you will not have to Hunt the app. <\/p>"
},
{
"category": "appminers",
"question": "Can developers engage with voters on Democracy Earth?",
"answer": "<p>Yes, they can. App miners can and should create an account on Democracy Earth. From this account they can engage with voters through the debate feature. Learn more <a href='https://docs.blockstack.org/develop/vote-blockstack.html' target='_blank'>in the documentation<\/a>.<\/p>"
},
{
"category": "appminers",
"question": "When are the winning payments made?",
"answer": "<p>Payouts are made on the 15th of every month.<\/p>"
},
{
"category": "appminers",
"question": "What’s the incentive for user voting? ",
"answer": "<p>Voters in the App Mining ecosystem use Democracy Earth to vote for applications. Voters are currently Stacks token holders with incentive to strategically allocate resources in the ecosystem to apps they consider highly valuable.<\/p>"
},
{
"category": "appminers",
"question": "What are examples of any quantitative metrics that may be shared with app reviewers?",
"answer": "<p>Qualitative metrics are metrics that evaluate elements such as engagement, DAU/MAU ratios etc from the reviewed apps. Blockstack plans to incorporate metrics based ranking. However, before we do, any mechanism must thoughtfully incorporate the digital privacy rights of Blockstack users, and provide information in a way that cannot be gamed.<\/p> "
},
{
"category": "appminers",
"question": "Is App Mining Decentralized?",
"answer": "<p>Given the pioneering nature of the program, we are being careful and starting in a centralized fashion that allows for necessary diligence. We don’t want to bake in assumptions that have not been validated. The downside of this protection is some level of centralization, which we are taking steps to reduce over time. The pilot is the just the first step in creating a fair system that can be relied upon by founders and contribute to the growth of the Blockstack ecosystem. <\/p> <p>Blockstack plans to move along a path to decentralization and App Mining will too. It is important to highlight that initially App Mining will purposely have a few points of centralization highlighted below, which can become decentralized over time (all plans are subject to change, legal approval, and applicable law). <\/p> <h5>Electing app reviewers:<\/h5> <p>Currently, Blockstack PBC elects app reviewers. In the future, we anticipate gradually transitioning to community elections of App Reviewers. <\/p> <h5>Registering apps:<\/h5> <p>Currently, registering apps is regulated by Blockstack PBC through app.co/mining. In the future, we anticipate transitioning to publishing on designated Blockstack namespaces via our public blockchain. <\/p> <h5>Collecting votes:<\/h5> <p>Currently, votes are aggregated by Blockstack PBC and administered via App.co. In the future, we expect that votes will be collected through the protocol itself. <\/p> <h5>Issuing money:<\/h5> <p>Currently, payouts are issued by Blockstack PBC. In the future, we expect that payouts will over time be generated and deployed on an automated basis. <\/p>"
},
{
"category": "appminers",
"question": "How is App Mining protected against bribery, collusion, or gaming?",
"answer": "<p>We are taking potential threats very seriously and hope to create a fair system that continuously reinforces trust within our community for the long term. <\/p> <p>We are currently consulting with a team of 3 Ph.D. Game Theorist professors from Princeton University and New York University to determine thoughtful methods to protect App Mining from being attacked and/or abused. Our goal is to be as transparent as possible, but App Reviewers may reserve the right to keep some secrets in their formula to avoid bribes and gaming, and the algorithm that combines all of these score may be tuned in the future to account for new learnings. <\/p> <p>The Game Theorists are working with us to create a technical paper and broader documents like blogs explaining the overall mechanism <\/p>"
},
{
"category": "coredevs",
"question": "What is Blockstack Core?",
"answer": "<p>Blockstack Core is the reference implementation of the Blockstack protocol described in our white paper. Today, it consists of these components:<\/p> <ul><li>Virtualchain implementation: This is a python library that parses the underlying blockchain (Bitcoin) and builds the state of the Blockstack DNS.<\/li> <li>Blockstack Core: Uses the Virtualchain to build the BNS state and comes to a consensus on that state in a peer network (Atlas).<\/li> <li>Blockstack API: Indexes the data stored by Blockstack Core and makes it available in a performant way to applications.<\/li> <\/ul>"
},
{
"category": "coredevs",
"question": "How will the next version of Blockstack Core change?",
"answer": "<p>The next version of Blockstack core 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:<\/p> <ul> <li><strong><em>Leader election and Proof-of-Burn implementation<\/em><\/strong>: This component governs how clients select the longest chain and which miners receive transaction fees for broadcasting transactions.<\/li> <li><strong><em>Peering network<\/em><\/strong>: This component distributes blocks and microblocks among peer nodes participating in the Stacks blockchain.<\/li> <li><strong><em>Smart contracting VM<\/em><\/strong>: This component is responsible for executing and validating transactions in the Stacks blockchain, including smart contract publishing and execution.<\/li> <li><strong><em>Blockstack API<\/em><\/strong>: This API indexes the data stored by Blockstack Core, exposing a JSON REST API for querying information about Stacks ownership, the Blockstack Naming System, and other data stored in smart contracts.<\/li> <\/ul>"
},
{
"category": "coredevs",
"question": "What is Leader Election and Proof-of-Burn?",
"answer": "<p>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.”<\/p>"
},
{
"category": "coredevs",
"question": "What is a virtual chain",
"answer": "<p>Currently, Blockstack uses a “virtual chain” concept, where nodes only need to reach consensus on the shared “virtual chain” they’re interested in. Virtual chains do not interact with one another, and a single blockchain can host many virtual chains. The next iteration of the Blockstack chain no longer contains virtual chains.<\/p>"
},
{
"category": "coredevs",
"question": "How are user identities managed in the Blockstack architecture?",
"answer": "<p>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.<\/p>"
},
{
"category": "coredevs",
"question": "Can anyone register names on Blockstack?",
"answer": "<p>Anyone can register a name or identity on Blockstack — you just need to use a Blockstack client to submit a registration request to a Blockstack core node. All of that software is Open-Source and can be run without any centralized parties.<\/p>"
},
{
"category": "coredevs",
"question": "What is a Blockstack Subdomain?",
"answer": "<p>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 <code>~~foo.bar.baz~~<\/code> instead of <code>~~bar.baz~~<\/code>. For example, <a href='https://core.blockstack.org/v1/users/jude.personal.id'>jude.personal.id<\/a> is a Blockstack ID, and is a subdomain of <code>~~personal.id~~<\/code>. Hundreds of subdomains can be registered with a single transaction. The <a href='https://docs.blockstack.org/core/naming/introduction.html'>BNS documentation<\/a> describes them in detail.<\/p>"
},
{
"category": "coredevs",
"question": "Can I get a Blockstack subdomain without spending Bitcoin?",
"answer": "<p>Blockstack subdomains can be obtained without spending Bitcoin by asking a subdomain registrar to create one for you.<\/p>"
},
{
"category": "coredevs",
"question": "Is there a Blockstack name explorer?",
"answer": "<p>Yes! It’s at <a href='https://explorer.blockstack.org'>https://explorer.blockstack.org<\/a><\/p> "
},
{
"category": "coredevs",
"question": "Why should I trust the information, like name ownership or public key mappings, read from Blockstack?",
"answer": "<p>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.<\/p>"
},
{
"category": "coredevs",
"question": "Do you have a testnet or sandbox to experiment with Blockstack?",
"answer": "<p>We have an <a href='https://github.com/blockstack/blockstack-core/tree/master/integration_tests'>integration test framework<\/a> that provides a private Blockstack testnet. It uses <code>bitcoin -regtest<\/code> to create a private blockchain that you can interact with, without having to spend any Bitcoin or having to wait for blocks to confirm. Please see the <a href='https://github.com/blockstack/blockstack-core/blob/master/integration_tests/README.md'>README<\/a> for details.<\/p>"
},
{
"category": "coredevs",
"question": "Which blockchain do you use now?",
"answer": "<p>We use the Bitcoin blockchain for our source of truth.<\/p>"
},
{
"category": "coredevs",
"question": "Can the Blockstack blockchain fork?",
"answer": "<p>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 201 where <a href='https://blog.blockstack.org/the-launch-of-the-stacks-genesis-block/'>we introduced the genesis block<\/a> of the Stacks blockchain. For technical details, see the <a href='https://forum.blockstack.org/t/blockstack-annual-hard-fork-2018/6518'>2018 forum post for the annual hard fork<\/a>.<\/p>"
},
{
"category": "coredevs",
"question": "Which coin fuels the Blockstack blockchain?",
"answer": "<p>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 <a href='https://forum.blockstack.org/t/blockstack-annual-hard-fork-2018/6518'>2018 forum post for the annual hard fork<\/a>. 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.<\/p>"
},
{
"category": "coredevs",
"question": "How is the Blockstack network upgraded over time? What parties need to agree on an upgrade?",
"answer": "<p>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).<\/p> <p>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.<\/p>"
},
{
"category": "coredevs",
"question": "Who gets the registration fees for name registrations?",
"answer": "<p>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.<\/p>"
},
{
"category": "coredevs",
"question": "Do I need to run a full Blockstack node to use Blockstack?",
"answer": "<p>No. We maintain a fleet of Blockstack Core nodes that your Blockstack applications can connect to by default.<\/p>"
},
{
"category": "coredevs",
"question": "Can I run my own Blockstack node?",
"answer": "<p>If you want to run your own, we provide detailed instructions on our <a href='https://blockstack.org/install'>install page<\/a>. 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.<\/p>"
},
{
"category": "coredevs",
"question": "What is the capacity per block for registrations using Blockstack?",
"answer": "<p>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.<\/p>"
},
{
"category": "coredevs",
"question": "Can I programmatically register Blockstack IDs?",
"answer": "<p>Blockstack applications do not currently have have access to the user’s wallet. Users are expected to register Blockstack IDs themselves.<\/p> <p>However, if you feel particularly ambitious, you can do one of the following:<\/p> <ul> <li> <p>Set up a <code>blockstack api<\/code> endpoint (see the project <a href='https://github.com/blockstack/blockstack-core/blob/master/README.md'>README<\/a>) and write a program to automatically register names. Also, see the <a href='https://core.blockstack.org//#managing-names-register-a-name'>API documentation<\/a> for registering names on this endpoint.<\/p> <\/li> <li> <p>Write a <code>node.js<\/code> program that uses blockstack.js to register names. This is currently in development.<\/p> <\/li> <\/ul>"
},
{
"category": "coredevs",
"question": "Can I programmatically register Blockstack Subdomains?",
"answer": "<p>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.<\/p>"
},
{
"category": "coredevs",
"question": "What language is the Blockstack software written in?",
"answer": "<p>The current Stacks chain is implemented in Python 2. The next version of the Stacks chain will be written in Rust.<\/p> <p>Our libraries and many of our developer tools are written in Javascript (and we’re working on porting much of our Javascript to TypeScript).<\/p>"
},
{
"category": "coredevs",
"question": "What if the current companies and developers working on Blockstack disappear, would the network keep running?",
"answer": "<p>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.<\/p>"
},
{
"category": "appminers",
"question": "What is App Mining?",
"answer": "<p>Traditionally the term mining in cryptocurrency refers to the process of contributing compute resources to the network and earning a reward. In the Blockstack Ecosystem, instead of just mining through computation, developers mine by building apps and the Blockstack community funds them simply for being pioneers in the emerging Blockchain software market. <\/p> <p>We believe app mining represents a revolution in app funding, allowing small teams to bootstrap without advertising or venture capital. Each month, qualifying apps compete for funding. Qualified apps are evaluated and ranked by expert app reviewers. The better your app, the higher payout you earn. <\/p> <p>App mining is a new mining model that we expect will evolve and improve over time. We look forward to feedback from our community regarding the App Mining process and program. <\/p>"
},
{
"category": "appminers",
"question": "What is the App Mining timeline?",
"answer": "<h5>On the first of every month (or as listed on the calendar): <\/h5> <ul> <li>Registration is closed for that months ranking.<\/li> <li>Blockstack team sends the complete list of apps to our app reviewer partners. App miners do not need to reach out to the App Mining reviewers. <\/li> <li>Blockstack <strong>emails<\/strong> app miners are emailed about Product Hunt Hunting process. App miners can choose to hunt their app independently or can request to be featured by the Product Hunt the team. <a href='https://docs.blockstack.org/develop/mining_intro.html' target='_blank'>Read more<\/a>.<\/li> <li>App miners <strong>debate<\/strong> on their app in Democracy Earth. <a href='https://docs.blockstack.org/develop/vote-blockstack.html' target='_blank'>Read more<\/a>.<\/li><li>Registered stack holders <strong>are alerted<\/strong> about new apps and prompted to vote. <a href='https://docs.blockstack.org/develop/vote-blockstack.html' target='_blank'>Read more<\/a>.<\/li><\/ul><h5>Over the next two weeks:<\/h5> <ul> <li>TryMyUI Tests are happening. Please don’t perform upgrades that might break the app.<\/li> <li>Voters participate on <a href='https://vote.blockstack.org' target='_blank'>vote.blockstack.org<\/a>. <\/li> <li>Products are launched on Product Hunt. Product Hunt team performs internal review.<\/li> <\/ul> <h5>On the last day of ranking at 11:59pm ET: <\/h5> <p>App mining results are sent to Blockstack by app reviewer partners.<\/p> <h5>On the 15th (or as listed on the calendar):<\/h5> <p>Blockstack team performs App Mining algorithm as referenced <a href='https://blog.app.co/how-app-minings-ranking-algorithm-works/' target='_blank'>here<\/a>.<\/p> <h5>On the following weekday:<\/h5> <ul> <li>App miners are emailed login info to access their TryMyUI tests<\/li> <li>Full App Mining results are published<\/li> <\/ul>"
},
{
"category": "appminers",
"question": "Where can I find a calendar of App Mining events?",
"answer": "<p>The following calendar shows events each month related to App Mining:<\/p><p><iframe src='https://calendar.google.com/calendar/b/1/embed?showCalendars=0&amp;height=400&amp;wkst=1&amp;bgcolor=%23ffffff&amp;src=blockstack.com_u71ao2dalkd88b493k3671233s%40group.calendar.google.com&amp;color=%235229A3&amp;ctz=America%2FNew_York' style='border-width:0' width='600' height='400' frameborder='0' scrolling='no'><\/iframe><\/p>"
},
{
"category": "appminers",
"question": "How much can I earn and how are rewards distributed? ",
"answer": "<p>Payouts for the pilot run are $100k in total each month (the original alpha run paid out $25K. In the pilot run, the highest-ranked app receives 20% of the 100K, the next highest-ranked app receives 20% of the remaining 80%, and so on (this distribution is subject to change). <\/p><p>Rewards are paid in Bitcoin. The payouts are administered by Blockstack PBC and facilitated by App.co.<\/p>"
},
{
"category": "appminers",
"question": "How is App Mining different from cryptocurrency mining?",
"answer": "<p>Traditionally the term mining in cryptocurrency refers to the process of contributing compute resources to the network and earning a distributed of new tokens as a reward. On the Stacks blockchain, developers can “mine” by contributing apps to the ecosystem and making applications the community wants. <\/p>"
},
{
"category": "appminers",
"question": "What qualifies my app to compete in App Mining?",
"answer": "<p>Your app should integrate Blockstack authentication for logging into your app. Your finished app should be available to the public for use. In the future, App Mining may reward apps that have taken steps to further decentralize, such as utilizing Gaia storage or the publishing your app to the Blockstack Naming System. Test flight apps, hello-world apps and apps created through blockstack tutorials (e.g. animal kingdom apps) do not qualify.<\/p>"
},
{
"category": "appminers",
"question": "Does my app have to be listed on App.co to enter App Mining?",
"answer": "<p>Yes, it does.<\/p>"
},
{
"category": "appminers",
"question": "How do I submit my application for App Mining?",
"answer": "<p>Complete <a href='https://app.co/submit#'>the submission form on App.co<\/a>. Blockstack suggests registering several days before the ranking deadline — our team needs to verify your details to ensure your app qualifies. Full enrollment details can be found <a href='https://docs.blockstack.org/develop/mining_enroll.html' target='_blank'>here<\/a>. When you have met all the requirements, you should see your app listed <a href='https://app.co/mining/apps'>on this page<\/a>.<\/p>"
},
{
"category": "appminers",
"question": "When are my submission materials due?",
"answer": "<p>Your submission materials are due at 11:59 PM Eastern Time US on the last day of each month. For example, if you are making a submission for March, your materials must be submitted on or before Feb 28 at 11:59 EST.<\/p>"
},
{
"category": "appminers",
"question": "How often can I submit my application for App Mining?",
"answer": "<p>You need only to submit your application once. Each month after your submission, your app is competing in App Mining. <\/p>"
},
{
"category": "appminers",
"question": "How do I launch my app on Product Hunt as an app reviewer?",
"answer": "<p>Part of the ranking process includes an assessment by the Product Hunt app reviewer via their community vote and their internal team vote. You can find <a href='https://docs.blockstack.org/develop/mining_intro.html' target='_blank'>information on the algorithm in this documentation<\/a>.<\/p> <p>Your product's launch on Product Hunt has an impact on your final App Mining ranking as stated in the algorithm information. If your app has not been “hunted” yet on Product Hunt, you have the option to hunt the app independently or to ask Product Hunt to hunt it for you. Make sure you understand the hunting process. Only hunted products can be featured by Product Hunt. More information on successful product hunt launches <a href='https://blog.producthunt.com/how-to-launch-on-product-hunt-7c1843e06399' target='_blank'>can be found on the Product Hunt blog<\/a>.<\/p> <p>Blockstack will email each miner about the hunt process at the start of each App Mining review cycle. You should feel free to let us know your preference, hunt yourself or by Product Hunt, before the review cycle.<\/p>"
},
{
"category": "appminers",
"question": "Does my code repository need to be public?",
"answer": "<p>Your application code can be public or private.<\/p>"
},
{
"category": "appminers",
"question": "Is Blockstack Auth difficult to integrate?",
"answer": "<p>If you’re already building your app with JavaScript, adding Blockstack authentication is easy! We have docs, tutorials, and thorough API references for you to learn from. Vist the <a href='https://docs.blockstack.org/develop/zero_to_dapp_1.html'> Zero-to-Dapp tutorial<\/a> for end-to-end training. Or <a href='https://docs.blockstack.org/develop/auth_provider.html'>use this short example<\/a>.<\/p> <p>If you’re developing a traditional server-side application, you can still take advantage of Blockstack authentication. For an example, check out <a href='https://github.com/blockstack/blockstack-ruby'>our Ruby on Rails gem<\/a>.<\/p>"
},
{
"category": "appminers",
"question": "Who are the app reviewers?",
"answer": "<p>App reviewers are currently selected by Blockstack PBC. Reviewers are entities that have a proprietary methodology that helps them make objective judgements for why a certain app might be better than others. We strive to engage a diverse coalition of app reviewers with the goal of making application ranking objective and resilient to abuse. <\/p> <p>As of January 2019, the reviewers were: Product Hunt, Try My UI and Democracy Earth (who uses software to collect votes by Stacks token holders). See <a href='https://docs.blockstack.org/develop/mining_intro.html#how-apps-are-reviewed'>here<\/a> for more details about each reviewer. Future reviewers could expand to community election. Please see our <a href='https://github.com/blockstack/app-mining'>github repository<\/a> to raise issues or make suggestions for App Mining. <\/p>"
},
{
"category": "appminers",
"question": "How are apps ranked?",
"answer": "<p>App reviewers have a proprietary methodology that helps them make objective judgments for why one app might be better than another. Each app reviewers determines the data, formula, and personnel they wish to utilize. For example, Product Hunt can tap into their community data to determine relative app popularity. Reviewers must publish their methodology periodically to ensure transparency. <\/p> <p>To learn more see <a href='https://blog.app.co/how-app-minings-ranking-algorithm-works'>the detailed explanation of our ranking algorithm on our blog<\/a> and in <a href='https://docs.blockstack.org/develop/mining_intro.html'>our documentation<\/a>.<\/p><p>Apps may have unique circumstances such that the app cannot be ranked by all the reviewers, for example, apps that require specific hardware. In these cases, reviewers that can review and rank the app will. An app’s final ranking is determined by the average of those reviewers that can fully review the app.<\/p>"
},
{
"category": "appminers",
"question": "Do I have to Hunt my app on Product Hunt?",
"answer": "<p>As part of the ranking process, there is an assessment by App Reviewer Product Hunt via their community vote and their internal team vote. More info on the algorithm, <a href='https://docs.blockstack.org/develop/mining_intro.html'>here<\/a>. The Hunt launch will have an impact on your final ranking, as you can see in the algorithm breakdown. Here is <a href='https://blog.producthunt.com/how-to-launch-on-product-hunt-7c1843e06399'>more info<\/a> on Product Hunt launch best practices. In general, sharing and responsiveness to questions are encouraged and it might help your community reception if you choose to hunt the app yourself. If not, Product Hunt can hunt your App as well.<\/p><p>Apps will be hunted every 6 months, so if you hunted your app in a past month, as long as you are in the 6 month time window you will not have to Hunt the app. <\/p>"
},
{
"category": "appminers",
"question": "Can developers engage with voters on Democracy Earth?",
"answer": "<p>Yes, they can. App miners can and should create an account on Democracy Earth. From this account they can engage with voters through the debate feature. Learn more <a href='https://docs.blockstack.org/develop/vote-blockstack.html' target='_blank'>in the documentation<\/a>.<\/p>"
},
{
"category": "appminers",
"question": "When are the winning payments made?",
"answer": "<p>Payouts are made on the 15th of every month.<\/p>"
},
{
"category": "appminers",
"question": "What’s the incentive for user voting? ",
"answer": "<p>Voters in the App Mining ecosystem are currently Stacks token holders with incentive to strategically allocate resources in the ecosystem to apps they consider highly valuable. <\/p>"
},
{
"category": "appminers",
"question": "What are examples of any quantitative metrics that may be shared with app reviewers?",
"answer": "<p>Qualitative metrics are metrics that evaluate elements such as engagement, DAU/MAU ratios etc from the reviewed apps. Blockstack plans to incorporate metrics based ranking. However, before we do, any mechanism must thoughtfully incorporate the digital privacy rights of Blockstack users, and provide information in a way that cannot be gamed.<\/p> "
},
{
"category": "appminers",
"question": "Is App Mining Decentralized?",
"answer": "<p>Given the pioneering nature of the program, we are being careful and starting in a centralized fashion that allows for necessary diligence. We don’t want to bake in assumptions that have not been validated. The downside of this protection is some level of centralization, which we are taking steps to reduce over time. The pilot is the just the first step in creating a fair system that can be relied upon by founders and contribute to the growth of the Blockstack ecosystem. <\/p> <p>Blockstack plans to move along a path to decentralization and App Mining will too. It is important to highlight that initially App Mining will purposely have a few points of centralization highlighted below, which can become decentralized over time (all plans are subject to change, legal approval, and applicable law). <\/p> <h5>Electing app reviewers:<\/h5> <p>Currently, Blockstack PBC elects app reviewers. In the future, we anticipate gradually transitioning to community elections of App Reviewers. <\/p> <h5>Registering apps:<\/h5> <p>Currently, registering apps is regulated by Blockstack PBC through app.co/mining. In the future, we anticipate transitioning to publishing on designated Blockstack namespaces via our public blockchain. <\/p> <h5>Collecting votes:<\/h5> <p>Currently, votes are aggregated by Blockstack PBC and administered via App.co. In the future, we expect that votes will be collected through the protocol itself. <\/p> <h5>Issuing money:<\/h5> <p>Currently, payouts are issued by Blockstack PBC. In the future, we expect that payouts will over time be generated and deployed on an automated basis. <\/p>"
},
{
"category": "appminers",
"question": "How is App Mining protected against bribery, collusion, or gaming?",
"answer": "<p>We are taking potential threats very seriously and hope to create a fair system that continuously reinforces trust within our community for the long term. <\/p> <p>We are currently consulting with a team of 3 Ph.D. Game Theorist professors from Princeton University and New York University to determine thoughtful methods to protect App Mining from being attacked and/or abused. Our goal is to be as transparent as possible, but App Reviewers may reserve the right to keep some secrets in their formula to avoid bribes and gaming, and the algorithm that combines all of these score may be tuned in the future to account for new learnings. <\/p> <p>The Game Theorists are working with us to create a technical paper and broader documents like blogs explaining the overall mechanism <\/p>"
},
{
"category": "appminers",
"question": "App Mining Disclaimer",
"answer": "<p><i>This FAQ contains forward-looking statements, including statements regarding Blockstack PBC’s plans for its App Mining program. Forward-looking statements are subject to risks and uncertainties that could cause actual results to differ materially, and reported results should not be considered as an indication of future performance. Potential risks and uncertainties that could change our actual results include, but are not limited to, risks associated with: the failure of App Mining Program to successfully incentivize the development of applications for the Blockstack network; risks associated with attacks designed to influence the App Reviewers or game their methodologies; technical difficulties in the transition from a centralized to a decentralized administration of the program. These forward-looking statements speak only as of the date hereof. Blockstack PBC disclaims any obligation to update these forward-looking statements. <\/i><\/p> <p><i>Any decisions that may be made through the App Mining Program regarding rewards provided to app developers are not recommendations as to the quality of any investments that individuals may make in a company that receives rewards. If you are considering an investment in any of these companies, you should make your own decision regarding that investment and not rely in any way on the results of the App Mining program. <\/i><\/p>"
},
{
"category": "opensource",
"question": "How old is the Blockstack project?",
"answer": "<p>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.<\/p>"
},
{
"category": "opensource",
"question": "What is the current development roadmap look like?",
"answer": "<p>See this page for the <a href='https://blockstack.org/roadmap'>current development roadmap.<\/a><\/p>"
},
{
"category": "opensource",
"question": "Where are the current core developers based? What are the requirements for being a core developer?",
"answer": "<p>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 <a href='https://github.com/blockstack/blockstack-core'>core open-source software<\/a> 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.<\/p>"
},
{
"category": "opensource",
"question": "I heard some companies working on Blockstack have raised venture capital, how does that impact the project?",
"answer": "<p>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 &amp; 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.<\/p>"
},
{
"category": "miscquest",
"question": "What’s the difference between Onename and Blockstack?",
"answer": "<p>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.<\/p>"
},
{
"category": "miscquest",
"question": "How is Blockstack different from Namecoin?",
"answer": "<p>Blockstack DNS differs from Namecoin DNS in a few fundamental ways: blockchain layering, storage models, name pricing models, and incentives for miners. We wrote a post where you can learn more here: <a href='https://blockstack.org/docs/blockstack-vs-namecoin'>https://blockstack.org/docs/blockstack-vs-namecoin<\/a><\/p>"
},
{
"category": "miscquest",
"question": "Does Blockstack use a DHT (Distributed Hash Table)?",
"answer": "<p>It does not, as of November 2016. It uses a much more reliable system called the Atlas Network. Details here: <a href='https://blockstack.org/blog/blockstack-core-v0-14-release/'>https://blockstack.org/blog/blockstack-core-v0-14-release/<\/a><\/p>"
},
{
"category": "wallet",
"question": "What is a seed phrase?",
"answer": "<p>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 <strong>you can never access your wallet or your token allocation ever again<\/strong>.<\/p> <p class='uk-alert-danger' ><strong>Warning<\/strong>: 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.<\/p> <p>Keep your seed phrase secret. Just as with a banking pin, anyone that knows or steals your seed phrase can access your allocation.<\/p> <p>You should write your seed phrase down and store the paper you write on in at least two secure locations. A safe or lock box is a good location. You can also store it online in an encrypted password manager such as 1Password. You should <em>never<\/em> simply store a seed phrase in Apple Cloud or Dropbox.<\/p>"
},
{
"category": "wallet",
"question": "How do I keep my tokens secure?",
"answer": "<p>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:<\/p> <ul> <li> <p><strong>Website Safety<\/strong>: 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.<\/p> <\/li> <li> <p><strong>Email Safety<\/strong>: Blockstack will never ask for your personal identifying information over e-mail, 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).<\/p> <\/li> <\/ul> <p>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.<\/p>"
},
{
"category": "wallet",
"question": "When will the new Stacks wallet be available?",
"answer": "<p>An initial version of the Stacks wallet was released for the token sale. With the launch of the Stacks genesis block, that software wallet was retired. An updated version of the Stacks wallet is expected to be released in November 2018.<\/p>"
},
{
"category": "wallet",
"question": "What is a public Stacks wallet address?",
"answer": "<p>During the initial grant process, investors submitted a <em>public Stacks wallet address<\/em> to Blockstack. This is a string of letters and numbers starting with an ‘SP’ or SM’, for example <code>SP017AUV5YRM7HT3TSQXJF7FCCYXETAB276BQ6XY<\/code> is a wallet address.<\/p> <p>If you purchased Stacks tokens through CoinList, you can find your address at <a href='https://coinlist.co/distributions'>CoinList<\/a>. 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 <a href='mailto:hello@stackstoken.com'>hello@stackstoken.com<\/a> for help.<\/p>"
},
{
"category": "wallet",
"question": "How do I get help from a person?",
"answer": "<p>For questions or help regarding the Stacks token, you can contact us at <a href='mailto:hello@stackstoken.com'>hello@stackstoken.com<\/a>.<\/p>"
},
{
"category": "tokens",
"question": "Where can I buy Stacks?",
"answer": "<p>Blockstack Token LLC (“Blockstack”) is not currently offering Stacks for sale. Please keep an eye out for updates at <a href='http://stackstoken.com'>stackstoken.com<\/a>, where you may also subscribe for updates by joining our mailing list.<\/p>"
},
{
"category": "tokens",
"question": "I have a voucher for Stacks. When can I redeem my voucher?",
"answer": "<p>We cannot currently comment on future sales or offers of Stacks. Please keep an eye out for updates at <a href='http://stackstoken.com'>stackstoken.com<\/a>, where you may also subscribe for updates by joining our mailing list. Thanks for your patience!<\/p>"
},
{
"category": "tokens",
"question": "Is there an exchange where I can buy and sell Stacks?",
"answer": "<p>There is currently no authorized exchange for buying and selling Stacks or Stacks futures, and we cannot comment on when an exchange might list Stacks at this time. Please keep an eye out for updates at <a href='http://stackstoken.com'>stackstoken.com<\/a>. If you see Stacks listed on an exchange, please let us know at <a href='mailto:legal@blockstack.com'>legal@blockstack.com<\/a>, as the listing may be illegal or a scam.<\/p>"
},
{
"category": "tokens",
"question": "Can I sell or transfer Stacks directly to someone else?",
"answer": "<p>If you purchased Stacks from our 2017 token sale, it may be possible to sell or transfer Stacks directly to another person in a peer-to-peer transaction. We recommend you consult an attorney before engaging in such a transaction, especially if buying or selling from or to a U.S. person or entity, as we cannot give you legal or regulatory advice.<\/p>"
},
{
"category": "tokens",
"question": "What is the Stacks holding or lock-up period?",
"answer": "<p>Stacks purchased from our 2017 token sale are subject to two separate holding or lock-up periods that run in tandem: (1) a one-year holding period required by law that prohibits sale or transfer of Stacks within one year of the date of purchase of the SAFT or fund interests that gave you the right to tokens, and (2) a monthly time-lock built into our blockchain that unlocks 1/24th of your Stacks on the date of the Blockchain launch on October 29, 2018, and then an additional 1/24th approximately each month thereafter. Because the 2017 token sale took place over one year ago, the one-year holding period should be over for most investors. You may check the status of your monthly time-lock at <a href='https://explorer.blockstack.org/'>https://explorer.blockstack.org/<\/a>.<\/p>"
},
{
"category": "tokens",
"question": "I have a tax question about my Stacks. Whom should I talk to?",
"answer": "<p>If you have a tax question about your Stacks, 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.<\/p>"
}
]
}

7
_develop/appMiningFAQ.md

@ -7,8 +7,9 @@ permalink: /:collection/:path.html
* TOC
{:toc}
{% for faq in site.data.appFAQ.faqs %}
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'appminers' %}
## {{ faq.question }}
{{ faq.answer }}
{{ faq.answer }}
{% endif %}
{% endfor %}

92
_faqs/allFAQS.md

@ -0,0 +1,92 @@
---
layout: org
permalink: /:collection/:path.html
---
# Blockstack FAQs
This is a comprehensive list of all the Blockstack FAQs.
* TOC
{:toc}
## General questions
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'general' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## Application users
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'appusers' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## Stacks Wallet
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'wallet' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## Stacks tokens
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'tokens' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## DApp developers
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'dappdevs' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## Application Miners
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'appminers' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## Core developers
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'coredevs' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## Open source developers
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'opensource' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}
## Miscellaneous questions
{% for faq in site.data.theFAQs.faqs %}
{% if faq.category == 'miscquest' %}
### {{ faq.question }}
{{ faq.answer }}
{% endif %}
{% endfor %}

4
_faqs/allfaqs.json

@ -0,0 +1,4 @@
---
layout: null
---
{{ site.data.theFAQs | jsonify }}
Loading…
Cancel
Save