This week’s “Theory of Bitcoin” episode changes the format slightly: host Ryan X. Charles of Fabriik Smart Wallet (Money Button) and Bitcoin creator Dr. Craig S. Wright are joined by sCrypt founder Xiaohui Liu for some Q&A along with the usual discussion. Given the company, the main theme of the show is contracts, tokens, nLockTime… and games.
Potential developers looking for a project idea would be advised to watch this episode, as Dr. Wright and the group brainstorm several potential ideas and use cases that haven’t been tried (publicly) yet.
The writings of Satoshi Nakamoto with Satoshi Nakamoto. 8. Tokens, Games, Shadows, Masks, Contracts & sCrypt. With special guest Xiaohui Liu, founder of sCrypt.https://t.co/U2civCMTtX
Tokens: people need to get more creative
Dr. Wright begins by bemoaning the minor “token craze” that started on Bitcoin after services made it much easier for anyone to create their own. Tokens, he said, should be used to represent and track assets, rather than becoming assets themselves.
“They don’t really think through much more than tokens right at the moment, unfortunately. Tokens are just a way of tracking assets. Also can be used for other things that no-one’s really doing anything with, which would be access tokens, security tokens, things like that.”
The idea of making asset tokens to get rich quick is “complete BS,” he said, warning people away from attempts to do that.
Charles asks what would be better uses for tokens. Dr. Wright gives the example of access tokens (which could include anything from online services to train tickets) that can be returned/revoked after a time, using Bitcoin’s nLockTime—even after a couple of hours. The process can be automated or may require human action. This also leaves an auditable record of who had access, and when.
Dr. Wright also dislikes talk of terms like “Layer One” and “Layer Two” when describing tokens—at some stage, they all need to be encapsulated in transactions using the protocol. There are “layers within layers within layers” he says, and arguing over layer numbers is just using catchy buzzphrases to sound cool.
That said, he doesn’t like the idea of trying to cram data into Bitcoin’s OP_RETURN functions, calling it “a silly, silly way to do things.” Bitcoin Script is the way it should be done, and developers need to use this to build their own protocols to describe token functionality.
There’s a technical discussion on the types of logic tasks that can be performed to “match” Bitcoin addresses (public keys) to other data to automate what transactions can/can’t be completed, including checksums, XORs, RegEx—developers could even build whole Merkle (binary) trees of information, using Script to instruct the Bitcoin protocol what to do when certain text or hashed information is present.
Token protocols aren’t the only thing you can build in Script either, Charles points out. He suggests a state tracking protocol as one example. Dr. Wright then goes on to explain “shadowing”, or the concept of “hiding” certain information, and “cloaking” items within other items, “oblivious transfers,” shuffling algorithms—which could be very useful in building complex games and even stock allocation/trading systems, tendering, negotiations, and much more, all on Bitcoin.
“These are all different areas we should be looking at,” Dr. Wright says. He notes that both Liu and Charles “are very smart guys, but you don’t understand everything I’m talking about here.” (If you can, then Bitcoin is looking for you.)
The possibilities are limitless
In fact, virtually anything can be built on Bitcoin, including all other “cryptocurrencies,” social networks, voting systems… anything requiring enforceable rules, secured by Bitcoin’s proof of work and with auditable records on its global trusted ledger (or, the “master contract”).
He clarifies that systems can be built partly in Bitcoin and partly externally, with data from external systems interacting with Script to create Bitcoin transactions. There are some things Bitcoin Script does efficiently, and other things it doesn’t. These are decisions developers need to make.
Something like nLockTime could also be useful in auctions, where the winning bid at a certain point in time becomes the transaction broadcast to the network.
Even building the tools people will need to make more complex ideas a reality is something others need to build, Charles says.
Rather than explaining concepts from Bitcoin’s past, this episode looks more at its possible futures. For that reason, those looking for ideas could well find inspiration in this episode. Bitcoin’s full potential is only just starting to be explored. Those who “get it” and are able to expand on it have the opportunity to come up with the next multibillion-dollar company.