0Chain Weekly Debrief — January 5, 2022
Happy New Year! We hope you all had a wonderful holiday season. Over the holidays, the dev team did not slow down one bit. The team continues to push major updates to the blockchain layer, resulting in enhanced stability. Core storage team and application teams continue testing in coordination with new blockchain updates while the UI teams continue progress. This week, Sculptex discusses the distributed nature of 0Chain’s network.
Sculptex: Distributed-ness of the 0Chain network
“I was recently asked in a private Telegram message about how distributed our platform is and how we will avoid centralization.
In particular, there was an article that included claims that all distributed storage platforms will become centralized. And as if to bear this out, Filecoin and Arweave have the vast majority of their ‘miners’ in China. So first, let’s see why those two platforms in particular have become so centralized.
Filecoin was centered around the Chinese community from the start, the very high rig specs required including top end GPU was always going to concentrate around where the hardware was cheapest (and much of this technology is manufactured in China). The early rigs that miner and accumulated FIL were required to stake a significant portion back to their mining in order to continue mining. This is a significant barrier to newcomers, and in the case of Filecoin, significantly hinders geo-diversity.
Arweave started with a very different community mix, mainly in the USA and Europe. They even use port 1984 by default as two fingered salute to Orwellian-style censorship of information. How ironic is it then that around 90% of their ‘permanodes’ are now in China? Even though not requiring GPU, Arweaves inherent inefficiencies combined with a heavy Proof-Of-Work mining requirement, have resulted in this inevitable scenario. By heavily favoring SSD drives, again primarily manufactured in China, this surge in concentration occurred when the AR token price surged. Arweave have since scrambled to announce they will be changing their mining algorithm to reward HDDs which are around 5–10x cheaper than SSDs per TB. I look forward to seeing how this pans out. The majority of Chinese Arweave miners could simply refuse to upgrade to software that favors HDDs!
So getting back to that article, how will 0Chain avoid becoming centralized?
Well for starters, we are an efficient, PoS based platform. Unlike PoW where cheap technology is the primary factor, geo-location and network costs become driving factors of node location. While 0chain also requires staking (delegation) to Service Providers like Filecoin, when you begin with a well-distributed node set, this becomes a protective layer, helping to keep nodes distributed.
In fact, we are much more like Sia platform in this respect, which requires ‘collateral’ (staking), has been around for ages and barely has any presence in Asia at all. However, as I have illustrated so many times previously there are many flaws with the Sia model that we solve in an elegant and efficient manner.
So does that article even apply to 0Chain? On reading the comments, someone pointed out that if location is included in node selection then this centralization could be avoided. This seems logical to me, yet the author was quick to point out that his article relies on this not being possible:-
“If the storage is truly decentralized, you don’t know where the shards are stored. You can pay for more redundancy, but you don’t get to decide the locations of the shards.”
Or to put it another way, his article only applies in those circumstances! I would argue that the reverse is true. He seems to rely solely on the network for determining node sharding. This is a self-perpetuating problem! If the user has freedom to choose storage nodes it gives total flexibility and can ensure diversity. In the case of GDPR for example, this may be a necessity.
Guess what Filecoin and Arweave also have in common? You don’t get to choose your nodes where your data is stored.
Sia chooses a random node mix by default but there is scope to restrict nodes whitelist/blacklist) manually or via a 3rd-party application. I actually wrote about this a while back and concluded there that a curated set of nodes was so much more efficient than the default selection, albeit hampered by limited node choice at the time.
0Chain will hopefully provide the optimal solution to this. The blobber selection process has been decoupled from the mining process, effectively encouraging users to choose their own blobber mix for their storage needs. Unlike the Sia 3rd party solution, because we have miner challenges, we can use those to determine which blobbers are performing well and restrict our selection from those in addition to other criteria such as price and location.
I actually think that this was what the author of that article was really intending. That the network itself would be capable of determining which nodes were ‘healthy’ and thus suitable for storage, without relying on a 3rd party. Only 0Chain achieves this, through the ingenious miner challenge protocol.”
Development Team Updates
Over the past month, our GitHub has seen a flurry of updates on numerous repos. The storage team continues to progress through network updates, ensuring compatibility with current blockchain updates. The 0Box and 0Wallet teams continue to perform testing however main focus has now shifted to UI updates with additional focus on the swapping mechanics. The team continues to integrate tech to make it easy for users to simply swap into ZCN and get started using our wallet and storage applications — improving overall user experience and ability onboard new users.
As some of you noticed already, some big updates have been pushed for the blockchain layer–the result of numerous rounds of testing and updates, testing and updates, and so on. As mentioned recently, the blockchain layer has been demonstrating great success at a full cluster size–100 miners and 25 sharders. The scaling of testing resulted in fixes that enhanced network stability with the full cluster. With this success, the team has progressed to load testing which has enabled them to search for potential issues that could arise with scaling of network usage— an important step to conclude prior to Active Set testing. Initial implementation has begun of the framework that will be used for future network updates. With this approach, the team was able to test certain scenarios for changes to smart contracts that may occur down the line, ensuring that our network is able to adapt and evolve over time without posing issues to our blockchain layer.
Developer Resources
- Interested in learning more about building on 0Chain or becoming a service provider? Check out our GitHub for access to repositories. Community ambassador Sculptex has created numerous tutorials to help get you started.
- Try our BetaNet here! Users can create wallets and allocations, store files, send transactions, and share files.
- Need help navigating creating wallets, allocations, or joining as a blobber? Check out our documentation page.
- 0Chain’s API endpoints use simple and intuitive HTTP requests to interact with the blockchain in order to send/retrieve information to and from miners, sharders or blobbers in the active network.
About 0Chain
0Chain is a high-performance decentralized storage network designed to eliminate business threats such as censorship, privacy liability and data breaches. 0Chain helps entities achieve GDPR compliance, localization and tokenization, and monetizes private data sharing.