Posted on

Social Innovations and Secret Conversations (on the Blockchain)

New ways to communicate through coded conversations and secret languages are being implemented on blockchains.

There’s a novelty in finding new ways to communicate through coded conversations and secret languages. How is this being implemented for good — or otherwise — on blockchains?

Since its beginnings, blockchain technology has led to many movements, including the formation of a unique crypto community. This blockchain community is forming its own lexicon (including a more formal vocabulary that industry opinion-makers are creating and debating and Twitter-based crypto slang like hashtagging Lambos and Bitcoin whales.) 

There is also another language that has developed, the one in blockchain platforms themselves — developed through a “glitch” in the blockchain system — through a coded instruction that was meant for something else entirely. This is a conversation created through transaction signatures — the method of transfer — with coded messages built into the hash. 

What started this trend? In part, it came from necessity, the need to find an anonymous way to converse with each other — to complete a private transaction. It may also be rooted in psychology. “Groups of people form their own private lexicons because coded language is exclusive, exciting and defiant,” Gary Nunn wrote. An exclusive argot gives ownership, pride and a sense of being part of something greater than oneself.

Private interactions on blockchains

A coded language can be used for harmless activities such as in-jokes or conversations, but they are often developed by a person or people in need of a way to communicate as anonymously as possible. And so, it stands to reason that transaction signature conversations have been used for harmless fun between online friends and also for illicit activities between bad actors.

What are some of the ways that transaction signatures have been used for conversing, for better or for worse? Let’s start first with a description of how a conversation actually works using blockchain technology.

Signed on the dotted line, with a public and private key

A digital signature or transaction (TX) signature is the detail of an electronic document that is used to identify the person transmitting data on a blockchain. The signature acts as a transaction validation, linked to the public key of the entity involved. It’s a confirmation that the transaction has not been tampered with in any way — a trustless transaction. Here’s how it works:

How digital signatures work: signing the message with private key

How digital signatures work: verifying the message with public key

Coded conversations through a “glitch” in the tech

Users of the technology at some point or another realized that it’s possible to add a so-called “OP_Return output” to the transaction — an instruction coded into the Bitcoin blockchain by Bitcoin developers. This output would be nonspendable, the data attached to it, however, would remain on the blockchain forever. And so, coded conversations on the blockchain began.

Some believe that this is an irresponsible use of the technology, as the Bitcoin blockchain was created solely for financial transactions and not a record for arbitrary data. Either way, it has become a function used by transactors, whether it was initially intended as such or not.

Here are some of the more novel ways that the OP_Return output has been used so far:

Rick-rolling

One of the first OP_Return messages that gained notoriety was the use of the lyrics “Never Gonna Give You Up” by Rick Astley (following the theme of the well-known rick-roll meme) to play pranks on users. A hacker, for example, who demanded payment by blackmail was rick-rolled by a prankster who used the first few symbols of addresses to spell out the lyrics of the song and send only tiny amounts of Bitcoin. Each transaction made by the prankster was worth 0.001337 BTC, and was effectuated in homage to leet, a code of modified spelling using numbers in place of letters.

Rickrolling on the blockchain

Ethereum DApps

A relatively slow uptake in decentralized application (DApp) adoption might be due to users having to pay a transaction fee to complete an action — Mahesh Murthy of Zastrin noted the fee as a pain point in a blog post he wrote about a voting DApp he created. He mentions an idea by John Backus as a solution to this bottleneck using a similar function to OP_Return for Ethereum DApps through a private key.

Ethereum DApps

Eternity Wall

Eternity Wall, a service for writing short messages on blockchain, is mostly used for writing proverbs, jokes and love declarations, but it can also be used to reply to a message sent via the service, so conversations may be created. 

Eternity Wall

Ricardo Casatta, creator of Eternity Wall, has also promoted the potential political use case for such a tool as an uncensorable means of communication, having written in a post, now unavailable:

“If you live under a dictatorship, you could use it for saying something that your government would remove or block.” 

Eternity Wall

Blockchain riddles

An entertaining way of using OP_Return is to organize quizzes on a blockchain. The address 1HoTZGKwXY2HM8UBpiBKtBUd8otPpsJ5Pc has sent several riddles via OP_Return messages, for example.

Here’s what was sent by the address:

  1. Five riddles, one-word answers. Start at 1HKGame213Part2xxxxxxxxxxxxzQajrj
  2. What English word has three consecutive double letters?
  3. What disappears as soon as you say its name?
  4. Which word in the dictionary is always spelled incorrectly?
  5. You can hold it without using your hands or arms. What is it?
  6. What word becomes shorter when you add two letters to it?

And probably the answers lead you to some private key, since the last message was:

“PrivateKey=SHA256(tolower({2} {3} {4} {5} {6})). Transfer to prove solution.”

Blockchain riddles

The webpage Bitscribble was created as a simple interface that could be used to write messages on a blockchain via the OP_Return script. 

In January 2019, Parisian-based street artist Pascal Boyart created a mural with a hidden Bitcoin prize, announcing the treasure hunt on Twitter to participants eager to win the coveted reward. The stunt was a celebration of the 10th anniversary of the first mining of a Bitcoin block. If you’re wondering if it’s been solved yet, you can find out here.

Image with a hidden message

There has been everything from marriage proposals to cryptic clues to messages supposedly written by Satoshi encrypted on the Bitcoin blockchain.

If you’d like to learn how to write a blockchain message yourself, here’s a step-by-step guide.

Blockchain messaging used in elevated situations

The OP_Return script may be used to contact a person on the Bitcoin blockchain if you only know their Bitcoin address. There are some incidents in which this tool has proven very useful for transactors: For example, a person may be contacted if they received stolen funds for some reason or if someone accidentally sent them a transaction that needs to be returned.

When communicating with a hacker following a security incident in August 2016, Bitfinex offered the OP_Return instruction as a potential method for anonymous communication, should the hacker wish to get in touch with the exchange and find a compromise in return for a bug bounty.

Going back as far as 2014, the OP_Return script has often been used by spammers

Bitcoin Cash as a messaging service

Messaging on the Bitcoin Cash blockchain is not something done in secret anymore, either. Memopay, for example, is a service that offers its customers advertising opportunities on the Bitcoin Cash (BCH) blockchain. Bitcoin Cash has proven to be more popular for messaging services, likely due to lower blockchain transaction fees.

There is, in fact, a social network called Memo in which all networking actions are recorded to the BCH blockchain. Bitmain co-founder Jihan Wu has publicly tweeted that he has an account on Memo, inviting his Twitter followers to sign up for an account and get in touch with him.

CryptoGraffiti is a solution that allows anyone to easily decode and read arbitrary messages that have been saved to the blockchain. The tool detects transactions that contain either “human-readable text messages or files of known formats” and publishes it under a reader tab.

Social networking on a public, immutable ledger

With the advent of social media as a powerful communication and advertising tool, the conversation has inevitably — and regularly — returned to how a decentralized technology like blockchain can be harnessed to provide enhanced social networking opportunities. Realistically, though, until the user interface and user experience are at the level of major current social networks, the tech won’t appeal to those who already have easy-to-use messaging applications at hand.

Not only that, but the question of whether people want their private (or indeed public) conversations permanently imprinted on a ledger remains to be seen. Transparency is important, but people still want to feel a certain sense of privacy. 

That being said, the world is no longer a private forum, with public data becoming so available as users sign their rights away. Perhaps it’s not such a stretch to envision a decentralized, international social networking platform on a public and permanent ledger.

The article was co-written by Kyrylo Chykhradze and Pavel Mischchenko. 

Kyrylo Chykhradze is the Head of Product at Crystal Blockchain, Bitfury’s analytics tool for blockchain and cryptocurrencies. He joined Bitfury after having worked as an academic researcher for five years, where his areas of focus were graph theory and real-world network analysis. Along with being deeply involved in forming the global product strategy for Crystal Blockchain, Kyrylo is also leading its internal forensic investigation department.

 

Pavel Mishchenko  is the Head of R&D at Crystal Blockchain. He joined Bitfury in 2015 after obtaining a master’s degree in Advanced Mathematics at the Ecole Normale Supérieure de Lyon. His primary areas of interest are statistics, data analysis, and probability theory. Pavel actively participates in mathematics competitions and has been awarded gold medals at the International Mathematical Olympiad. Pavel is the Research & Development Lead at Crystal, and is also heavily involved in the development of algorithms for efficient cryptocurrencies data analysis.

The views and opinions expressed here are solely those of the authors and do not necessarily reflect the views of Cointelegraph.

Posted on

'Programming Blockchain' Will Change How You See Bitcoin

Ariel Deschapell is a full-stack web developer, author, and cryptocurrency veteran.


“All models are wrong, some are useful.”

This phrase was coined by the statistician George E. P. Box to describe probabilistic models, but it also perfectly encapsulates all the mental models we use to make sense of the world around us.

