Answering DFINITY Community Questions

Every week I answer three to five DFINITY community questions that emerge in our Telegram “Mission Control” group. This is the dedicated community channel for everyone who’s interested in developing on DFINITY.

Video Transcription

It’s a beautiful Sunday and I am just about to head to a wedding. But it’s also Sunday – that means we are answering tech community questions. Mission Control is our Telegram channel for everyone who is interested in developing on the DFINITY blockchain technology.

So every week Moritz assembled as a bunch of questions for me and I’ll try to answer them on Sundays and then share with you guys. As always, with these questions and answers, keep in mind that we are still developing a lot of this and so whatever I say might change in the future. I’m just trying to answer these questions to the best of my knowledge. But there’s always a chance that specifications might change.

With a block produced roughly every three and a half seconds, are there any concerns in regards to how rapidly the blockchain will increase in size?

So I’m starting with a question from Dylan Miller. This question was “With a block produced roughly every three and a half seconds, are there any concerns in regards to how rapidly the blockchain will increase in size?”

I think yes – that’s a very valid concern. Because of that concern we’re asking everyone who wants to mine for DFINITY to have a pretty beefed up machine especially. Not only in terms of CPU and RAM but also in terms of disk space. Right now, our thinking is that the minimum requirement to be a miner in the DFINITY network will be at least 2 terabytes of free SSD disk storage space.

There’s a downside to every upside, right. So the fact that our consensus is a lot faster and finalities are achieved a lot faster, it also means there’s more storage space needed. I think down the road, sharding is an extremely important concept so that not every miner needs to save all the information on the entire blockchain but only the information that’s been produced in their shard. And that would mean it would become cheaper to execute applications on the DFINITY blockchain. Which is obviously something that we all want. We want the right mix of redundancy and decentralization versus cost.

By what mechanism will we be able to retrieve information from the blockchain?

So Dylan submitted another question. His question was “By what mechanism will we be able to retrieve information from the blockchain?” And then he referenced Ethereum where you can use JSON-RPC to interactive nodes which are using the Geth or Parity Ethereum clients. Will DFINITY implement something similar?

That’s a great question, we are not at the point where we have a definitive answer. I think what I can say is we want to make the interaction as seamless and easy as possible. Whether that’s gonna be through JSON-RPC or any other type of interface – it’s currently completely undecided.

What will be the system and network requirements for a neuron?

Last question by Dylan: “What will be the system and network requirements for a neuron?”

I don’t think you will have to run your own full node or miner in order to launch a neuron. You can launch a client where the specifications will be a lot less than for a full node or miner. So you could expect those to be able to do that on a normal PC and even if not – we will probably supply machines for people to access their wallet and decide about their neuron through a web portal or similar.

How will shards adjust parameters?

So we have another great question from Peter Donald. In particular: “If we assume that we want a notarization committee size N; an idealized minimal validator size M; and then design securely guarantee i.e. percentage chance at incorrect finalization under the assumption that the majority of all these validators. From these goal parameters, it should be reasonably easy to derive four parameters. How is it expected that shards will adjust these parameters? Is it something like per shard BNS, on-chain management, something else? I’m curious about this specifically in a scenario where an enterprise agency of consortium wants to run applications on their own shard.”

The answer that I can give at this point is that many of these parameters will be adjusted by the BNS – the Blockchain Nervous System. And it will go beyond that. Even things like minimum requirements for miners on a certain shard will be defined by the BNS. There will be shards where you need to have an SGX chip or some other kind of special hardware or maybe weaker hardware than we expect on most of the shards. And all of that will be controlled and decided by the BNS.

And I think that’s it. That concludes the Q&A for this Sunday. As I said at the beginning, join our Telegram group for everyone who is interested in develop on the DFINITY blockchain. It’s called Mission Control and I’m looking forward to see you there. Submit your questions. Hopefully, I can answer them on an upcoming Sunday. With that, I’ll see you guys next time.

You can listen to the audio version here: