DubaiTechnoHub 1, Dubai Silicon
Oasis Authority, Dubai
Apla is an open source (public & private) blockchain platform based on a peer-to-peer network and built on the original blockchain protocol developed by Apla. Apla blockchain provides a secure, simple and compliant blockchain infrastructure for a fast-growing global collaborative economy segment.
No, Apla is built on the basis of being its own original blockchain.
Apla features unique functions that cannot be found in the aforementioned blockchain platforms, such as:
An application built on the Apla platform is a system of tables, contracts, and interfaces with pre-configured permissions. Applications are built to perform a certain function or provide a service. An application does not require the presence of a unifying, coordinating contract (master contract); contracts are executed by user activities, and the results of their operation are recorded in tables.
An Apla node is a computer on the Apla network that stores a complete version of the blockchain and a database that contains the current (most up-to-date) state of the platform. Nodes validate transactions received from the network, include them into blocks, and modify the current state of the database.
Ecosystems are virtually autonomous software environments for the creation of blockchain applications and user operations within them.
Any user of the platform can create a new ecosystem.
Registration in the platform network can take place in any existing ecosystem. There can be different procedures for membership admission, which are defined by the ecosystems’ policies: from posting information about a new ecosystem in a specialized catalog to sending out public keys.
Yes, every user can create any number of ecosystems, and be a member of any number of ecosystems at the same time.
Application data is stored in a common data storage environment: an unlimited set of tables of the platform's database. Tables with application data are not in any way bound to any particular smart contract and can be used by any and all applications of the ecosystem, based on the configured access rights.
Smart contracts are the basic elements for the implementation of algorithms in applications on the Apla platform. Contracts are final portions of code that perform the following functions: (1) receipt of information from user interfaces or other contracts ('data' section); (2) analysis of data validity ('conditions' section); and (3) execution of required transactions – updating database records ('actions'). Apla contracts are written using a proprietary Turing-complete scripting language called Simvolio. The language includes the required set of functions to create data processing algorithms and conduct operations with database values. The contracts are created and modified using a special editor in the Molis software client. Operations involving data in the blockchain are performed by the current (most recent) versions of contracts. The complete history of changes made to contracts is saved in the blockchain and is available from the software client.
Applications are written and executed in Molis – the single software client. No other software is required.
No, contracts can only directly access the data stored in the blockchain. Specialized oracles are used to work with external data sources.
Yes, contracts are editable. Rights to edit contracts are established by their creators, who can deny any changes or grant rights to make changes to contracts, to specific persons, or configure a complex set of conditions in a specialized smart law. The Molis software client provides access to all contract versions.
A smart law is a contract that is created to control and restrict the operation of regular contracts, and thus the activities of the ecosystems’ members. A set of smart laws can be regarded as an ecosystem’s legal system.
Yes, contracts can execute other contracts by way of directly addressing another contract and providing parameters to it, or by way of calling a contract by link (name) (see contract language description).
Yes, the software client has a built-in mechanism for localization support, allowing for the creation of interfaces in any language.
Yes, the platform API can be used for that.
Yes, pages and contracts are stored in the blockchain, which protects them from falsification.
The Molis software client includes instruments for the creation of database tables (PostgreSQL is used at the moment, but we may change that later), and the Simvolio contracts language has all the functions required for reading and writing of data. The Protypo template language includes the functions for reading data from tables.
Yes, the use of resources of validating nodes should be paid for in platform tokens.
An account (binding account), which the tokens for payment of resources are debited from, is set by the contract creator on its activation. It can be defined using an ecosystem’s smart laws, whether or not the ecosystem members will pay to work with the application and, if so, what method of payment is required (contributions or otherwise).
The platform team understands that there is no way to completely avoid mistakes in the program code of applications, especially given that applications can be written by any user. That’s why we decided to create a mechanism that eliminates the consequences of vulnerability exploitation. The platform has a legal system (a set of smart laws), that allows to suspend the operation of an application and make a number of transactions to restore the status quo where wrongful actions take place. The rights to execute such contracts and voting procedures to grant these rights are defined in the smart laws of the platform’s legal system.
No, it’s not. Contracts are autonomous program modules that execute some functions. Each contract is configured to receive specific data, properly check these data, and execute some action, which will be recorded as a transition in the database.
Full blockchain data can be stored across any number of nodes, but a minimum of three nodes are required for the consensus algorithm to operate as intended. Depending upon client requirements, we can create any number of nodes for private blockchains. The more nodes that make up the network, the more secure the blockchain.
Any network node with sufficient processing power and fault tolerance can become a validating node. A node becomes a validating node based on the voting of ecosystems, but only ecosystems that are endorsed by investors(platform tokens owners) as genuinely functioning can participate in such voting. Therefore, the platform network implements a new consensus algorithm – Delegated Proof of Authority (DPoA). With this algorithm, it is most likely that the validating nodes will be run by major ecosystems, since it is in their best interest to maintain the network operation.
The transaction is checked by a validating node and included in a block, which is then sent to the network. The block is received by every node. Nodes execute all transactions from the block in the sequence they were placed in the queue. Smart contracts are then executed with parameters passed to them in transactions, thus changing the state of the database simultaneously on all nodes of the Apla blockchain network.
No, no data can be deleted from the Apla Blockchain. In the future, and in accordance with GDPR requirements, Apla will implement the option to remove data from the blockchain.
A private key is a way to identify users on the Apla network. Every transaction is signed by a private key, which allows to precisely identify each transaction initiator.
User passwords are required to prevent unauthorized persons from entering the network from your computer with your private key.
Yes, users can change their passwords at any time.
Rights to add or edit data can be provided to specific users, user roles, or smart contracts.
To change the data, a hacker would need to take control of at least 51% of the validating nodes, which is highly improbable.
Yes, the block explorer is available by opening the URL – application URL:8080. For example, if the URL of the application developed on the Apla blockchain is myshopping.com then we can find the block explorer at myshopping.com:8080
Yes, we can transfer the data from existing databases to the Apla blockchain. This will be implemented by way of sending database records as transactions to the blockchain network. After that, Apla dApps will be able to use this data in accordance with the established access rights.
Files are stored in special tables as binary data.