Human time and attention are scarce, and the universe is extraordinarily complex. As a result, we are forced to operate under imperfect mental models, also known in psychology as “heuristics.” Regardless of our level of understanding of any given subject, these models and ideas are necessarily erroneous or incomplete. The deeper one dives into any one subject, the more obvious George Box’s aphorism becomes.

Perhaps nowhere is this more readily evident than programming, where one of the most foundational principles is that of abstraction. To the visitor of a website, no knowledge of code is required to click links and input information, just as one doesn’t need to understand combustion engines to drive a car. We might have an approximate mental model of how they work but not an accurate one.

Similarly, web developers themselves need not understand the intimate workings of TCP/IP and the other core protocols on which the internet is built in order to build applications on them. We regularly use and incorporate software written by others in our own applications without ever knowing how they actually work. Software development, and technological advancement more generally, can thus be thought of as building on top of a series of these nested “black boxes,” with each box containing an even more abstracted-away mystery.

To those who haven’t invested the time to truly master the innerworkings of a particular technology, it might as well work by magic. The deeper you dive, however, the more the magic falls away.

This is what Jimmy Song did for me and the various other students of his workshop, Programming Blockchain: strip away the magic.

Crypto globetrotter

As a contributor to the Bitcoin Core repository and former vice president of engineering for the early bitcoin wallet software Armory, Jimmy Song is well known in the cryptocurrency space.

Through his regular written and video content, he’s established himself as a vocal figure in crypto, one who is passionate about improving bitcoin.

He also isn’t shy about sharing his opinions on what’s needed to do that:

“Training more developers is the biggest bottleneck in the ecosystem.”

Enter Programming Blockchain, Song’s flagship effort to give interested developers a deep crash course into the fundamentals of how the magic behind bitcoin and the blockchain actually work. Finite fields, elliptic curve cryptography, transaction parsing and validating proof of work are just some of the topics covered.

“It’s like a water hose of information for two straight days,” explained Song.

As a web developer fascinated with the wider implications of cryptocurrency for the last several years, I couldn’t resist.

Since blockchain is a global technology and phenomenon, it’s fitting that such an ambitious endeavor to demystify it is itself global in scope. The locations for Programming Blockchain vary widely, having been held and scheduled for areas as disparate as China, California, North Carolina and Israel.

“If the idea is to make more developers, I want to do this in as many jurisdictions as possible.” explained Song. “By doing this in different areas of the world, I am hoping developers in different areas of the world create more things. Having more businesses start in different jurisdictions reduces risk for bitcoin.”

The latest iteration of the workshop took place in Tampa, Florida. While not the most internationally recognized city, Tampa is home to a vibrant cryptocurrency community and the newly opened BlockSpaces, a co-working space dedicated to blockchain projects which played host to Programming Blockchain.

Choosing Tampa as a location paid off. This latest iteration of Song’s in-person instruction was his largest yet with 30 students. While some of these developers naturally hailed from the Sunshine State like myself, others had flown in from various locations including Washington D.C., California, and Brazil.

Demystifying blockchain

Blockchain is the hottest buzzword in tech, one that’s being thrown at everything. Surveying the ICO and blockchain landscape, you can find a project or startup for every use case from health data to banana tracking. No matter your problem, blockchain is the solution to your ills.

But what actually is it, how does it work, and what makes it so special?

It’s common to hear that blockchain is “the technology behind bitcoin,” a distributed and tamper-proof database which could be leveraged in many other applications. It’s also common to hear that like AOL or MySpace, bitcoin could quickly be overtaken by competitors who better leverage this technology.

But blockchain is so new and inherently different that all analogies aimed at simplifying it or the crypto ecosystem quickly fall apart in their usefulness.

Blockchain’s uniqueness makes it exceptionally difficult to understand because try as we might, we possess no preexisting conceptual pigeonhole to fit it into. By extension, it is exceptionally easy and tempting to project upon it a panacea for every problem without any clear idea of how it will help.

We take descriptions of the blockchain’s emergent properties such as “immutability” and “decentralization,” and often seem to conclude these are magical passive properties of blockchain which can be dragged and dropped onto any application. But there is no such thing as magic, and even the most seemingly benign assumptions made when thinking about cryptocurrencies and blockchain can be surprisingly off.

Take even the very concept of a bitcoin, which is itself nothing more than an abstraction. The bitcoin protocol tracks units of value only in satoshis, not in bitcoins. What many know as the “smallest” unit is actually the only unit in the protocol.

