Introduction to Cellframe: blockchain services as an alternative approach to building dApps

The information today transfers almost instantly. The number of possible social connections is limited only by access to the Internet and a computer. One of the crucial issues nowadays is trust. How can we trust and verify those we communicate or work with? During the last century, humanity was focused on the complexity of verifications. The governments started using passports, identity databases, which collect almost every move of citizen and visa systems with several levels of control. Compliance departments now are very significant divisions in almost all major banks.

At the end of 2008, the Bitcoin network whitepaper was released. It proposed a pseudo-anonymous peer-to-peer trustless network. It doesn’t require trust in ordinary meaning, as the network architecture itself provides an unconditional level of trust between its members. After this, the industry of blockchain went a long way. We saw the hype, devoted to the first appearance of smart contracts, which was followed by the ICO bubble, the first serious governmental implementations of technology along with ridiculous things like tokens for memes or garbage mining. Today, almost all the companies from the Fortune 500 list established blockchain departments. Many world celebrities managed to either make a lot of money or receive a fine from regulators for the promotion of crypto scams.

The market of dApps has been developing rapidly in recent years. In just one last year the dApps industry demonstrated greater traction than the entire blockchain industry in 2017–2018. For example, the Defi sector, represented mainly by Compound, MakerDAO, Synthetix, and Uniswap according to recently reached $1bln worth of frozen assets in their contracts.

Yet, very few people outside the developers’ community understand how really smart contracts work and what are their technical limitations. The popular opinion is that “smart contract” = “secure, trustless system”. But it is not exactly true. And we are not only talking here about the Ethereum scalability issues. Speaking of limitations, we mean functions that cannot be performed by existing contracts. We’ll discuss it further, as well as some security issues that many ordinary users are unaware of.

Problems of current dApps architecture

In our opinion, the main drawbacks of smart contracts are the following:

  • Single point of failure. There is always a specific address from which the smart contract was deployed, and therefore a private key that can be used to work with this contract as a developer. Of course, you can limit the possibility for fraudulent actions by writing the right code and performing a serious security audit, but here is an element of centralization that you need to take into account;
  • Business logic limitations. Even if the virtual machine is Turing-complete, you as a developer can input only limited business logic inside a contract. It is connected with limitations of the EVM virtual machine itself: first of all, it is completely isolated from interactions with hardware and operating system.

All these drawbacks limit the ability to create dApps to the level of a smart decentralized “calculator.” Of course, a simple business logic such as “simultaneous transfer of assets upon condition” or “if the token is frozen in the ERC20 contract, then…” is relevant and sufficient to create a lot of useful decentralized services, what is proved by the success of Defi sector. But, today the market for such dApps is still small if we talking about real numbers, not few crypto enthusiasts. At the same time, there is a vast number of services, which decentralization would affect the lives of billions in a positive way. We bet, that anyone reading this article uses these services every day: DNS, Cloud storage, VPN, CDN, and many others. Of course, there is a number of projects, that are creating decentralized analogs of file storage (Filecoin, DADI) or VPN (Sentinel, Orchid, Lethean). However, none of those initiatives so far has turned into a project of an industrial scale in terms of user base or any other metric. In essence, projects either have not reached the mainnet stage, or their audience is limited to a couple of dozen crypto enthusiasts. We suppose, that there are several reasons for this, including the imperfection of the current blockchain architecture. It is not anyone’s fault — these blockchain platforms were not developed for this purpose. As a result, it is necessary to build a lot of things additionally. In this regard, each project is trying to solve the particular problem of building a blockchain service (and very often from scratch), which is completely ineffective. Using approach looks like reinventing your own webserver to run a website, rather than taking well-known Nginx. We think, that the solution to this problem can become a special blockchain framework that can be customized for a specific task of creating a particular blockchain service. First of all, it will reduce the time of development and narrow the scope of work — as CMS did a decade ago for building a website.

Cellframe: service-oriented blockchain platform

We decided to close this gap with Cellframe SDK, to allow anyone to create decentralized Internet services fast and easily.

As mentioned earlier, in current solutions (like Ethereum, Tezos, NEO, etc.) smart contracts can’t interact with operating system resources. In opposite, developing Cellframe we aimed to create a framework, which would allow building business logic around the usage of computer resources, such as computing power, Internet channel, and disk space. Also, we kept in mind the decentralization of ownership and protection of end-user. As we mentioned before, the classic smart contract has an address from which it was deployed to the network, while the Cellframe-based blockchain service is inside the system and does not have an owner address. Yes, the Compound contract, which stores $150M of crypto, has a specific owner. What if it wouldn’t? We think, that it can reduce the risk of fraudulent activities or illegal use of private key (note, that even if you have institutional-grade private key management system, it ultimately has a chance to be stolen). We think, that cash flows generated by the service have to be in a reliable way distributed among the service providers without having to pass through the owner of the smart contract. We propose to define such kinds of decentralized applications with the term “t-Dapps” (true decentralized applications).

At the same time, the process of developing blockchain services have to be no different from creating web scripts or other system services. Such an approach will make development easier and cheaper as you don’t need to hire specialized blockchain programmers, who are much more expensive than developers from the “traditional” areas.

Cellframe is a platform for creating blockchain services, in which the problem of scalability is initially solved. To achieve high scalability, we use sharding, but not in an ordinary way. In Cellframe, we eliminated the bandwidth bottleneck — the intermediate hub, which is commonly used in some blockchain platforms (for example, Polkadot) for the exchange of information between chains. Cellframe shards can interact autonomously in p2p mode, which ultimately increases the performance of the entire system. Additionally, we use the combination of Blockchain and DAG chains in each shard. Talking about security of the system, we took care of how Cellframe will work “tomorrow”, in the era of quantum computers. It is the reason, why, we protected the system with variable quantum-resistant encryption.

Our vision is that decentralized Internet services (blockchain services) would become one of most important components of web3.0 architecture, similarly to centralized services in the era of web2.0. Of course, we have no doubt that decentralization of value transfer (bitcoin, stablecoins), as well as simple fintech applications (Defi), is a significant contribution to building the Internet of the future. However, as long as the base Internet layer can be completely censored as it is centralized, all this will have a lack of integrity. How valuable is the opportunity to send bitcoins or tokens if your connection can be censored? We strongly believe, that too build effective web3.0 it is necessary to solve the task of creation of infrastructure modules that are safe and would not have a single point of failure. As an example of a product built on the Cellframe SDK we present KELVPN — a decentralized VPN focused on maintaining the privacy of user’s data and the provide secure Internet connection. You can download the client and test it here, or support this project and launch the VPN node.

As closing notes, we want to point out that substance, flexibility, and freedom are the values that Cellframe is based on. We (and millions of people with us) are convinced that the Internet needs change. No doubt, that centralization creates a dangerous fragility. What does the Internet worth when a single decision made by politicians or a corporation can threaten access to information and communication opportunities for millions of people?

Instruction to launch a Cellframe node.

Telegram group where you can ask your questions directly to CTO:


Leave a Comment

You must be logged in to post a comment.