<<

The Feelium Tech Stack

www.feelium.co

Private and Confidential Version 1.0 1! Index

The Feelium Tech Stack ...... 3 What is a tech stack? ...... 3 Mongo DB ...... 3 Express ...... 3 AngularJS ...... 4 Node.js ...... 4 Why the MEAN stack? ...... 4 Security and ...... 5 The SHA 256 protocol ...... 5 1 ...... 6 The Feelium Tech Stack What is a tech stack?

A tech stack is a combination of certain components and layers of technology that make up a platform and provides functionality to the program. The Feelium platform is built up of MEAN stack technology. The MEAN stack is an open source software and is javascript based. MEAN includes a few programming languages that are a part of its technology stack:

Mongo DB

Mongo DB is a no SQL database that is open source and a document oriented non relational system of databases. Mongo DB stores data in collections of individual documents and has no particular format or schema, and is increasingly being used in big data and real time web applications. No SQL databases provide a way to collect and retrieve large amounts of data.

Express

Express is a lighter and flexible node.js web application framework that allows developer to create single and multi - page hybrid web applications that can have high functionality. Express provides a layer of basic web application functionalities that can operate without hindering the functionality of the underlying node.js functionality.

Express also provides a framework to create robust API’s that are easy to integrate so as to provide the best functionality on different platforms.

Private and Confidential Version 1.0 3! AngularJS

Angular.js allows developers to extend HTML vocabulary to create more dynamic web applications that are not possible with static HTML codes. Angular.js also provides a way to set up a robust backend that allows for data validation of fields with minimal code, that allows for a simpler and faster web applications.

Angular.js also allows for deep linking so the user of your web application can bookmark pages and email links to locations within the app itself. Angular.js also provides in-built services that allow for communication to third party libraries that further simplify back- end development of a dynamic web application, providing a large range of functionality to the end user. Node.js

Node.js is a javascript runtime that is built on Chrome’s V8 javascript engine. Node is built to create scalable network applications, where many connections can be handled simultaneously. Node.js uses an event driven, non blocking I/O model that is efficient and lightweight for real time applications that deal with large amounts of data and is used across varied devices.

Why the MEAN stack?

Building a web application on the MEAN stack database means that all the technology is operating on java script, which provides synchronicity and congruence throughout the web application. Additionally, MEAN is good for large quantities of database information, which the Feelium platform will have. MEAN is also open source, which allows Feelium’s users to suggest ways to develop the platform further, and allows Feelium developers constant access to updates and improvements in the technology.

Private and Confidential Version 1.0 !4 Security and Cryptography The SHA 256 protocol

Feelium is built on the original SHA 256 protocol, with salt 1 encryption. SHA-256 is a member of the SHA-256 cryptographic hash functions designed by the National Security Agency. SHA stands for Secure Hash Algorithm. Hash functions work on mathematical operations, and are part of a field of mathematics called cryptography.

Hash functions help determine the integrity of data by comparing a “hash”, which is the output of the execution of a certain algorithm that results in encrypted data. There are also one-way hash functions that result in a hash being generated form data, but running the hash back through that function will not result in the output of the original data.

These one-way hash functions generate a number that is a representation of the data that was out into the function. The same data always results in the same hash, but reversing the hash back into data is not a simple procedure. This is why hashes are used to store . Instead of the system storing the user’s , the platform stores a hash of the password. Each time the user logs in, the password that they type is run through the same hash function and then matched to the stored hash.

Private and Confidential Version 1.0 5! A password running through a hashing algorithm

On the Feelium platform, the SHA 256 protocol is used to secure the transaction of data within the system itself. Every set of date has to pass through one way data compression which further ensures the loss of data during transaction.

Salt 1 Encryption

Salt is random data that is added to the input in a one-way hash function to defend against dictionary attacks or a pre-computed attack. A happens when a very large set of words is used to generate potential passwords and gain access to the system or computer. Another type of attack is a pre-computed rainbow table attack which involves a situation where a rainbow hash table is used to try and crack the stored hashes in a system. The primary function of salts is to prevent attacks of these kinds; they safeguard passwords that are stored.

New Salt is randomly generated for each password. Salt is typically added to a password before it is run through the hash function, and the resulting hash is stored in the database with the salt. Hashing allows the password to be authenticated at a later stage without storing the plain text password.

Private and Confidential Version 1.0 !6 Additionally, salts are not dependent on the users, and they help prevent rainbow table attacks by making the size of the rainbow table needed so large, that is becomes near impossible to carry out. As salts are always different in each case, they protect commonly used passwords as well, or even passwords that have been used on multiple sites by the same user. This is possible because all salted hash instances for the same password differ from each other.

The process of salt being added to data before hashing

These cryptographic salts are used in many modern computer systems as well as for security in systems that are built and function on the internet.

The Feelium platform has three layer of a security check that includes encryption, compression and one way chaining of data. The encryption phase occurs through the one way hash, the compression of the data happens through a standard source coder. After compression and encryption, the data goes through a one way chaining and forms a hash chain.

With a combination of the SHA 256 cryptographic hash function and the salt 1 encryption, Feeliums’ platform will be highly secure to use, both, in terms of the wallet, as well as the smart contract and escrow functionality. The MEAN stack will ensure smooth and fast operation of the platform, giving users the best experience possible.

Private and Confidential Version 1.0 7! Contact Us

[email protected]

@feeliumcoin @feeliumcoin Feelium @feeliumcoin feeliumcoin Feelium Feelium feeliumcoin