It was simply an arbitrary decision on the part of Satoshi to make a “bitcoin” equivalent to 100 million of these units, which subsequently became standard notation for all wallet software built on top of the protocol. But even the concept of some kind of “coin” or “token” itself is a total abstraction. The structure of bitcoin transactions has a surprising detail brought to our attention by Song that showed this to be the case.

When it comes to monetary transfers one thinks of X unit of value being sent to the address or account of a recipient. In a raw bitcoin transaction, however, nowhere is the amount of satoshis being “transferred” specified. There is simply a reference to the unspent transaction output, or UTXO, with which the transaction is being funded. A UTXO can be thought of as debit entry on the blockchain ledger. The total amount of bitcoin displayed on a wallet is the aggregate of all the UTXO it controls rather than a single account which holds funds.

Additionally, if the value represented by a single UTXO is less than that which a user attempts to spend, multiple UTXOs must be included in the transaction to provide the liquidity. However, a UTXO must also be spent completely, meaning that by spending an amount smaller than that represented by a single UTXO, your wallet software must actually generate a “change” address to send itself the difference.

As Jimmy Song demonstrated to us, there are no tokens being sent back and forth, even digitally. Rather it’s a conceptual metaphor. All there is is simply a quirky accounting ledger, the particulars of which are of course abstracted away completely by basic wallet software.

“Once you understand these raw transactions, it’s like reading the Matrix,” Jimmy said.

The pitfalls of abstraction

Many abstractions, like easily understood currency denominations, are obviously useful. They are necessary for operating in a vastly complex world, yet they can still introduce intellectual pitfalls.

Take unit bias, which is when a cryptocurrency seems like a better buy relative to a more “expensive” coin, despite the fact that the unit price of a coin is irrelevant in this context.

If two cryptocurrencies possess the exact same market cap, but their supply and denomination is such that you are capable of purchasing a “whole” cryptocurrency A over a “fraction” of cryptocurrency B, we are predisposed to own a whole of something rather than a part. Yet the denominations of these cryptocurrencies are, necessarily, totally arbitrary.

Unit bias is a fairly benign mental error. When it comes to simplifying details for the sake of explanation, however, other pitfalls can be much more dangerous.

For example, bitcoin’s so-called “immutability” isn’t the result of some special line of code which can simply be copied and pasted into any application. It is the result of the ongoing interplay of incredibly intricate mathematics and economic incentives. The structure of the blockchain is rooted in a type of computation known as hashing. It is easy for a computer to verify if the answer to a hash is correct but difficult for it to find the answer itself from scratch, though far from impossible.

Miners, however, create a hashing arms race, where reproducing their total and ongoing sum of computations in order to make changes to the blockchain is exceedingly expensive, rendering it all but impractical the more that time passes. This is only possible because the miners have a powerful profit motive: the reward of bitcoins themselves.

Thus it’s not even accurate to think of the bitcoin blockchain as perfectly immutable. It most certainly could be tampered with, under certain conditions like 51% attacks. But neither is it possible for any blockchain to promise even practical immutability without a native and valued token with which to reward those who secure it.

“Bitcoin is the technology that powers blockchain, not the other way around,” summarized fellow student Nick Baldwin.

A sense of perspective

The more deeply you delve into blockchain, the more the magic falls away. You realize that like all things, there are no true mysteries. Only that which we haven’t taken sufficient time to understand.

As our simplistic and flawed models are replaced by more sophisticated ones, there are interesting ramifications. You may think your sense of wonder fades along with the magic. Sometimes it does. You become acutely aware of how little you actually know and how much there is left to solve and build. A sense of disillusionment can be the natural reaction.

But by pressing on you earn something much more valuable than naive wonder: a sense of perspective. The work left to do is immense, but the work that has already been done by those who have come before us is just as terrifyingly intimidating.

It stands testament to the fact that we already stand on the shoulders of giants, and all the challenges ahead of us can be conquered, just as those before us were.

With this knowledge and shift in perspective comes a sense of focus. All we can do is solve the next problem. Take the next step. All else is noise.

As Song imparted to us as our impactful workshop came to an end:

“Wisdom is cutting things out of your life, not adding more to it”.

Astrological image via Shutterstock

The leader in blockchain news, CoinDesk is a media outlet that strives for the highest journalistic standards and abides by a strict set of editorial policies. CoinDesk is an independent operating subsidiary of Digital Currency Group, which invests in cryptocurrencies and blockchain startups.