Skip to content

Instantly share code, notes, and snippets.

@stoichammer
Last active May 29, 2019 05:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save stoichammer/9abd2112b9ddd57959bad49865af54b1 to your computer and use it in GitHub Desktop.
Save stoichammer/9abd2112b9ddd57959bad49865af54b1 to your computer and use it in GitHub Desktop.
Digital communications in the Bitcoin era.

How Bitcoin will disrupt digital communication

In the not so distant future, when Bitcoin is ubiquitous, the digital communication ecosystem would be completely reinvented. It is possible that Bitcoin economic model will breathe new life into decades old comm. technologies and protocols that never really took off or were stagnating. At the same time it will open up avenues for a plethora of new services and features that will streamline and simplify things for everyone involved.

Before we dive into the future of digital communications, lets review the current state of the blockchain ecosystem and weed out some possible misconceptions. In the last decade (half actually) we had a Cambrian-explosion of public blockchains/ consensus protocols/ crypto-currencies (coins/ tokens) how many of these will survive & thrive in the coming years? we have arguments at both extremes of the spectrum, some say (maximalists) eventually there will be a single winning blockchain "winner takes all" by comparing blockchains to TCP/IP or Internet. And on the other end, many envision there will be hundreds if not thousands of Blockchains (and tokens) substantiated by - a single blockchain cannot possibly meet the needs of all the different entities (biz./govts./indiv.) & use cases, some even include scaling limitations as a factor, in fact there are many projects that are building solutions for blockchain interoperability (comes stocked with own token of course). It seems very confusing and hard to predict, and often people believe other industry leaders (with own agendas) without thinking for themselves, it seems confusing after-all. How do we see through this clutter? Most technical people don't full buy into the rationale of Bitcoin-the-protocol analogy to TCP/IP, and for good reason, Bitcoin falls into the application layer when matched to OSI model (or even TCP/IP model) and we witness multiple competing application layer protocols (solving same/similar problem but differently) that were invented decades ago still being used. They clearly haven't distilled to a single winner after all these years. So why would we expect any different on Blockchains which are nothing but application layer protocols?

