Alpha version characteristics and system functionality
CREDITS is a public, decentralized peer-to-peer network built on the principles of blockchain:
- public registry with private and public keys,
- decentralized smart contracts,
- internal cryptocurrency.
CREDITS platform allows you to create accounts for further work in the system, to carry out transactions to transfer the internal currency CS and tokens created on the platform.
You have the ability to work with smart contracts in the system and perform the functions enabled by smart contracts.
Monitor and Wallet systems allow you to conduct transactions to transfer and view the state of the network and the platform as a whole through the web version of the platform, without installing a full node.
For desktop software application (a full node), you can use smart contracts, release new tokens and test them in addition to the features of the web version of the platform.
Alpha version specifications:
- The expected transaction speed is 250-500 thousand transactions per second;
- The average transaction price will be 0.001% of the transaction, but not more than 0.1 CS;
- The platform core is implemented in C++
- Encryption 256, using RSA as a way to sign, verify and check the integrity of the transaction;
- Using BFT as a way to provide secure acknowledgment or rejection of a transaction from an illegitimate node in the network.
Desktop application is a network node
- Node (a full node) is a desktop application (a local Windows user application). It has an open API (application programming interface); implemented in C++. It's a complete node and eWallet, and provides the following set of functions:
- Participation in the consensus algorithm;
- Storage of public registry blockchain with all transactions;
- Performing value transfer transactions: CS and tokens released on the CREDITS platform;
- Account balance check;
- Creating an account/eWallet;
- Development, compilation, deployment of a smart contract;
- Issuance of internal tokens that work on the platform/CREDITS protocol
- Smart contract testing;
- Execution of smart contract functions/methods (like ‘execute’, ‘save’, ‘approve’, ‘view’, ‘check’, etc.).
Console is a software module that allows you to monitor the system (C++).
This service name is "Monitor"
CREDITS Monitor is a web version of the application for browsing a public registry platform; implemented in C#. Displays the current state of the platform and all network transactions. Shows the following:
- Total number of network nodes;
- Transaction Execution Statistics;
- Account balance;
- List of transactions for the account;
- General information on the smart contract;
- Smart Contract Transactions;
- Displays the open smart contract.
This is a web version of a wallet; implemented in JAVA + Angular4. A Java client application sits on the user's browser side. The work is all done in the user's browser and there is no transfer of account’s personal data to the network and site/platform server.
It provides the following set of functions:
- Creating a wallet using a file and a private key;
- Creating a transaction;
- Transfer of values (CS or tokens created on the platform);
- Account balance display;
The transaction history data is displayed on the exterior web service "MONITOR".
Smart contracts are developed in Java in Eclipse, NetBeance and other environments with Java support. Compilation of the developed program code is in the CREDITS desktop application.
The smart contract module provides:
- The cyclicity of smart contracts operation;
- Issue of tokens as a type of smart contract;
- Application programming interface (API) to work with smart contracts on external systems. The inversions: an external system – a smart contract/ a smart contract – an external system.