What is the Spacemesh Open Testnet?
The Spacemesh Open Testnet is a long-running permissionless beta test of the full Spacemesh protocol and platform. Anyone with a desktop computer can join, without limitation, from anywhere.
What is Spacemesh 0.1, aka Tweedledee?
Spacemesh 0.1, aka Tweedledee, is the name of the first software release in the Open Testnet program.
When does the Spacemesh Open Testnet launch?
Tweedledee launched on March 1st, 2020. It is open to anyone, anywhere to participate without limitation.
How do I join the Open Testnet?
You download and run Spacemesh App on your desktop computer. Enter the rabbit hole.
How do I learn more about the Open Testnet?
Read the Testnet Guide.
What are the problems that Spacemesh is trying to solve?
On the product level, we aim to solve 3 main problems:
1. Fair global distribution of cryptocurrency.
We aim to create the world’s most decentralized, fairly-distributed cryptocurrency. One of the main challenges facing cryptocurrency today is how to fairly get it into the hands of billions of people across the globe without requiring them to buy it with a local currency. We believe that current methods for coin distribution, such as ICOs, airdrops, participation in mining pools, and IEOs all have serious deficiencies and that the problem remains unsolved. See Low Barrier to Entry for more information on the Spacemesh approach to this problem.
2. Lack of infrastructure for a global means of payment.
We aim to create a cryptocurrency that is highly usable as means of payment between any two people in the world without any possibility of censorship. On the technical level, we aim to solve inherent issues involved in PoW-based consensus mechanisms, such as the centralization inherent in mining pools and ASIC mining, as well as the inherent issues involved in PoS-based consensus mechanisms, such as a centralized plutarchy of rich validators, the incentive for validators to collude to diverge from the protocol, and the strong centralization of consensus forces.
3. Lack of satisfactory blockchain and smart contract infrastructure for creation of fair communities.
Smart contracts at scale will transform society by allowing any community to create and operate their own fair rule system on the platform. We will get the technology into the hands of the masses, and achieve the scale necessary to fulfill the promise of blockchain. We will enable creators, writers, artists, journalists and merchants to automatically enforce the terms of payment contracts, ensuring that they get paid for their work, and that social inequality will be reduced by fundamentally changing the extractive nature of our economy to one of equal participation by all players.
What is the Spacemesh security assumption?
The Spacemesh network is safe so long as the basic security assumption holds true. This assumption states that as long as no more than ⅓ of the total storage space committed to the platform by all smeshers who participate in the consensus protocol is controlled by malicious entities who collude to attack the network, the network is secure.
While an attack by more than ⅓ of the storage is ongoing, honest parties may not be able to agree on a canonical transactions history. This means that during the attack
(i) Users may not able to execute transactions.
(ii) Honest Smeshers may spend resources and won’t get rewarded due to blocks that seem valid, but turn out to be invalid.
(iii) A seller may think that a payment was confirmed with a high level of confidence, but in truth it would be reversed after the attack ends. So an attacker may be able to double-spend by paying 2 sellers with the same coin - a history rewind attack.
Once the attack ends, Spacemesh's self-healing method restores both liveness and safety and all honest parties will agree again on a canoncal transaction history that doesn’t include invalid transactions (for example: 2 transactions that spend the same coin) so the attack’s damage is limited to what can happen during the attack as described here.
What is the maximum transaction throughput of the Spacemesh Open Testnet?
We set various protocol parameters in the Open Testnet to limit the base-layer growth rate and the amount of bandwidth required to download blocks, so home smeshers can use their existing hard drives and a fraction of a typical home Internet connection capacity to run testnet smeshers.
In Spacemesh 0.1 there is a hardcoded limit of up to 20 transactions per block and a target of 50 blocks per layer. This gives 0.1 a throughout of about 3 tx/sec.
For the Spacemesh 0.2 Open Testnet we plan to test a throughout of 66 tx/sec by increasing the transactions per block limit to 400. This is about 13x better than Bitcoin and 9x better than Ethereum's current actual transaction processing rate at full network capacity1. The protocol is capable of supporting even higher throughput, which we will test in future releases of the Open Testnet prior to the launch of Mainnet.
What is the maximum transaction throughput of the Spacemesh Mainnet?
We don’t know yet. We are releasing an Open Testnet to test the performance and security of the network with different parameters. Based on the results of those tests we will establish the key Mainnet parameters, which will determine the maximum throughput.
What is the expected transaction confirmation time?
Under normal operational conditions2 the expected base-layer transaction approval time is 1.5 to 7 minutes with overwhelming confidence probability and 15-20 minutes confirmation time from time of transaction broadcast to the network. Under adversarial conditions or bad network conditions, the confirmation time may be longer depending on how long the attack is ongoing and the attacker's strength.
1 Using Bitcoin's and Ethereum's actual average transaction rates at full network capacity. 30 days average, March 2019.
2 Good overall p2p network conditions, no malicious smeshers, and with a layer width of 5 minutes and a 50 nodes Hare consensus committee.
What is the environmental impact of using storage instead of PoW ASICs?
Spacemesh is designed to enable millions of ordinary people with desktop PCs to use already available disk space on their systems to establish their identities for participation in distributed consensus. There are hundreds of millions of people worldwide today with this kind of system already available to them, and about 80 million new desktop PCs are sold a year6.
Spacemesh is designed to use commodity-level digital storage such as magnetic drives and SSD drives. To make any kind of non-negligible environmental impact due to additional drives being manufactured because of Spacemesh Smeshing, worldwide drive manufacturing will need to grow above current levels. As of 2019, about 640 million new drives are made and sold worldwide7. Even in the scenario where 1M additional drives are manufactured yearly due to Spacemesh, the overall impact on the environment over the current environmental harm of storage manufacturing is negligible (about 0.15% increase in impact).
An additional component is the increased electricity consumption due to home users leaving their PCs on 24x7 for Spacemesh Smeshing instead of shutting them down and starting them up on a daily-basis. This amounts to about $7 a month8 and is negligible compared to Bitcoin electricity costs. 100,000 Spacemesh Smeshing PCs will demand about $700K per month in electricity costs9. Bitcoin's current electricity costs are about $440 million per month10.
Spacemesh has a one-time PoW-like setup process per Smesher with an expected duration, depending on the amount of storage that a Smesher commits, to establish his identity on the platform. The expected duration for the Testnet release will be about 48 hours for PCs with a standard GPU and a minimum commitment size of about 150GB. The storage committed by this one-time process to Spacemesh can be used for an unlimited period of time as a proof of space-time. In this scheme, there is no ongoing energy consumption due to the constant computational race involved in current POW-based protocols.
Assuming honest users leverage their existing PCs, the energy cost per transaction while the protocol is running is negligible compared to PoW systems. With 85 tx/s and 1 million Spacemesh home Smeshers, the cost per transaction in terms of power consumption is about USD $0.03 per month for Spacemesh, compared with $50 for Bitcoin11.
6 https://www.statista.com/statistics/272595/global-shipments-forecast-for-tablets-laptops-and-desktop-pcs/ https://www.statista.com/statistics/269044/worldwide-desktop-pc-shipments-forecast/
8 Assuming $0.10 kwh and 100 watts power usage
9 Assuming about 3 hours a day normal PC usage vs 24 hours a day for Spacemesh Smeshers
11 USD $0.12 average kwh cost. See https://digiconomist.net/bitcoin-energy-consumption . $7 average increase in home Smesher power bill due to PC open 24x7 instead of few hours a day. Assuming 85 tx/s.
How does Spacemesh achieve a high-degree of decentralization?
Spacemesh is designed to be run by home desktop PC owners from around the world. There are tens of millions of such people with sufficient system resources and internet connectivity who can join the platform, form a global decentralized computer and cryptocurrency and provide security for it. Decentralization is achieved where there is a large number of uncoordinated entities with a high-degree of geographical distribution, and since the barrier for entry for such people is extremely low in Spacemesh compared to any other blockchain platform, we believe this is achievable. In the case of PoW systems, the only way for a miner to ensure profitability is to purchase dedicated hardware which is not useful for any other purpose (a few thousand dollars at minimum) and join a mining pool. Mining pools cause centralization as they are a means of coordination and cooperation among miners.
There are two main aspects of decentralization: Smeshing power decentralization and coin distribution decentralization. Spacemesh achieves both, as the same home Smeshers who provide Smeshing power to the network with an extremely low barrier-to-entry are also the ones who mint Spacemesh coin (Smesh) as reward for their contribution. So, Spacemesh will create the world’s most decentralized crypto currency with coin distributed by the Smeshers to other people.
To achieve a high-degree of decentralization, these centralization vectors need to be vastly decreased. By "centralization vectors" we mean rich entities who run dedicated storage mining farms: mining "whales." The cost model for Spacemesh greatly favors honest home users over Smeshing whales as the cost for the honest home user with an existing PC amounts to just the increase of the electricity bill due to leaving her computer on for longer and the loss of free storage space which could be used for other data, while whales have datacenter, computing hardware, networking, storage media and DevOps costs to contend with.
Whales get an advantage in the form of discounts on hardware costs due to economies of scale: discounts on storage and computing due to large-scale purchases. Because storage is a commodity, this discount is limited to about 20% compared to home users with limited budgets who will purchase dedicated storage for the purposes of using it for Spacemesh. However, the hardware cost of an honest user is zero as she is reusing hardware already purchased for purposes of interactive PC apps use at home. In the long term, and as the network grows, it might not be profitable to mine with dedicated hardware at all, so whales won't be able to price out honest users.
Low Barrier to Entry
In Spacemesh, all Smeshers (miners) are eligible to collect rewards in each and every epoch. There are no net economies of scale; on the contrary, due to operational costs, whales are at a disadvantage relative to home Smeshers. What's more, there is no benefit to joining a mining pool.
How does the Spacemesh protocol ensure fairness for honest home Smeshers considering resource-rich cloud Smeshers?
In the short term, it might be profitable to mine Spacemesh Coins (Smesh) using both cloud-based VMs and at home using existing hardware. However, cloud Smeshing is less profitable than using existing hardware and Internet connectivity at home on due to the costs associated with cloud storage, operations and compute. In the long term, due to changes in the block reward frequency and the total storage committed to the platform, it might not be profitable to mine on the cloud, while Smeshing on an existing home system will remain profitable.
Although rich entities do get discounts on storage devices due to economies of scale12, enterprise storage and cloud storage are more expensive than desktop storage13. In addition, cloud Smeshers need to pay the costs of computation, memory and networking required to generate the periodic proofs required for participation in the consensus protocol. Alongside IT and cloud computing experts, we have modeled various possible attack scenarios that might be carried out by wealthy entities using cloud resources and have not been able to come up with an attack that favors such entities over honest Smeshers usin their existing home PCs.
How does the Spacemesh protocol deal with Smeshing pools?
There is no advantage for Smeshers to join a Smeshing pool. The main reason to join a pool is a long expected time between block rewards for a miner with modest resources. The Spacemesh protocol solves this issue by providing a much higher expected reward frequency as a large number of blocks are produced every few minutes, each submitted by a unique Smesher. With 200 blocks every 5 minutes, there are up to 400 more blocks in 10 minutes in Spacemesh than in Bitcoin. As a result joining a mining pool, which involves paying the pool a percentage of the block reward fee, is not beneficial to Spacemesh Smeshers. In addition, due to the Spacemesh protocol's race-free property and linearity of Smeshing awards relative to storage commitment size, there is no other advantage to join a pool.
12 About 20% discount on bulk storage devices purchases.
13 $90 per TB enterprise storage vs $27 per TB for home storage.
What is the PoET Service?
Please read the definition in the Spacemesh Protocol Overview.
Doesn’t PoET create an energy waste issue?
No. One PoET server (which can serve millions of Spacemesh Smeshers) has the same negligible environmental impact as allocating and operating one web server with one fully utilized commodity CPU core. Spacemesh PoET is a software-only solution that doesn’t involve any expensive dedicated custom hardware and it works on commodity-grade web server hardware. Since PoET is performing sequential, non-parallelizable work, there is no advantage for custom ASIC hardware implementations over the reference open source implementation running on commodity-grade server hardware.
Does PoET create a centralization issue?
Not really. Spacemesh PoET is a free open source reference implementation that is designed to be run by multiple parties without any limitation. For the mainnet platform release, PoET servers will be configurable to require a small transaction free from smeshers who use the service. This will make running PoET services profitable to 3rd parties in a decentralized market context. Spacemesh will run few foundation PoET servers as a safety measure to ensure that there will always be at least one live PoET service available for protocol participants. Unlike other platforms which use sequential work, Spacemesh smeshers running on desktop PCs at home are not expected to run the PoET service on their systems. Spacemesh PoET is also trustless in the sense that smeshers verify PoET service results and don’t need to trust a PoET service operator.
How are smeshers (miners) compensated?
- Each Smesher commits a constant-size 4GB PoST init file and therefore has the same voting power as any other Smesher on the network. Eligibility for participation in Smeshing is based on epochs and layers. In Spacemesh 1.0 Tweedledee each epoch is 24 hours and is made of 288 5-minute layers. Each layer contains on average 50 blocks with transactions.
- Smeshers become eligible to submit blocks and participate in Hare consensus once they complete the PoST initialization, finish synchronizing the mesh and then wait for one full epoch to pass. In practice this is usually 25-49 hours after they join the network.
- When a Smesher is eligible to Smesh in an epoch, the protocol determines eligibility to submit a block and to participate in Hare consensus in each of the epoch’s layers, based on the total number of eligible Smeshers for that epoch, the layer’s desired number of blocks (50 in Tweedledee), and the Hare committee size network parameter (50 in Tweedledee).
- For each and every layer, all layer-eligible Smeshers that submitted a valid block for that layer split a constant layer reward of 50 smesh (50x10^12 Smidge). The reward is distributed to each Smesher's coinbase address by the protocol when the layer is validated by the Tortoise protocol about 4 layers (20 minutes) later.
An example: if there are 550 eligible Smeshers for an epoch on the network then the probability to be eligible in each and every layer of the 288 layers of that epoch is about 9% (50/550) and the expected rewards per Smesher per epoch is about 26 Smesh (50*288 / 550).
- In a real-world p2p network, not all Smeshers are online and synced with the network 24x7, so not all eligible Smeshers will submit a block. In addition, there are fluctuations in the number of expected blocks even when all Smeshers are online due to the randomness in the layer distribution of each Smesher’s blocks. Therefore, some layers may have less than 50 blocks, and so the reward for each participating Smesher in that layer will be higher. For example, if only 40 Smeshers out of 50 eligible submitted one block each to a layer then each Smesher will get 1.25 Smesh reward for that layer.
How are builders compensated?
The core R&D team was allocated 10% of the total coin supply via on-chain vesting vaults. Vesting starts one year from genesis for a period of five years.
How and by whom was Spacemesh financed?
A total of US$18.5M was raised in two rounds of financing. Core investors are Polychain, Paradigm, Metastable, Slow ventures, Electric Capital, 1KX, Coinbase Ventures, Bain Capital, and others.
Are coins pre-mined in Spacemesh?
Sort of. 25% of the eventual, total coin supply of six million Spacemesh coin (SMH) is reserved for the core R&D team and investors: three-fifths to investors, two-fifths to builders. However, none of these coins are minted or tradable at genesis. They will be stored in vaults (a form of multisig smart contract) and will vest over 4-6 years. The only coins that will be liquid and tradable at genesis are the coins mined by smeshers.
How will the rest of the coin be issued?
The remaining 75% of Spacemesh coin (SMH) that's reserved for smeshers will be issued over a period of at least ten years. We're currently finalizing our recommended economic model and will be sharing it for community review shortly. Watch this space (and our blog) for more information.
What is the Spacemesh governance model?
All Spacemesh software is 100% open source and provided under a permissive license, allowing anyone, anywhere to use the technology without limitation. The Spacemesh development company builds and maintains the open source software platform, compensates core R&D staff who work on the project full time (currently ~20 people) and recommends the Mainnet economic model, the coin issuance schedule and other platform parameters. There are currently no plans for on-chain governance for the Spacemesh Mainnet. More information on recommended Mainnet governance will become available as the launch of Mainnet approaches.
What is a permissionless system?
In a permissionless system, anyone can stake a scarce resource and thereby participate in the decision-making process of the system. For example, in a PoW-based blockchain anyone can become a miner and attempt to create the latest block by expending computational resources.
How does protocol voting work?
Currently, each Smesher has the same voting power. Once we add user-selectable post data size, voting power will be relative to the user's allocated free space which will change from user to user. e.g. 100GB, 200GB, etc... and also relative to the total amount of space allocated by Smeshers.
Can I fork Spacemesh?
Yes, as long as you abide by the terms of Spacemesh open source software licenses and its trademarks.
Still have questions about the Spacemesh Protocol?
Check out the Spacemesh Protocol Overview.