This blog is now an archive. Find content from Hiro here and Stacks news and announcements here.

Xenon: Stacks 2.0 Testnet Enters Final Phase

Blockstack PBC is now officially Hiro Systems PBC. The change to Hiro will mark a renewed focus on developer tools for the user-owned internet on Bitcoin, while more clearly delineating the company and ecosystem.

With the mainnet clearly in sight, I’m excited to share that we’ve now entered the final phase of the Stacks 2.0 testnet: Xenon. The key change from the previous phase (Krypton) is that the Xenon testnet is integrated with the primary Bitcoin testnet whereas in Krypton we were using a Bitcoin regtest. Latter was obviously a much more predictable environment fully under our control, so operating on the much more volatile and unpredictable Bitcoin testnet will be a great litmus test ahead of the mainnet launch. This is a key part of hardening the network and we’re thankful to all of you continuing to help us test and improve.

In addition to the Bitcoin testnet integration, Xenon will shortly add full support for microblock fork-handling and mining (PR in review as we speak!). We have also implemented most of the mechanism for upgrading from Stacks 1.0 to Stacks 2.0 as described in this forum post. A new Stacking library is also available as part of stacks.js. Finally, we expect to roll out the core functionality required to support BNS (Blockchain Naming System) onto Stacks 2.0 on Xenon in the coming weeks. Developer friendly APIs for interacting with BNS will be implemented in the stacks-blockchain-api and supported in stacks.js!

 

While Xenon is functionally similar to Krypton, integrating with Bitcoin testnet has several implications:

  • The previous regtest-BTC faucet (in the stacks-blockchain-api) is no longer needed and will not work for Xenon. You can use any publicly available testnet-BTC faucet to obtain testnet-BTC (tBTC) instead.
  • We no longer control the Bitcoin block-interval on the testnet. While the average is ~10min (similar to Bitcoin mainnet), it can vary a lot, and is higher than the 2min block interval on Krypton.
  • We no longer control the burnchain length (previously, we’d reset the Bitcoin regtest everytime there was a chain reset) — this means spinning up nodes can take some time as the node must download heads for all Bitcoin testnet blocks.
  • Unlike the Bitcoin regtest environment, anyone can run their own Bitcoin testnet nodes. We strongly encourage anyone interested in mining/developing on Stacks testnet consider running their own Bitcoin testnet node. This will help minimize the load on the PBC-operated bitcoind node and also help further test the Bitcoin integration.

You can see the testnet-BTC transactions for the Xenon miner node here.

Sample configuration to spin up a Xenon node:

[node]
rpc_bind = "0.0.0.0:20443"
p2p_bind = "0.0.0.0:20444"
bootstrap_node = "047435c194e9b01b3d7f7a2802d6684a3af68d05bbf4ec8f17021980d777691f1d51651f7f1d566532c804da506c117bbf79ad62eea81213ba58f8808b4d9504ad@xenon.blockstack.org"

[burnchain]
chain = "bitcoin"
mode = "xenon"
peer_host = "bitcoind.xenon.blockstack.org"
username = "blockstack"
password = "blockstacksystem"
rpc_port = 18332
peer_port = 18333

Known Issues

We wanted to have a publicly-accessible Xenon setup before folks headed into Thanksgiving weekend (especially for our US community). That said, we’re actively working on some known issues:

  • For now, if you want to mine on Xenon, you must run your own bitcoind testnet node. This is important for two reasons: first, PBC-operated bitcoind doesn’t know a priori all the Xenon miners, and thus can’t track UTXOs for them; more importantly, with Xenon we want to see how Stacks 2.0 behaves in the presence of Bitcoin forks, and multiple bitcoind nodes would help test for that. If you need help running bitcoind locally, ping us on Discord!

To minimize disruption with folks currently using Krypton, Xenon testnet is available at the following:

If you’re an app developer, exchange, or other party hoping that is interested in Stacks 2.0 and/or upgrade paths, please don’t hesitate to get in touch with the team via Discord. After reaching code completion around December 15th, the next period will be dedicated to supporting your needs and making sure you’re set to support the upgraded network.

Don’t forget that there are up to $2,000 bounties available for helping to identify bugs or for creating important Stacks 2.0 tooling. For miners, be sure not to miss the upcoming ‘Mine to 1 Million STX’ challenge that Daemon Technologies is hosting, along with the Stacks Foundation.

Stay tuned for significant news in the coming weeks and thank you for your support. If you haven’t yet, you can follow rich weekly technical updates on the forum or receive those updates via email.

Register for Stacks 2.0 related events and launch festivities at stacks2.com.

Diwaker Gupta

Diwaker Gupta

Diwaker joined Blockstack after Dropbox, where he spent 4 years in a variety of leadership roles across Engineering. Most recently, he led engineering for Intelligence at Dropbox — a group of 30+ engineers, PMs and designers — encompassing Search Infrastructure, Search Quality, Machine Learning, ML Platform and new product initiatives. During his tenure at Dropbox, Diwaker oversaw major infrastructure initiatives and product launches, including a new search engine for Dropbox.