If you’d rather learn through video, click here:
So you’re a developer (or unsuspecting Cyber Republic citizen), and you’ve stumbled upon this thing called the Elastos Runtime. Being a developer, you’ve heard of runtimes so many times you’ve RUN out of Time thinking about it.
Anyway, the Elastos Runtime is known by three names:
- The Elastos Runtime
- Trinity (which is more of an internal usage of the name)
- The Elastos Browser
Well, let’s dive into that right now.
Simplicity via Singular API
Elastos offers different APIs developers can use to access resources from the Elastos Infrastructure. For those who do now know what an API is. You can think of an API as a pre-built-bridge that carries requests between a user/developer and the system service.
A developer may need a resource to perform a particular function like store data or take information from one point to another. Usually, you’d have to to code each line for each task you’d like the computer to perform. APIs are convenient because they’ve abstracted away the extra coding.
Abstractions are “pre-prepared” statements. APIs for the Elastos Hive, Elastos Carrier, Elastos Mainchain, Elastos DID Sidechain have already been provided. Thus, the true beauty of putting your DApps into the Elastos Browser is that, instead of having to call upon these resources individually and if you’ve used the Elastos Browser to build your Ionix DApp, you can request all of these services from one place, simultaneously. Thus, it streamlines the development process significantly.
Versatility via Multi-Platform Support
When using the Elastos Brower, the DApp you’ve developed only cares about the box that it’s in, that is, it only cares about the Elastos Browser. That means, theoretically, you can place the box anywhere the box can fit! Currently, the Elastos Browser is supported by android and iOS. What this effectively mean is that instead of having to worry about coding your DApp to be compatible for every platform, you only have to code once to be compatible with the Elastos Browser. Any platform the Elastos Browser is compatible with will be intrinsically compatible with your DApp!
Security via Sandbox Mechanism
You’d normally have to ensure that your DApp is safe across any platform it’s released on, but since this box (Elastos Browser) is a VM on top of an OS which offers sandbox isolation, network isolation, and digital rights management, DApp developers don’t have to deal with the tedious issue of securing across several different platforms. The Elastos Browser is separate of the OS and speaks directly to the kernel. Thus, malicious code, regardless of the OS, does not necessarily matter.
DApp Security and Data Integrity Via Decentralized DApp Distribution Channels
One great advantage to using the Elastos Browser is that it will produce and manage its own distribution channel. In the world today, developers must conform to the rules and regulations of iOS and Android if you’d like to use their store platforms to distribute your applications.
This form of centralization has various consequences for developers. The Elastos Browser presents a decentralized, verifiable solution, to these consequences.
They’ve implemented a DApp Sidechain that is dedicated to recording the metadata for each DApp along with developer’s DID and signature, while the actual DApp is stored on a decentralized storage solution like Elastos Hive which is a modified version of IPFS.
A DApp can only be installed on the Elastos Browser if it has been registered via the DApp Sidechain and the Elastos Runtime verifies the integrity and the signature of the DApp and its developer before installing it on Elastos Browser, thus creating a decentralized process of DApp Distribution.
Essentially, it operates like a decentralized BitTorrent merged with an Appstore. You add the verifiability and security innate to blockchain and the Elastos Browser itself becomes a one-stop shop for developers.
Registry Facilitation via Toolchain
This is a much broader topic, but let’s just say this ensures that users don’t accidentally download a DApp from a developer they do not trust.
Security and Data Integrity via User DIDs
All user data and app data on Elastos Browser will be tied to a user’s DID and the data itself will be stored on a decentralized storage like Elastos Hive or, if the user decides, they can opt into using Dropbox or a personal cloud drive. What this effectively means is that users can actually access their data from any device at any time as long as Trinity is installed. As long as you’ve got access to your DID, you’ve got access to all your Elastos assets.
What’s the entire process?
DAPP Lifecycle in Elastos Browser
- Use the toolchain scripts provided as part of the framework in order to convert your Ionic application to an elastos application that can be run inside Elastos Browser. This application will be signed using a developer’s own DID
- Once the .epk(elastos package) file is created using toolchain scripts, it’s ready to be deployed. The next step is to use the tools provided in order to register this .epk file(a Trinity app) on DApp sidechain. The app package itself can be stored on a decentralized storage such as Elastos Hive
- Once the elastos app is registered on the DApp sidechain, the DApp Center inside Trinity Browser will automatically display the registered application showing all the details of the app including the developer’s DID who developed the application
- Users are then free to download this app and install it inside Trinity Browser and can run the application after that” – Source
This Article is Based On: Spotlight Series 1: Elastos Runtime aka Trinity aka Elastos Browser