Skip to Content
Technical Articles

Decentralized Application (Dapp) in SAP Cloud Platform

Hi all.

How can I speak of a decentralized application in the cloud? let me explain.

Although what I am about to show you is an application deployed in the cloud. Does the mere fact of being deployed in the cloud not make it centralized?

In this case, the application does not have a centralized database although its sources are hosted in SCP. The database that I am about to create is one based on P2P, each person can replicate said database between the different nodes connected with the same HASH. It sounds strange, but let me explain this concept that even in my beginnings was difficult to understand.

In addition to the above, we are going to use a planetary exchange protocol (IPFS) to upload any type of file in a decentralized way. In summary, the only thing that is centralized is my JavaScript (Front-End) source codes, which are deployed in SCP (SAP Cloud Platform).

It is a completely decentralized application, which allows you to share what you want privately and anonymously. We do not store the files on our servers, but rather, we upload them to a planetary exchange network, which feeds each of the nodes that are worldwide, being difficult to locate a single file in a specific place. Uploaded files, once they are in the decentralized network, it is practically impossible to be deleted.

Upload files

The application will allow to generate a unique URL per directory of uploaded files. The URL has a difficult structure to guess and access, which makes it difficult to index in search engines like Google or Bing. Therefore, the uploaded files can only be accessed only if you share the URL with a family member or friend; although the latter does not mean that the files are not exposed to anyone to access.

The structure of the uploaded files and URL are something like the following as an example:

Once we enter the previous Link, we will obtain the following, where the files uploaded to the IPFS network (Planetary Exchange Protocol) are shown.

Information storage (Database)

Today, we know the types of data that exist. All types of databases have something in common, they are centralized databases, which means that they are databases hosted in a specific location in some region of the planet. This means that you depend on a single resource to access such information, which makes it centralized. This model is used worldwide, by banks, large and small companies.

As of today, a new technology is being born that seeks to change this model; allowing to create a new revolution and evolution on the internet and how we share information.

New Inntech Transfer, intends to bring this technology, which is too new and in which we intend to enter and be one of the first companies to implement solutions under this model. For this reason, the current application aims to facilitate the transfer of files under a P2P exchange protocol, creating a decentralized database, in which each information hosted is clearly anonymous, unless the base Hash is shared. of data with a friend or relative.

The Database Hash looks like this:

Once someone connects to our database Hash, the information we have in our browser will be replicated on the computers that have said Hash, and so we can have the information in a decentralized way and connecting directly to other machines that are sharing the same Hash. In the event that a machine that has the same database Hash is not available, it will simply look for some other node that has this information from the database.

If any machine that is connected to the same Hash updates some type of information, this information will be replicated in real time in the other databases that are connected to the P2P network.

In our application, once the database has been created and new files have been uploaded, it will look like this:

 

Infrastructure

It must be understood that the application is completely autonomous and does not depend on any fixed physical infrastructure, since data storage, file uploading, is completely decentralized, and not even we, the developers of the application, really know where all the information πŸ˜‡.

How to start?

To get started, you don’t need to register on the site. You just need to create a new Database Hash or enter an existing Database Hash. you can explore the solution and see how it works in the following link DEMO: https://transfer.newinntech.com

The previous image shows the main page of the application, where the options previously described are shown.

Portal

By clicking on the “Create Hash” option, the application will direct you to a completely new portal. In which only a Hash will be assigned as such, when you start uploading the first files



Now, let's observe how our App is deployed in SAP Cloud Platform. We use the SAP Portal service





Once we enter the application, it begins to raise the protocols to start saving the information that we generate in a decentralized way.

Image uploaded to IPFS

After clicking on send, an alert message should appear indicating by means of a button “VIEW HASH DIRECTORY”, at the moment of clicking on said button, a new tab will open with the path through which it can be downloaded or shared with your friends.

We click on “VIEW HAS DIRECTORY” and the following will appear:

By clicking on the image, you can share the URL similar to the following:

 

Hash Database

Once the file is uploaded to the network, a unique database will be created automatically, with which you can observe the history of uploaded files. This database can be shared using the Hash generated automatically when uploading your first file.

You can locate the Hash in the following part of the application:

 

By clicking on “View Hash DB”, we will obtain the following:

We can share said Hash with anyone. This in order to know what files are uploading and to be able to exchange documents, videos, books, etc. Best of all, it will be private, unless the Hash is made public to anyone. You can use your imagination 🧠 and find different utilities for this service!

πŸŽ“Important NoteπŸŽ“: It may take a few minutes for the database to load. It all depends on the speed of the P2P network.

What is a Hash?

In this case, a Hash becomes a unique identifier per file and database, which is difficult to forge or replicate. Every generated hash is impossible to guess; it can only be known if it is shared with someone.



conclusion

Hope you enjoy the app and a new concept. Currently this technology is very new, we will try to update the application, adding new future functionalities. πŸ‘¨β€πŸŽ“ πŸ‘©β€πŸŽ“

Thank you very much for reading the article. I will be happy to read your opinions and comments.

Be the first to leave a comment
You must be Logged on to comment or reply to a post.