{"url":"https://docs.blockstack.org/browser/browser-introduction.html","headline":"Get the Blockstack Browser","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/browser-introduction.html"},"description":"Get the Blockstack Browser","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/browser-introduction.html","headline":"Get the Blockstack Browser","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/browser-introduction.html"},"description":"Get the Blockstack Browser","@type":"BlogPosting","@context":"http://schema.org"}</script>
<spandata-uk-icon="icon: pencil; ratio: 1.2"></span> Edit this page on Github</a>
<spandata-uk-icon="icon: pencil; ratio: 1.2"></span> Edit this page on Github</a>
<spanstyle="font-family:Wingdings">w</span> Oct 22, 2018
<spanstyle="font-family:Wingdings">w</span> Oct 25, 2018
</time>
</time>
</div>
</div>
@ -209,11 +209,10 @@ Browser is itself, a simple Dapp. It allows you to:</p>
<li>find and launch Dapps</li>
<li>find and launch Dapps</li>
</ul>
</ul>
<p>There are editorions of the Blockstack Browser, the web edition is an
<p>There are two editions of the Blockstack Browser, the web edition is an
application you access through your web browser by simply <ahref="https://browser.blockstack.org/">visit the
application you access through your web browser by simply <ahref="https://browser.blockstack.org/"target="\_blank">visiting the application’s
applications’ address</a> in your computer’s
address</a> in your computer’s browser. You can also install the browser as a
browser. You can also install the browser as a client application on your
client application on your computer.</p>
computer.</p>
<p>If all you want to do is create, manage, and fund an identity and then interact
<p>If all you want to do is create, manage, and fund an identity and then interact
with Dapps, you can simply use the web edition. If you have concerns about net
with Dapps, you can simply use the web edition. If you have concerns about net
@ -244,15 +243,14 @@ may find it useful to install the client edition.</p>
<p>The Blockstack Browser installer is a <em>multiple-context</em> installer. If you
<p>The Blockstack Browser installer is a <em>multiple-context</em> installer. If you
run it as a user, the installation is avalable only for that user. If you
run it as a user, the installation is avalable only for that user. If you
install as administrator, the installation installs for all users. To find an
install as administrator, the installation installs for all users. To find an
installer for your operating system, visit <ahref="https://blockstack.org/install">the Blockstack install
installer for your operating system, visit <ahref="https://blockstack.org/install"target="\_blank">the browser installation page</a>.</p>
page</a>.</p>
<h3id="on-mac">On Mac</h3>
<h3id="on-mac">On Mac</h3>
<p>Installation requires that you have macOS High Sierra 10.12 or higher. Do the following to install:</p>
<p>Installation requires that you have macOS High Sierra 10.12 or higher. Do the following to install:</p>
<ol>
<ol>
<li>Download the OSX installer from <ahref="https://blockstack.org/install">the browser installation page</a>.</li>
<li>Download the OSX installer from <ahref="https://blockstack.org/install"target="\_blank">the browser installation page</a>.</li>
<li>
<li>
<p>Double-click the downloaded DMG file to launch the installer.</p>
<p>Double-click the downloaded DMG file to launch the installer.</p>
@ -288,7 +286,7 @@ you are already logged into the local application:</p>
install:</p>
install:</p>
<ol>
<ol>
<li>Download the Windows installer from from <ahref="https://blockstack.org/install">the browser installation page</a>.</li>
<li>Download the Windows installer from from <ahref="https://blockstack.org/install"target="\_blank">the browser installation page</a>.</li>
<li>
<li>
<p>Double-click the installer package to launch it.</p>
<p>Double-click the installer package to launch it.</p>
@ -315,7 +313,7 @@ install:</p>
<h3id="on-linux">On Linux</h3>
<h3id="on-linux">On Linux</h3>
<p>The Blockstack installation on Linux requires Docker. Before installing
<p>The Blockstack installation on Linux requires Docker. Before installing
Blockstack, <ahref="https://docs.docker.com/install/">install the version of Docker appropriate for your operating system</a>.</p>
Blockstack, <ahref="https://docs.docker.com/install/"target="\_blank">install the version of Docker appropriate for your operating system</a>.</p>
<blockquote>
<blockquote>
<p><strong>Note</strong>: The Blockstack script used in this procedure runs <codeclass="highlighter-rouge">docker</code> commands. Depending on how you installed and configure Dockered on your system, it may or may not be necessary to have <codeclass="highlighter-rouge">root</code> or <codeclass="highlighter-rouge">sudo</code> privileges. For this reason, the commands below show the use of <codeclass="highlighter-rouge">sudo</code> when interacting with the script or the <codeclass="highlighter-rouge">docker</code> executable. If your installation allows running Docker with lower privileges, you can omit it.</p>
<p><strong>Note</strong>: The Blockstack script used in this procedure runs <codeclass="highlighter-rouge">docker</code> commands. Depending on how you installed and configure Dockered on your system, it may or may not be necessary to have <codeclass="highlighter-rouge">root</code> or <codeclass="highlighter-rouge">sudo</code> privileges. For this reason, the commands below show the use of <codeclass="highlighter-rouge">sudo</code> when interacting with the script or the <codeclass="highlighter-rouge">docker</code> executable. If your installation allows running Docker with lower privileges, you can omit it.</p>
@ -323,7 +321,7 @@ Blockstack, <a href="https://docs.docker.com/install/">install the version of Do
<ol>
<ol>
<li>
<li>
<p>Download the Linux installer from from <ahref="https://blockstack.org/install">the browser installation page</a>.</p>
<p>Download the Linux installer from from <ahref="https://blockstack.org/install"target="\_blank">the browser installation page</a>.</p>
<p>This downloads a <codeclass="highlighter-rouge">Blockstack-for-Linux-v0.30.0.sh</code> script to your local drive.</p>
<p>This downloads a <codeclass="highlighter-rouge">Blockstack-for-Linux-v0.30.0.sh</code> script to your local drive.</p>
{"url":"https://docs.blockstack.org/browser/browser-nav.html","headline":"Browser Nav","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/browser-nav.html"},"description":"On this page, you learn more about working with IDs, the Wallet, and Settings.","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/browser-nav.html","headline":"Browser Nav","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/browser-nav.html"},"description":"On this page, you learn more about working with IDs, the Wallet, and Settings.","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/ids-creating.html","headline":"Working with IDS","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/ids-creating.html"},"description":"Working with IDS","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/ids-creating.html","headline":"Working with IDS","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/ids-creating.html"},"description":"Working with IDS","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/ids-introduction.html","headline":"Get and use a Blockstack ID","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/ids-introduction.html"},"description":"Get and use a Blockstack ID","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/ids-introduction.html","headline":"Get and use a Blockstack ID","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/ids-introduction.html"},"description":"Get and use a Blockstack ID","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/multi-player-storage.html","headline":"Manage Data with Gaia","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/multi-player-storage.html"},"description":"Manage Data with Gaia","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/multi-player-storage.html","headline":"Manage Data with Gaia","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/multi-player-storage.html"},"description":"Manage Data with Gaia","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/purchase-id.html","headline":"Purchase your own domain ID","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/purchase-id.html"},"description":"Purchase your own domain ID","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/purchase-id.html","headline":"Purchase your own domain ID","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/purchase-id.html"},"description":"Purchase your own domain ID","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/todo-list.html","headline":"Todo List Application Tutorial","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/todo-list.html"},"description":"Todo List Application Tutorial","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/browser/todo-list.html","headline":"Todo List Application Tutorial","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/browser/todo-list.html"},"description":"Todo List Application Tutorial","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/atlas/howtouse.html","headline":"How to Use the Atlas Network","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/atlas/howtouse.html"},"description":"How to Use the Atlas Network","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/atlas/howtouse.html","headline":"How to Use the Atlas Network","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/atlas/howtouse.html"},"description":"How to Use the Atlas Network","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/atlas/overview.html","headline":"Overview of the Atlas network","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/atlas/overview.html"},"description":"Overview of the Atlas network","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/atlas/overview.html","headline":"Overview of the Atlas network","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/atlas/overview.html"},"description":"Overview of the Atlas network","@type":"BlogPosting","@context":"http://schema.org"}</script>
<spandata-uk-icon="icon: pencil; ratio: 1.2"></span> Edit this page on Github</a>
<spandata-uk-icon="icon: pencil; ratio: 1.2"></span> Edit this page on Github</a>
<spanstyle="font-family:Wingdings">w</span> Oct 22, 2018
<spanstyle="font-family:Wingdings">w</span> Oct 25, 2018
</time>
</time>
</div>
</div>
@ -211,11 +233,11 @@
<pclass="no_toc">These FAQs are intended for developers of Blockstack.</p>
<pclass="no_toc">These FAQs are intended for developers of Blockstack.</p>
<ulid="markdown-toc">
<ulid="markdown-toc">
<li><ahref="#im-a-web-developer--can-i-build-on-blockstack"id="markdown-toc-im-a-web-developer--can-i-build-on-blockstack">I’m a Web developer. Can I build on Blockstack?</a></li>
<li><ahref="#im-a-web-developer--can-i-build-on-blockstack"id="markdown-toc-im-a-web-developer--can-i-build-on-blockstack">I’m a web developer. Can I build on Blockstack?</a></li>
<li><ahref="#im-a-non-web-developer--can-i-build-on-blockstack"id="markdown-toc-im-a-non-web-developer--can-i-build-on-blockstack">I’m a non-Web developer. Can I build on Blockstack?</a></li>
<li><ahref="#im-a-non-web-developer--can-i-build-on-blockstack"id="markdown-toc-im-a-non-web-developer--can-i-build-on-blockstack">I’m a non-web developer. Can I build on Blockstack?</a></li>
<li><ahref="#whats-the-difference-between-a-web-app-and-a-blockstack-app"id="markdown-toc-whats-the-difference-between-a-web-app-and-a-blockstack-app">What’s the difference between a Web app and a Blockstack app?</a></li>
<li><ahref="#whats-the-difference-between-a-web-app-and-a-blockstack-app"id="markdown-toc-whats-the-difference-between-a-web-app-and-a-blockstack-app">What’s the difference between a web app and a Blockstack app?</a></li>
<li><ahref="#do-i-need-to-learn-any-new-languages-or-frameworks"id="markdown-toc-do-i-need-to-learn-any-new-languages-or-frameworks">Do I need to learn any new languages or frameworks?</a></li>
<li><ahref="#do-i-need-to-learn-any-new-languages-or-frameworks"id="markdown-toc-do-i-need-to-learn-any-new-languages-or-frameworks">Do I need to learn any new languages or frameworks?</a></li>
<li><ahref="#how-does-my-web-app-interact-with-blockstack"id="markdown-toc-how-does-my-web-app-interact-with-blockstack">How does my Web app interact with Blockstack?</a></li>
<li><ahref="#how-does-my-web-app-interact-with-blockstack"id="markdown-toc-how-does-my-web-app-interact-with-blockstack">How does my web app interact with Blockstack?</a></li>
<li><ahref="#what-does-blockstackjs-do"id="markdown-toc-what-does-blockstackjs-do">What does <codeclass="highlighter-rouge">blockstack.js</code> do?</a></li>
<li><ahref="#what-does-blockstackjs-do"id="markdown-toc-what-does-blockstackjs-do">What does <codeclass="highlighter-rouge">blockstack.js</code> do?</a></li>
<li><ahref="#how-do-i-use-blockstackjs"id="markdown-toc-how-do-i-use-blockstackjs">How do I use <codeclass="highlighter-rouge">blockstack.js</code>?</a></li>
<li><ahref="#how-do-i-use-blockstackjs"id="markdown-toc-how-do-i-use-blockstackjs">How do I use <codeclass="highlighter-rouge">blockstack.js</code>?</a></li>
<li><ahref="#how-can-i-look-up-names-and-profiles"id="markdown-toc-how-can-i-look-up-names-and-profiles">How can I look up names and profiles?</a></li>
<li><ahref="#how-can-i-look-up-names-and-profiles"id="markdown-toc-how-can-i-look-up-names-and-profiles">How can I look up names and profiles?</a></li>
@ -229,13 +251,13 @@
<li><ahref="#can-blockstack-applications-interact-with-bitcoin-ethereum-smart-contracts-other-blockchains"id="markdown-toc-can-blockstack-applications-interact-with-bitcoin-ethereum-smart-contracts-other-blockchains">Can Blockstack applications interact with Bitcoin? Ethereum? Smart contracts? Other blockchains?</a></li>
<li><ahref="#can-blockstack-applications-interact-with-bitcoin-ethereum-smart-contracts-other-blockchains"id="markdown-toc-can-blockstack-applications-interact-with-bitcoin-ethereum-smart-contracts-other-blockchains">Can Blockstack applications interact with Bitcoin? Ethereum? Smart contracts? Other blockchains?</a></li>
</ul>
</ul>
<h2id="im-a-web-developer--can-i-build-on-blockstack">I’m a Web developer. Can I build on Blockstack?</h2>
<h2id="im-a-web-developer--can-i-build-on-blockstack">I’m a web developer. Can I build on Blockstack?</h2>
<p>Yes! Blockstack is geared primarily towards Web developers. All of your
<p>Yes! Blockstack is geared primarily towards web developers. All of your
existing knowledge is immediately applicable to Blockstack. Anything you can do
existing knowledge is immediately applicable to Blockstack. Anything you can do
in a Web browser, you can do in a Blockstack app.</p>
in a web browser, you can do in a Blockstack app.</p>
<h2id="im-a-non-web-developer--can-i-build-on-blockstack">I’m a non-Web developer. Can I build on Blockstack?</h2>
<h2id="im-a-non-web-developer--can-i-build-on-blockstack">I’m a non-web developer. Can I build on Blockstack?</h2>
<p>Yes! Blockstack implements a <ahref="https://core.blockstack.org">RESTful API</a> which
<p>Yes! Blockstack implements a <ahref="https://core.blockstack.org">RESTful API</a> which
lets you interact with Blockstack from any language and any runtime. In fact,
lets you interact with Blockstack from any language and any runtime. In fact,
@ -244,34 +266,33 @@ the reference client
wrapper around these RESTful API calls, so you won’t be missing much by using a
wrapper around these RESTful API calls, so you won’t be missing much by using a
language other than Javascript.</p>
language other than Javascript.</p>
<h2id="whats-the-difference-between-a-web-app-and-a-blockstack-app">What’s the difference between a Web app and a Blockstack app?</h2>
<h2id="whats-the-difference-between-a-web-app-and-a-blockstack-app">What’s the difference between a web app and a Blockstack app?</h2>
<p>Blockstack apps are built like <ahref="https://en.wikipedia.org/wiki/Single-page_application">single-page Web
<p>Blockstack apps are built like <ahref="https://en.wikipedia.org/wiki/Single-page_application">single-page web
apps</a>—they are, in
apps</a>—they are, in
fact, a type of Web application.</p>
fact, a type of web application.</p>
<p>Blockstack apps are a subset of Web applications that use Blockstack’s
<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.
technology to preserve the user’s control over their identities and data. As
As such, they tend to be simpler
such, they tend to be simple in design and operation, since in many cases they
in design and operation, since in many cases they don’t have to host anything
don’t have to host anything besides the application’s assets.</p>
besides the application’s assets.</p>
<h2id="do-i-need-to-learn-any-new-languages-or-frameworks">Do I need to learn any new languages or frameworks?</h2>
<h2id="do-i-need-to-learn-any-new-languages-or-frameworks">Do I need to learn any new languages or frameworks?</h2>
<p>No. Blockstack applications are built using existing Web frameworks and programming
<p>No. Blockstack applications are built using existing web frameworks and programming
The only new thing you need to learn is either <ahref="https://github.com/blockstack/blockstack.js">blockstack.js</a> or
The only new thing you need to learn is either <ahref="https://github.com/blockstack/blockstack.js">blockstack.js</a> or
the <ahref="https://core.blockstack.org">Blockstack RESTful API</a>.</p>
the <ahref="https://core.blockstack.org">Blockstack RESTful API</a>.</p>
<h2id="how-does-my-web-app-interact-with-blockstack">How does my Web app interact with Blockstack?</h2>
<h2id="how-does-my-web-app-interact-with-blockstack">How does my web app interact with Blockstack?</h2>
any Web application the ability to interact with Blockstack’s authentication and
any web application the ability to interact with Blockstack’s authentication and
storage services. In addition, we supply a <ahref="https://core.blockstack.org">public RESTful API</a>.</p>
storage services. In addition, we supply a <ahref="https://core.blockstack.org">public RESTful API</a>.</p>
<h2id="what-does-blockstackjs-do">What does <codeclass="highlighter-rouge">blockstack.js</code> do?</h2>
<h2id="what-does-blockstackjs-do">What does <codeclass="highlighter-rouge">blockstack.js</code> do?</h2>
<p>This is the reference client implementation for Blockstack. You use it in your
<p>This is the reference client implementation for Blockstack. You use it in your
Web app to do the following:</p>
web app to do the following:</p>
<ul>
<ul>
<li>Authenticate users</li>
<li>Authenticate users</li>
@ -281,7 +302,7 @@ Web app to do the following:</p>
<h2id="how-do-i-use-blockstackjs">How do I use <codeclass="highlighter-rouge">blockstack.js</code>?</h2>
<h2id="how-do-i-use-blockstackjs">How do I use <codeclass="highlighter-rouge">blockstack.js</code>?</h2>
<p>Please see the API documentation <ahref="https://github.com/blockstack/blockstack.js">here</a>.</p>
<p>We have <ahref="/browser/hello-blockstack.html">several examples</a> you can use to get started. Please see the API documentation <ahref="https://github.com/blockstack/blockstack.js">here</a>.</p>
<h2id="how-can-i-look-up-names-and-profiles">How can I look up names and profiles?</h2>
<h2id="how-can-i-look-up-names-and-profiles">How can I look up names and profiles?</h2>
<p>Set up a <codeclass="highlighter-rouge">blockstack api</code> endpoint (see the project <ahref="https://github.com/blockstack/blockstack-core/blob/master/README.md">README</a>) and write a
<p>Set up a <codeclass="highlighter-rouge">blockstack api</code> endpoint (see the project <ahref="https://github.com/blockstack/blockstack-core/blob/master/README.md">README</a>) and write a
program to automatically register names. Also, see the <ahref="https://blockstack.github.io/blockstack-core/#managing-names-register-a-name">API
program to automatically register names. Also, see the <ahref="https://core.blockstack.org//#managing-names-register-a-name">API
documentation</a>
documentation</a>
for registering names on this endpoint.</p>
for registering names on this endpoint.</p>
</li>
</li>
@ -342,7 +363,7 @@ names. This is currently in development.</p>
<h2id="can-i-programmatically-register-blockstack-subdomains">Can I programmatically register Blockstack Subdomains?</h2>
<h2id="can-i-programmatically-register-blockstack-subdomains">Can I programmatically register Blockstack Subdomains?</h2>
<p>Yes! Once you deploy your own subdomain registrar, you can have your Web app
<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
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>
create a program that drives subdomain registration on your Blockstack ID.</p>
@ -367,7 +388,7 @@ principle applies to a lot of useful decentralized applications.</p>
<h2id="can-blockstack-applications-interact-with-bitcoin-ethereum-smart-contracts-other-blockchains">Can Blockstack applications interact with Bitcoin? Ethereum? Smart contracts? Other blockchains?</h2>
<h2id="can-blockstack-applications-interact-with-bitcoin-ethereum-smart-contracts-other-blockchains">Can Blockstack applications interact with Bitcoin? Ethereum? Smart contracts? Other blockchains?</h2>
<p>Yes! Since Blockstack applications are built like Web applications, all you need to do is include the
<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>
relevant Javascript library into your application.</p>
{"url":"https://docs.blockstack.org/core/naming/architecture.html","headline":"Understand the Architecture","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/architecture.html"},"description":"Understand the Architecture","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/architecture.html","headline":"Understand the Architecture","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/architecture.html"},"description":"Understand the Architecture","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/comparison.html","headline":"Naming system feature comparison","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/comparison.html"},"description":"Naming system feature comparison","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/comparison.html","headline":"Naming system feature comparison","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/comparison.html"},"description":"Naming system feature comparison","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/creationhowto.html","headline":"Creating a Namespace","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/creationhowto.html"},"description":"Creating a Namespace","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/creationhowto.html","headline":"Creating a Namespace","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/creationhowto.html"},"description":"Creating a Namespace","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/introduction.html","headline":"Blockstack Naming Service (BNS)","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/introduction.html"},"description":"Blockstack Naming Service (BNS)","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/introduction.html","headline":"Blockstack Naming Service (BNS)","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/introduction.html"},"description":"Blockstack Naming Service (BNS)","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/pickname.html","headline":"Choose a name","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/pickname.html"},"description":"Choose a name","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/pickname.html","headline":"Choose a name","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/pickname.html"},"description":"Choose a name","@type":"BlogPosting","@context":"http://schema.org"}</script>
<spandata-uk-icon="icon: pencil; ratio: 1.2"></span> Edit this page on Github</a>
<spandata-uk-icon="icon: pencil; ratio: 1.2"></span> Edit this page on Github</a>
<spanstyle="font-family:Wingdings">w</span> Oct 22, 2018
<spanstyle="font-family:Wingdings">w</span> Oct 25, 2018
</time>
</time>
</div>
</div>
@ -292,10 +292,10 @@ following sections:</p>
<ulid="markdown-toc">
<ulid="markdown-toc">
<li><ahref="#intended-uses-for-a-namespace"id="markdown-toc-intended-uses-for-a-namespace">Intended uses for a namespace</a></li>
<li><ahref="#intended-uses-for-a-namespace"id="markdown-toc-intended-uses-for-a-namespace">Intended uses for a namespace</a></li>
<li><ahref="#list-all-namespaces-in-existence-reference"id="markdown-toc-list-all-namespaces-in-existence-reference">List all namespaces in existence (reference).</a></li>
<li><ahref="#list-all-namespaces-in-existence-reference"id="markdown-toc-list-all-namespaces-in-existence-reference">List all namespaces in existence (<ahref="https://core.blockstack.org/#namespace-operations-get-all-namespaces"target="\_blank">reference</a>).</a></li>
<li><ahref="#list-all-names-within-a-namespace-reference"id="markdown-toc-list-all-names-within-a-namespace-reference">List all names within a namespace (reference)</a></li>
<li><ahref="#list-all-names-within-a-namespace-reference"id="markdown-toc-list-all-names-within-a-namespace-reference">List all names within a namespace (<ahref="https://core.blockstack.org/#namespace-operations-get-all-namespaces"target="\_blank">reference</a>).</a></li>
<li><ahref="#get-the-cost-to-register-a-namespace-reference"id="markdown-toc-get-the-cost-to-register-a-namespace-reference">Get the Cost to Register a Namespace (reference)</a></li>
<li><ahref="#get-the-cost-to-register-a-namespace-reference"id="markdown-toc-get-the-cost-to-register-a-namespace-reference">Get the Cost to Register a Namespace (<ahref="https://core.blockstack.org/#price-checks-get-namespace-price"target="\_blank">reference</a>).</a></li>
<li><ahref="#getting-the-current-consensus-hash-reference"id="markdown-toc-getting-the-current-consensus-hash-reference">Getting the Current Consensus Hash (reference)</a></li>
<li><ahref="#getting-the-current-consensus-hash-reference"id="markdown-toc-getting-the-current-consensus-hash-reference">Getting the Current Consensus Hash (<ahref="https://core.blockstack.org/#blockchain-operations-get-consensus-hash"target="\_blank">reference</a>).</a></li>
<li><ahref="#create-a-namespace"id="markdown-toc-create-a-namespace">Create a namespace</a></li>
<li><ahref="#create-a-namespace"id="markdown-toc-create-a-namespace">Create a namespace</a></li>
</ul>
</ul>
@ -305,13 +305,14 @@ following sections:</p>
namespace for its own purposes. Applications can use namespaces for things like:</p>
namespace for its own purposes. Applications can use namespaces for things like:</p>
<ul>
<ul>
<li>Giving users a SSO system, where each user registers their public key under a
<li>
<p>Giving users a SSO system, where each user registers their public key under a
username. Blockstack applications do this with names in the <codeclass="highlighter-rouge">.id</code> namespace,
username. Blockstack applications do this with names in the <codeclass="highlighter-rouge">.id</code> namespace,
for example.</li>
for example.</p>
</li>
<li>Providing a subscription service, where each name is a 3rd party that provides
<li>Providing a subscription service, where each name is a 3rd party that provides
a service for users to subscribe to. For example, names in
a service for users to subscribe to. For example, names in
<codeclass="highlighter-rouge">.podcast</code> point to podcasts that users of the
<codeclass="highlighter-rouge">.podcast</code> point to podcasts that users of the <ahref="https://dotpodcast.co"target="\_blank">DotPodcast</a> app can subscribe to.</li>
<ahref="https://dotpodcast.co">DotPodcast</a> app can subscribe to.</li>
<li>Implementing software licenses, where each name corresponds to an access key.
<li>Implementing software licenses, where each name corresponds to an access key.
Unlike conventional access keys, access keys implemented as names
Unlike conventional access keys, access keys implemented as names
can be sold and traded independently. The licensing fee (paid as a name
can be sold and traded independently. The licensing fee (paid as a name
@ -327,7 +328,7 @@ gives them a way to measure economic activity.</p>
<p>Developers can query individual namespaces and look up names within them using
<p>Developers can query individual namespaces and look up names within them using
the BNS API.</p>
the BNS API.</p>
<h2id="list-all-namespaces-in-existence-reference">List all namespaces in existence (<ahref="https://core.blockstack.org/#namespace-operations-get-all-namespaces">reference</a>).</h2>
<h2id="list-all-namespaces-in-existence-reference">List all namespaces in existence (<ahref="https://core.blockstack.org/#namespace-operations-get-all-namespaces"target="\_blank">reference</a>).</h2>
<h2id="list-all-names-within-a-namespace-reference">List all names within a namespace (<ahref="https://core.blockstack.org/#namespace-operations-get-all-namespaces">reference</a>)</h2>
<h2id="list-all-names-within-a-namespace-reference">List all names within a namespace (<ahref="https://core.blockstack.org/#namespace-operations-get-all-namespaces"target="\_blank">reference</a>).</h2>
<h2id="get-the-cost-to-register-a-namespace-reference">Get the Cost to Register a Namespace (<ahref="https://core.blockstack.org/#price-checks-get-namespace-price">reference</a>)</h2>
<h2id="get-the-cost-to-register-a-namespace-reference">Get the Cost to Register a Namespace (<ahref="https://core.blockstack.org/#price-checks-get-namespace-price"target="\_blank">reference</a>).</h2>
<p>If you want to register a namespace, please see the <ahref="/core/naming/namespace.html">namespace creation section</a>.</p>
<p>If you want to register a namespace, please see the <ahref="/core/naming/namespace.html">namespace creation section</a>.</p>
<h2id="getting-the-current-consensus-hash-reference">Getting the Current Consensus Hash (<ahref="https://core.blockstack.org/#blockchain-operations-get-consensus-hash">reference</a>)</h2>
<h2id="getting-the-current-consensus-hash-reference">Getting the Current Consensus Hash (<ahref="https://core.blockstack.org/#blockchain-operations-get-consensus-hash"target="\_blank">reference</a>).</h2>
<p><strong>Send a <codeclass="highlighter-rouge">NAMESPACE_PREORDER</code> transaction</strong> (<ahref="https://www.blocktrail.com/BTC/tx/5f00b8e609821edd6f3369ee4ee86e03ea34b890e242236cdb66ef6c9c6a1b28">live example</a>).
<p><strong>Send a <codeclass="highlighter-rouge">NAMESPACE_PREORDER</code> transaction</strong> (<ahref="https://www.blocktrail.com/BTC/tx/5f00b8e609821edd6f3369ee4ee86e03ea34b890e242236cdb66ef6c9c6a1b28"target="\_blank">live example</a>).
This is the first step. This registers the <em>salted hash</em> of the namespace with BNS nodes, and burns the
This is the first step. This registers the <em>salted hash</em> of the namespace with BNS nodes, and burns the
requisite amount of cryptocurrency. In addition, it proves to the
requisite amount of cryptocurrency. In addition, it proves to the
BNS nodes that user has honored the BNS consensus rules by including
BNS nodes that user has honored the BNS consensus rules by including
@ -408,7 +409,7 @@ a recent <em>consensus hash</em> in the transaction
(see the section on <ahref="#bns-forks">BNS forks</a> for details).</p>
(see the section on <ahref="#bns-forks">BNS forks</a> for details).</p>
</li>
</li>
<li>
<li>
<p><strong>Send a <codeclass="highlighter-rouge">NAMESPACE_REVEAL</code> transaction</strong> (<ahref="https://www.blocktrail.com/BTC/tx/ab54b1c1dd5332dc86b24ca2f88b8ca0068485edf0c322416d104c5b84133a32">live example</a>).
<p><strong>Send a <codeclass="highlighter-rouge">NAMESPACE_REVEAL</code> transaction</strong> (<ahref="https://www.blocktrail.com/BTC/tx/ab54b1c1dd5332dc86b24ca2f88b8ca0068485edf0c322416d104c5b84133a32"target="\_blank">live example</a>).
This is the second step. This reveals the salt and the namespace ID (pairing it with its
This is the second step. This reveals the salt and the namespace ID (pairing it with its
<codeclass="highlighter-rouge">NAMESPACE_PREORDER</code>), it reveals how long names last in this namespace before
<codeclass="highlighter-rouge">NAMESPACE_PREORDER</code>), it reveals how long names last in this namespace before
they expire or must be renewed, and it sets a <em>price function</em> for the namespace
they expire or must be renewed, and it sets a <em>price function</em> for the namespace
@ -420,13 +421,13 @@ has the option to collect name registration fees for the first year of the
namespace’s existence by setting a <em>namespace creator address</em>.</p>
namespace’s existence by setting a <em>namespace creator address</em>.</p>
</li>
</li>
<li>
<li>
<p><strong>Seed the namespace with <codeclass="highlighter-rouge">NAME_IMPORT</code> transactions</strong> (<ahref="https://www.blocktrail.com/BTC/tx/c698ac4b4a61c90b2c93dababde867dea359f971e2efcf415c37c9a4d9c4f312">live example</a>).
<p><strong>Seed the namespace with <codeclass="highlighter-rouge">NAME_IMPORT</code> transactions</strong> (<ahref="https://www.blocktrail.com/BTC/tx/c698ac4b4a61c90b2c93dababde867dea359f971e2efcf415c37c9a4d9c4f312"target="\_blank">live example</a>).
Once the namespace has been revealed, the user has the option to populate it with a set of
Once the namespace has been revealed, the user has the option to populate it with a set of
names. Each imported name is given both an owner and some off-chain state.
names. Each imported name is given both an owner and some off-chain state.
This step is optional—namespace creators are not required to import names.</p>
This step is optional—namespace creators are not required to import names.</p>
</li>
</li>
<li>
<li>
<p><strong>Send a <codeclass="highlighter-rouge">NAMESPACE_READY</code> transaction</strong> (<ahref="https://www.blocktrail.com/BTC/tx/2bf9a97e3081886f96c4def36d99a677059fafdbd6bdb6d626c0608a1e286032">live example</a>).
<p><strong>Send a <codeclass="highlighter-rouge">NAMESPACE_READY</code> transaction</strong> (<ahref="https://www.blocktrail.com/BTC/tx/2bf9a97e3081886f96c4def36d99a677059fafdbd6bdb6d626c0608a1e286032"target="\_blank">live example</a>).
This is the final step of the process. It <em>launches</em> the namespace, which makes it available to the
This is the final step of the process. It <em>launches</em> the namespace, which makes it available to the
public. Once a namespace is ready, anyone can register a name in it if they
public. Once a namespace is ready, anyone can register a name in it if they
pay the appropriate amount of cryptocurrency (according to the price funtion
pay the appropriate amount of cryptocurrency (according to the price funtion
@ -450,7 +451,7 @@ create the same namespace, the one that successfully confirms both the
do this, then the namespace they created disappears (along with all the names
do this, then the namespace they created disappears (along with all the names
they imported).</p>
they imported).</p>
<p>Developers wanting to create their own namespaces should read the <ahref="/core/naming/namespace.html">namespace creation section</a> document. It is highly recommended that
<p>Developers wanting to create their own namespaces should read the <ahref="/core/naming/namespaces.html">namespace creation section</a> document. It is highly recommended that
developers request individual support before creating their own space, given the large amount of
developers request individual support before creating their own space, given the large amount of
{"url":"https://docs.blockstack.org/core/naming/register.html","headline":"Register a name","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/register.html"},"description":"Register a name","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/register.html","headline":"Register a name","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/register.html"},"description":"Register a name","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/resolving.html","headline":"Resolve a name","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/resolving.html"},"description":"Resolve a name","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/resolving.html","headline":"Resolve a name","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/resolving.html"},"description":"Resolve a name","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/search.html","headline":"How to build a Profile Search Index","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/search.html"},"description":"How to build a Profile Search Index","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/search.html","headline":"How to build a Profile Search Index","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/search.html"},"description":"How to build a Profile Search Index","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/tutorial_subdomains.html","headline":"Subdomain Design and Implementation","dateModified":"2018-10-22T12:11:33-07:00","datePublished":"2018-10-22T12:11:33-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/tutorial_subdomains.html"},"description":"Subdomain Design and Implementation","@type":"BlogPosting","@context":"http://schema.org"}</script>
{"url":"https://docs.blockstack.org/core/naming/tutorial_subdomains.html","headline":"Subdomain Design and Implementation","dateModified":"2018-10-25T11:28:54-07:00","datePublished":"2018-10-25T11:28:54-07:00","author":{"@type":"Person","name":"Blockstack"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://docs.blockstack.org/core/naming/tutorial_subdomains.html"},"description":"Subdomain Design and Implementation","@type":"BlogPosting","@context":"http://schema.org"}</script>