diff --git a/README.md b/README.md index c8a835e..aaa1a5f 100644 --- a/README.md +++ b/README.md @@ -629,39 +629,6 @@ Note: Application field is used by the Cloud to judge whether this message shoul # Examples for FLO Cloud data operations - -# Basic Concepts of RanchiMall Blockchain Cloud for developers - -* RanchiMall blockchain cloud is a service to provide a set of decentralized servers that will provide data storage to users. These decentralized servers are listed in the FLO Blockchain under an authorized FLO address. This gives the assurance to the users that those data servers can be trusted. - -* The user can store his data in these servers freely. RanchiMall cloud service also provides facilities to store Javascript Objects directly. Storage in JavaScript object form makes it easier for JavaScript based applications to process the data. - -* The cloud servers provide automatic backup and restoration for each other. - -* Using the blockchain based data cloud, users will not need any database to store their data. The cloud will provide data storage, backup and restoration facilites. - -* RanchiMall Blockchain Cloud is a password less system. Every sender has to digitally sign his data with the private key associated with its FLO ID. The cloud verifies the digital signature of the sender before storing sender data. - -* Since the blockchain cloud is an ensemble of servers, we need a method to pick the right server to store the data. For this purpose, we find the a server closest to receipient of the data according to an artificial distance measure. - -* Every client of the cloud can automatically compute the correct server where the data needs to be stored, and sends the message directly to that server. - -* Every client of the cloud is the consumer of the data. It can ask the cloud for data sorted by a recipient, or by various options we provide like name of application, type of data, or by specific comments. The client can can also ask for all data after or before a certain point of time using a concept called Vector Clock. - -* The cloud attaches the exact epoch time to any message given by a sender, and using the combination of epoch time, and sender FLO ID, the vector clock is constructed. - -* The two basic forms in which users can submit data to the cloud are `General Data` and `Object Data`. `General Data` is freely flowing data, and `Object Data` is stored directly as pure Javascript Object. - -* Both `General Data` and `Object Data` have been derived from `Application Data` which is the basic system data type in the cloud. Normal users will never need to use Application Data. But for documentation purposes, we are providing the technical details for Application Data as well. - - - `General Data` = `Application Data` + User level Vector Clock filtering facilities - - - `Object Data` = `Application Data` + Message field modified to handle Javascript Object + User level Vector Clock filtering facilities - -* Consistent with blockchain data principles, RanchiMall blockchain cloud will also provide data to everyone who asks for it. So sensitive data should be encrypted using the receiver's public key using Crypto functions of FLO Standard Operations. - -* Consumers of data can ask for data by receiver ID, or filter it by application, type, or comment. They can also ask for data for a given type before and after a certain vector clock. - ## 1. Data fields stored in each of decentralised servers vectorClock, senderID, receiverID, pubKey, message, sign, application, type, comment