Its Time For a Hybrid Telegram & Signal Messenger
Tags: Telegram, Dapps, Holochain, Data Center, Gdpr

A Secure Messenger on Holochain

In this section I will cover how a new secure messaging on application on Holochain might look, the features it can have that no others can provide, the differing levels of security and hosting costs and the benefit to the end users.

Account:

Both Telegram and Signal use telephone numbers for accounts. I would say that the creator may even consider the option of signing up to Hologram to not require a phone number but also allow an email signup as well, requiring a phone number removes the presumption of privacy.

And as I covered above a phone number in this digital age is basically worthless as being a means to ensure there is no abuse of multiple accounts created.

One of the advantages of Holo hosting (You don’t need to be a host to use any services on Holo hosting, can just be a web sign up) is that it can also provide you with your own identity management. I won’t go into depth about it here but the premise is your identity is held by you and you alone and lives on your device(s) and not on servers.

Holochain enables GDPR requirements to be met and exceeded. Companies might use Holochain as a gateway into other applications, ensuring users are in control of their identities and personal information for connecting.

As I mentioned earlier requiring different levels of identity verification could be a service included in the application where the application provider can offer differing levels of authentication of the person and have this attached to their profiles publicly and allow group creators to choose the level of authenticity they require.

This also falls into the monetization of the application for the creator.

Groups:

As I mentioned above Signal has to manage its group sizes to less than 1000 for security reasons. Telegram allows up to 200 thousand which is also possible on Holochain or even more, it is up to the application creator, the security remains high no matter how many are in the groups.

Paul d’Aoust from Holochain advised me that the likely reason that Signal puts a cap on the size of their groups is because E2EE communication gets linearly more expensive as the group size grows. You have to maintain a set of rotating keys with every other person in the group.

So the question remains then would a secure-as-Signal messaging app on Holochain inherit that same inefficiency?

I am not a developer but my understanding is that it would if it tried to use the Signal protocol for encryption but because Holochain applications are by default encrypted with 3 layers , Peer validation, Gossip and cryptographic signatures, this along with the TLS security I believe would mitigate any vulnerabilities.

That said I am not a developer but I do know that unlike traditional applications a Holochain application that is under attack the DNA of the applications code in the DHT will reject any malicious or altered data and then gossip the attacking node out of the DHT and cause them to fork their own (incorrect) version of the truth.

So the natural security applied to all Holochain applications is miles ahead of its competition from the get-go.

Interestingly I also asked some of the Holochain developers if they could employ the Signal Protocol to a Holochain application and they said it would likely be possible to add it to Holochain’s DNA for all apps, therefore adding another entire layer of security.

At the time of writing I am unsure if this will ever take place or if it would even be necessary.

Data Limits:

The creator of a Hologram messenger would just need to add this into the application design the limit is up to the creator, Holochain has endless scaling, similar to that of a Torrent, meaning the busier the site becomes the faster it becomes.

As for storage the same applies.

And although Holochain can scale infinitely using the advantages of a torrent style peer system it also means that it is able to scale higher when more people want to access the same data.

For example a cryptocurrency built on Holochain would see that every host is serving information about that currency and its transactions in perpetuity meaning that it will be ultra fast because everyone is either uploading or downloading information pertaining to the history and validation of any transactions for that particular application which is that digital currency.

But with messaging it is different because not is that everyone wants the same piece of data at the same time and what you’re looking at is that people are always producing new data but as the network grows each participant carries less of the burden. So the efficiency gains you get aren’t the same as would be with a currency application or other Holochain application where the data being created and disseminated is exclusively what all of the hApp holders are focused on, like a companies supply chain or retail application where every evolution is sped up by the number of them in active use.

Therefore with a Holochain application each user will have a roughly constant experience of performance because worldwide performance scales linearly with the number of users.

What this means for a an individual user of Hologram if it suddenly exploded in popularity and went viral with millions of concurrent downloads and users is that the application feels no better or worse than it did before this happens because of Holochains ability to scale, which is the opposite of what would happen to a Blockchain or Data center/cloud hosting application it would struggle and curl up in the fetal position until more resources were added to aid it.

Note that this applies only to a messenger type scenario where the hosts are regularly serving different and new data from multiple agents each adding their own workload like chat and files etc, a more simple version say for example Twitter where its mostly just messages and short videos the opposite would happen, the more users there were that the faster it would become because everyone is only serving a certain type of new data.

And while we are speaking about data its important to remind everyone again that with every Holochain application you own your data, the end users keep a copy of their data (if they wish to) on their devices and at anytime can revoke access to an application and also demand to be “forgotten”.

Having the right to be forgotten is one feature of Holochain that is not really spoken of enough, how many times have you heard about a data breach that happened to a website you used to use 5 years ago? Your data remains on its servers forever and is harvested, analyzed and sold or stolen if it can be used to sell something to you or exploit you.

For example, if Telegram messenger was sold, all of your information is sold along with it, and you don’t have a back up copy.

You don’t even know where your data lives with Telegram, its servers and locations are secret. For all anyone knows it has been sold to a Russian or Israeli or US intelligence agency, or access to it has been sold.

We are not all criminals or have major secrets to hide but that is beside point, you have the right to own and control your data.

You control what comes out of your mouth when and where, but what comes out of your fingers is shared everywhere.

Same with Twitter, you don’t own your tweets, Twitter does, they live on their servers, but with Holochain your data lives on your device and you decide who has access to it.

Bots:

Same for bots, stickers, gifs and Polls, all of these features that Telegram has will work fine in Hologram they just be an agent controlled service rather than a UI.

Self Destructing Messages:

Possible with Holochain, either through using a specific command to send another command to override a sent message once validated on the DHT if the rules in that message were for it to self destruct, or it would be that both parties would run a scheduled task to delete their copy of the data from their own stores and purge from the DHT.