One way is to stop looking at Bitcoin as a protocol and instead purely as a network. A network (protocol or otherwise) due to its "network effect" (‘a phenomenon whereby a good or service becomes more valuable when more people use it’) eventually consolidate into a huge pervasive system. The definition of "network" could be a company (Whatsapp, Twitter, WeChat), an application (sans a protocol or proprietary protocol(Facebook) or a continually evolving protocol (Google-Talk/Hangout) an even an open protocol (like SMTP), or a proprietary federated network with gateways like Skype & Lync.

In other words, being a protocol is not a sufficient condition (in fact its not even a necessary condition), it needs to inherently possess network effect qualities. SMTP has this quality and to this day email is ubiquitous, whereas network effects do not apply to FTP, LDAP, SOAP, RDP, Web-socket, Apache Thrift. While typically new users bring value to the network and increase dominance of the network, if the network is unable to scale and quality of service deteriorates then on the contrary it will do more damage than help, this is exactly what happened with Orkut (a precursor to Facebook). So ability to scale is an important factor. Besides if a network (protocol/service) is not flexible enough for new models/ applications to be built on it, then the market will find other avenues, despite the network effect moat (Blackberry).

Now its possible to see a future in which, a single public blockchain is overwhelmingly unanimously adopted (or one of handful if inter-op friction is sufficiently low). Bitcoin is a network, an ecosystem which can scale to internet levels, and is flexible enough for various applications and services to be built on it. Hence we could argue Bitcoin is poised to be take up a significant share of the market, if not most of it.

The digital communication ecosystem (platforms/ services / tools) today is heavily fragmented, where in the user is forced to pick a different service for each of the specific needs, instant messaging (IM), presence, voice (VoIP), voice conferencing, video conferencing, e-mail, desktop sharing, group chats, live streaming, private secure chat, etc. Most of us have likely used Whatsapp, WeChat, Zoom, Telegram, Signal, RingCentral, Vonage, Skype, Slack, Gmail, Outlook/Live, Discord, etc. and not to forget 4G SMS & Voice calling. Enterprises typically are invested (CapEx) in a unified communications (UC) solution with a vendor lock-in despite the underlying open standards based protocol like SIP. To explain the above status quo and a possible resolution to the above quagmire requires a nuanced thesis which covers the following aspects.

  • Identity – the real or pseudonymous username/ handle/ URI; who provisioned it? who owns it? is it portable? Censorship resistant (banning)?
  • Data – where is the data (IM) or meta-data (e.g. CDRs) stored, who owns & controls it?
  • Privacy – end to end encrypted? Need phone number (linked to SSN/ state ID)?, targeted ads, surveillance, AI analysis, intrusive cross selling
  • Mobility rights – Vendor lock-in, can you pick up data/identity /contacts and move across providers (portability)
  • Access/ Reach – communication across platforms/ services seamlessly? Typically XMPP, VoIP, SMTP based services allow this.
  • Ownership & Consent – w.r.t identity and data
  • Price negotiation & contracts – consumer at disadvantage? Prices packaging opt-in/out etc.

The models for online/digital communication platforms can be classified broadly into the following:

Centralized

In this model, the platforms allow self-service account provisioning, typically users are able to choose own username and password, and some trivial configurations, but beyond that everything of value namely data & identity is owned and controlled by the platform. User could be banned without notice even if the so called violation of T&C is subjective. There is often no mobility rights (portability) and users are stuck on the platform even if it continues to stifle, due to legacy contacts, data etc. Although many of these services launched their products/services on open standards based protocols (to attract more people), eventually they get greedy as the network effects work in their favor and begin building moats to isolate themselves, it often involves merely disabling subtle protocols features rather than building something advanced & proprietary. Google Talk and Facebook messenger started out with the open XMPP protocol, but eventually started to diverge, and now are completely cut-off. This results in a fragmented ecosystem where users have to deal with multiple apps and services.

Chat apps like Whatsapp, force you to share your phone number which is means you cannot use the service pseudonymously, as the telecom provider issued phone numbers are linked to state IDs like SSN in most countries. Besides, due to the end-to-end encryption feature it typically works via a single client (phone app), even when using the web-app, the phone app acts as the gateway. Despite the e2e encryption, the data (& metadata) could be backed up on their cloud provider of their choice in clear text for easy search and backups if the perfect-forward-secrecy keys were to be lost somehow.

Many of these services come with the guise of being a free service, but in reality consumer is the product, at the cost of privacy and targeted ads, state surveillance, AI analysis and intrusive cross selling. Instead of the services working for the user, they command the user to submission.

Federated

Federation allows different providers to inter-operate and hence users are free to choose the operator that best meets needs or can become their own provider too. There is no improvement to data and privacy in this model, as the provider still controls it. Also, portability is not seamless, yes Gmail provides a take-out service, but what good is it when your emailID’s domain is still “@gmail.com”? Hosting on own domain comes at an additional cost, both for domain registration and the monthly email service fee and cannot be an afterthought.

Still this is a step forward from the centralized model. Even though the earliest protocols and services like Email, IRC & VoIP (SIP) were designed to be federated, increasingly the world is dominated by centralized platforms. The reason to this could be that the entire ecosystem is moving too fast for services to support them, and backward compatibility issue is not something a service providers are keen on addressing.

Even though email is still federated in theory and hence we should have a highly decentralized network of email service providers, the reality is very different. Market research shows the top 3 providers namely Gmail, Apple mail & Outlook control well over two thirds of the market. There are various reasons for it, reliability, user experience, cost, come to mind, but I posit the primary drivers are spam filtering & search. In fact spam is the number one reason that deters privacy conscious users from hosting their own email service.

SIP (Session Initiation Protocol) is extremely mature, widely deployed, and well understood by most technology groups, it has its roots in the text based HTTP client-server model, but the SIP procotol invented concepts like dialog & session that turned it into a peer to peer protocol with both endpoints of a session implementing a user-agent-server(UAS) and user-agent-client(UAC). Even though the underlying protocol is essentially P2P the deployments network topology (enterprise/ telecoms/ trunking) in reality were setup mostly client-server architecture, with centralized servers for signaling and media, such as registrars, SBCs, appln. servers, media services etc.

SIP has a number of protocol enhancements managed by IETF like SIMPLE, CIPM, PIDF, etc. for tacking every possible instant messaging, rich text/sharing and presence use-cases. During the early 2000s many believed the chat/IM space would evolve around SIP or XMPP, but today we are left with walled gardens managed by giant corporations. Skype underwent similar transformation, albeit being proprietary from day-1 from being a p2p protocol aided with clever NAT traversal techniques and decentralized directory service, it eventually transformed to a centrally managed client-server one. There have been numerous technical limitations quoted as the reason, but I believe the reasons are more commercial than technical, esp. with Microsoft acquiring Skype wanted greater control, possible there are political reasons too(NSA).

Self managed (the future!)

The next stage in this evolution, takes us to user autonomy and greater tech innovation, it almost seems like the rosy techno-utopianism is within reach.

It starts with the concept of self-sovereign identity, where the user owns and controls his/her pseudonymous identity. Bitcoin blockchain can act as a host ledger for registering these identities, a userfriendly handle like a SIP (or XMPP) URI, typically in “sip:user@host” (or FQDN) format, used to call or message another person. But the host/domain is not meant primarily to refer to federated service providers, as we are seeking to move from federated to self managed model. Yet there is value in host/domain for enterprise scenarios (say an employer Cisco issuing handles nickb@cisco.com). I will refrain from giving concrete structure for such an URI in this article, but will merely present thought process in subsequently deriving one. We can imagine users registering URIs/handles (for a nominal fee) that are independent and hence transferrable to various service providers not just seamlessly but even without needing human inputs/thought. We also dont want to rule out some providers offering user accounts entirely free of charge but under their own domain, much like @gmail.com today.

Unrestricted universal access to any user will finally be possible, as now handles/URIs are on the global Bitcoin network. Of course the data storage and privacy concerns will be met by storing encrypted data & metadata referenced from or directly on the Bitcoin blockchain and efficiently/economically retrievable via micro-transactions from specialized data storage services that will emerge in the ecosystem. Of course there will be certain limitation in the early days where server side search is not entirely possible with encrypted data (word frequency analysis attacks etc.), but I am hopeful solutions will emerge for most of these.

The real paradigm shift is brought about by how the communications service providers are integrated with one another and also to client applications & the Bitcoin blockchain. In contrast to the federated model, here we design a loosely coupled network of service providers that interface with and supplement the Bitcoin network via micro-transactions & payment channels. These service providers specialize in their offerings and cover the whole spectrum from signalling (orig & term handling) to media services & specialized offerings. The call/IM/presence/etc. signalling & media works on dynamic routing determined by factors cost, QoS & rich/value-added services.

It creates a level playing field, where providers are not fighting for tightly bound subscriber-base market share, but rather prepare for greater service capacity/through-put and capitalize on actual real-time service delivered, i.e. focus on metrics such as calls originated/terminated/conferences hosted / voicemails collected/ offline messages retrieved/ contact book searches/ IM & presence notifications delivered etc..

The URI registrations will likely be handled in a bundle, with multiple explicit protocol URIs registered simultaneously for a period of time. i.e. SIP/ XMPP/ etc. The registration cost for a given protocol will vary based on demand (free market). Users will become agnostic to the underlying protocol, even if they set-out rooting for one, say SIP or XMPP/Jingle, and that’s the way it should be, a protocol is never the king, its a tool for a job, the free market will determine the most efficient method/route to meet the demands.

There won’t be an incentive for the service provider to build walled gardens as its game theoretically akin to building on a Bitcoin private chain without having majority hash power. This entire decentralization and flattening of playing field is possible only because of real time economic incentivization via Bitcoin micro-transactions/payment channels. Without Bitcoin, we would not able to design communication networks beyond the unwieldy IMS (IP multimedia subsystem), which is fading away.

This new model will lower the economic moat for entrepreneurs to move fast with innovation and (not) break things! The era of married clients and services will end, even calender and contacts syncing across services which was once possible will be restored.

Compounding network effects

We looked at how in 'self managed' model the communication services ecosystem leverages the Bitcoin network, but there is a interesting positive feedback it returns to Bitcoin as well. Since Bitcoin & unified communications are both networks, there will be a phenomena of compounding network effects which should tremendously contribute to growth of both interlinked networks. In the coming year as mining reward halves and the network fees become a major source of revenue for miners having a robust distributed user-centric unified communication network is a win-win!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment