Kick Ecosystem Recap — Issue 16

Welcome to the new issue of Development Diaries. Get ready to embark on a tech journey with the Kick Ecosystem team!

Kick Ecosystem OFFICIAL
7 min readApr 10, 2020

Dear project participants,

We know that waiting can be tedious, however, the great products require time. Only a few steps left before KickEX exchange is released into the public. A few important features will complete the infrastructure and put the icing on the cake.

Without further ado, let’s get to details.

NEW FUNCTIONALITY

Crediting of referral KickTokens on Ecosystem account and referral income
At the moment, we are completing the function of crediting referral tokens and the integration of KickRef and KickEX. At the start of KickEX, users will receive bonuses earned in the referral program to a special Ecosystem account. The Ecosystem account can also accept a deposit of KickTokens and send them to receive discounts of up to 50% for trading operations.

Ecosystem Account

KEX Token and crediting the tokens for active trading
A mechanism for crediting KEX tokens for active trading on the platform has been developed. Currently, we are testing the functionality. The KEX Ethereum contract will be published on the network soon.

Mosaic Wallet
We have integrated the Mosaic Wallet into the Ecosystem architecture. At the moment, we are performing tests based on the Ethereum blockchain and working upon integrating other tokens.

In the beginning, Mosaic Wallet will contain four levels of risk reduction for loss of funds:

  • support n-wallets on which funds are accumulated depending on the volume of funds, limits and cryptocurrencies. Compromising one of them will not lead to a loss of funds on other wallets;
  • “reincarnation” system — periodic reissue of wallets and transfer of funds to new ones with newly created keys;
  • “vacuum storage” system and multi-sig — the company’s server does not store private keys for wallets in memory, but creates them at the time of signing the transaction based on specialized cascading encryption and multi-sig authentication algorithm;
  • multi-signature authorization of a transaction that eliminates the risk of both external and internal fraud: none of the exchange employees can single-handedly start the process of any movement of crypto assets, what eliminates the risk of internal plundering.

Security and Infrastructure
We have developed several lines of protection against cyberattacks for KickEX and other services, and protection against vulnerabilities, including:

  • security Incident Monitoring Center — we provided a response to threats and instant notification of our dev specialists;
  • validation of services and source code by static and dynamic analyzers before each release to production (SAST and DAST) — such systems reduce possible human errors in the code and return for revision if they are detected without further permission for release;
  • several levels of network protection; all services are isolated from each other and communicate through special encrypted channels only — penetration into the network will not allow access to user data.

We are also preparing to launch the Security Bug Bounty. Everyone will be able to participate: test the exchange for vulnerabilities and receive a reward for bugs found.

Disaster recovery protocols for KickEX infrastructure and components have been launched and developed. We are preparing for the final stress test.

API gateway for high-frequency trading
The gateway will be launched in several stages:

  • launch of the basic API functionality (REST and WS) and documentation;
  • SDK for popular programming languages will be available for free. Future users will not need to write their software development kits from scratch;

The gateway is at the final stage of development and will be launched within a few weeks after the launch of the main KickEX functionality.

API gateway

KickMessenger
The Messenger is up and running. Messaging is currently available for KickRef users. We are planning to integrate and connect the messenger to other services of the Ecosystem.

Here we have come to an end of the ready section, however, if you want to delve deeper into the code, the following section is just for you. Enjoy!

TECHNICAL DETAILS

KickEX

KickEX is a robust, centralized exchange, encompassing all the expertise that we’ve gained over the years from preparing and running KickICO as well as a range of innovations in Kick Ecosystem to create a next-generation exchange.

Implemented features:

a workable implementation of a system recovery protocol;
improvements and bug fixes;
editing orders and executing any type of market order;
REST support in the gateway;
identified UI performance problems, corrections for the next release are prepared;
integration with Mosaic Wallet, the configuration of deposit and withdrawal of funds.

In progress:

improving the logic of reserves, the logic of transaction execution, the data structure for the matcher and gateway for the discount system due to referral KickTokens;
support for non-trading operations to credit income of referrals;
redesign of the market depth chart to increase performance.

KickRef

KickRef is a referral program, which is a type of multi-level marketing, allowing any member of Kick Ecosystem to create a referral link and to establish own network. That is a ready tool to start earning from invitees trading on the KickEX exchange and make an additional passive income.

Implemented features:

the feature to send messages to referrals in the KickMessenger has been completed;
design of a personal dashboard has been changed;
optimization of the rating recalculation and refinement of the rating displaying;
improving the display of awards in personal account;
integration of exchange and referral system for bonus calculation;
main page code moved to server-side rendering to improve the search optimization.

In progress:

improvement of a personal dashboard to display the income received from the user’s referral network;
redesign of the admin panel for integration into a single administrative panel of the Ecosystem;
user section in the admin panel.

KickID

KickID will make using our products simple and easy for all our users. As soon as your log in to one platform in the network, you automatically log in to all platforms for a seamless experience.

Implemented features:

user search and user management in the administrative panel;
saving the locale in the user profile when changing it;
adding the country of registration to the user profile and its selection during registration;
optimization of the user’s search performance when entering the account;
notification of Kick Ecosystem services about changing user profile attributes;
Tarantool application server code update without downtime.

In progress:

authorization for KickEX Gateway API Sessions.

KickNotify

KickNotify is a service of informing the users about the events or user actions that have occurred on the platform services.

Implemented features:

limitation of mail notification messages to 10 per second;
unread message counter for KickMessenger.

KickMessenger

KickMessenger is a service operating on the platform, allowing all members to communicate with each other.

Implemented features:

improvement of sending technical messages when a user leaves the chat;
chat type filter in the method of displaying recent chats;
no new messages in chat for a user who leaves the chat;
adding user and chat information to the notification for KickNotify;
pass the counter of unread messages of the user to KickNotify;
PostgreSQL read/write operations distribution from master/slaves;
saving the date of the last user activity;
adding the date of the last user activity to the profile, sending a message to the interlocutors about the user’s login/log out;
redesigned mechanism for counting unread messages in chats and at the user side;
load testing of the messenger;
preparing to launch in production.

In progress:

implementation of user ban/unban functionality
implementation of the automatic creation of a group with referrer and his 1st level referrals.
implementation of the feature of creating a group with users whose contacts are available to the creator
implementation of the possibility of refusing an invitation to join the group

DevOps

Implemented features:

new scaling mechanisms on the test and working environment have been implemented;
deployment of dev/stage stands, setting up connectivity with the exchange core for Mosaic Wallet;
numerous tasks have been completed to stabilize the infrastructure, prevent disruptions and reduce the response time to accidents.

In progress:

preparation KickEX for production;
analysis and improvement of infrastructure security policies;
improvement of the KickID delivery pipeline. Now there will be no need to stop the authorization service for the update;
K8s cluster update;
continued work to improve infrastructure stability and minimize application delivery time.

QA:

Implemented features:

implementation of a test model for KickEX, KickMessenger, KickID, KickRef;
full testing of KickMessenger before release;
optimization of KickEX automated testing processes;
implementation of auto-tests in the process of continuous delivery of updates;
setting up an alert and reporting system on conducted automated testing sessions.

In progress:

functional and regression testing before updates;
implementation of the Mosaic Wallet test model;
implementation of automated testing of regression of a bunch of KickEX and Mosaic Wallet;
implementation of the framework for load testing before the launch of KickEX and Mosaic Wallet.

Information Security:

Implemented features:

the code base is verified by SAST analyzers;
continuous monitoring of host and application vulnerabilities has been launched;
DevOps pipelines integrate auxiliary dependency vulnerability checking;
checking of the source code with the SAST analyzer integrated into the DevOps pipeline;
the SSL rating of critical nodes is raised to A/A+;
continuous vulnerability monitoring for all ecosystem hosts have been launched.

In progress:

increased use of SAST analyzers;
updating containers and source code dependencies.

You made it! Mission accomplished! We hope you enjoyed the usual dev overload. Have a nice weekend!

Any questions? Welcome to

KickICO Telegram Chat
KickICO Twitter
KickICO Subreddit

--

--

Kick Ecosystem OFFICIAL

Welcome to the official Kick Ecosystem blog. It's great to have you with us, enjoy a good read! Our websites: kickex.com | kickico.com