Solidity compiles to the Ethereum Virtual Machine (EVM) and the code is completely isolated, meaning that it does not communicate externally. If, for example, a person wanted to put sports scores into an EDCC, then that would require a trusted data feed, more commonly referred to as an oracle.
“It’s easy to write contracts. It’s hard to make sure they’re secure.”
A perfect sound bite from Jameson reflects the observation that securing EDCCs is significantly harder than writing them. This might be exemplified by the mess created by Bancor, which raised more than $100 million with roughly 40 lines of code.
Jameson disclosed a fun piece of trivia, saying that there are six high-level languages for Ethereum to date. These are Mutan, Serpent, LLL, Solidity, Bamboo, and Viper. Jameson was pleased by the emergence of contract standards like ERC20. During the presentation, he quickly demonstrated the creation and deployment of a very simple smart contract, which stored an unsigned integer. Jameson also noted that the blockchain read or constant function is a very useful ability, akin to reading a database for free.
Ultimately, Jameson said, the biggest problem for Solidity is that “it’s a young language,” but instead of complaining about the lack of familiar features, developers should help build solutions. Amid concerns of insecurity, Jameson is most excited about ZoKrates (pronounced: Zo-crates), a programming language that compiles to Ethereum zero-knowledge proofs.
Following Hudson Jameson was Dr. Christian Reitwiessner, who coyly admitted that programming language theory might be a little bit “dry.” Nonetheless, Reitwiessner made a major announcement – Solidity’s documentation is now available in Spanish! Russian, Chinese, and German translations would also go a long way toward expanding Ethereum’s development community.
Additionally, Reitwiessner explained that there is work being done to create dynamic return data. This is not fully functional yet, but he aims for this to be completed by the end of the year. Slides from Reitwiessner’s presentation are available here.
Everton Fraga and Victor Maia shared updates about Mist, which can be used to browse and use Dapps on the Ethereum network. They proudly announced that together, Mist and Ethereum Wallet have been downloaded 2.6 million times. Maia posed a fascinating question: “What would the web look like if it came after Ethereum?” Imagine, how ownership of user data or monetization schemes would be different.
In a way, it almost seems backwards – but perhaps that’s the nature of this movement towards decentralization. It will take time and dedication for this computing revolution to reach fruition. Maia also issued a warning to developers, saying “Never import JS code you didn’t read. It’s not safe.”
The Mist team explained that it had a security audit performed by a German software development company called Cure53. This audit uncovered 22 issues, some of which were critical, but were all resolved. Mist relies on a massive web stack, so complications at some level appear inevitable.
Introduction to zkSNARKs
I couldn’t help but laugh out loud when I walked into the breakout room to find nearly 200 people packed shoulder to shoulder. With flashing pink and green lights, the atmosphere seemed more like a rave than a development conference. Reitwiessner’s presentation on zkSNARKs garnered a tremendous amount of interest, though many developers have admitted that they’re still trying to wrap their heads around the topic.
However, it’s clear that the most significant thing about zkSNARKs is that they can assist with scalability.
Through cryptographic magic, it’s possible to verify that a piece of data exists – or is true – without actually revealing information about the material. Reitwiessner displayed a mini-Sudoku grid to illustrate how zkSNARKs function. Because of the properties of Sudoku, a person can shuffle the solution, so that verification is possible without giving away the actual solution. This method of taking an arbitrary problem and translating it allows for the “reduction” of interactions. By decreasing the number of rounds of interaction, verification is expedited.
Polynomial graphs, for example, allow a person to detect even the smallest changes. Rather than checking the entire graph or matrix, the graph is different at virtually every point, so it’s easier to observe and verify. I hesitate to provide further insight because I want to make sure that I give readers accurate information. For interested parties, Reitwiessner shared his slides via GitHub.
During lunch in the media room, a lady handed out temporary tattoos of Vitalik and Ethereum. Lots of writers happily pasted them to their bodies and I grabbed a few, too. No word on their immutability yet.
uPort is a “complete self-sovereign identity system built on Ethereum.” Product leads Michael Sena and Rouven Heck presented on “uPort – Usable Key Management for Multiple Identities Across Multiple Chains.” In a bold proclamation, Sena announced, “We’ve built Ethereum’s user platform.” The problem? With the abundance of chains, tokens, and applications, it’s impossible to work with just one ID on one chain. Today, users have multiple accounts on multiple chains (much the same way that folks have different login credentials for the multitude of social media, gaming, and entertainment platforms). Through the uPort application, Sena and Heck said, private keys can be securely managed for multiple identities.
If Reitwiessner’s zkSNARKs presentation merited a rave theme, then so did Sam Chadwick’s presentation entitled “Data in the Missing Link.” As the director of new content initiatives for Thomson Reuters, Chadwick is based in Zug, Switzerland, which has been crowned as “Crypto Valley.”
Chadwick explained that a few years ago, when he learned about Ethereum, he spoke with Vitalik Buterin – who coincidentally was living in Zug as well. Thomson Reuters describes itself as such: “We enable professionals in the financial and risk, legal, tax and accounting, and media markets to make the decisions that matter most, all powered by the world's most trusted news organization.”
Buterin, realizing the inheren t trust that is afforded to Reuters, told Chadwick that the multinational media and information firm needed to become an oracle for Ethereum. Interestingly, Thomson Reuters is headquartered in Toronto – another crypto coincidence, as that is where Vitalik attended high school.
The real question for Thomson Reuters, Chadwick explained was how to get involved. Markets are divided by value and volume. The “big tickets” include venture capital, private equity, OTC derivatives, and syndicated loans, so that’s where Thomson Reuters is getting started.
Through B1IQ (read: Block One IQ) Thomson Reuters is offering data feeds for EDCCs in beta that are compatible with Ethereum and Corda. Chadwick also highlighted PermID, which aspires to provide permanent identifiers, a crucial issue in the financial services and FinTech world. Tickers can change ownership (e.g., “C” now denotes Citigroup, but it used to be Chrysler), and that would be a massive problem for blockchain-based technology. Hopefully, through PermID, Thomson Reuters has surmounted that challenge.
It’s hard to believe that tomorrow’s the last day of the conference. There’s a wonderful happiness that I’ve felt walking around the convention center over the last few days. Hearing “blockchain this” and “crypto that,” I feel like I belong – and I think that’s something that a lot of developers and writers feel in this space. It’s rare to feel like you’re among people who are genuinely interested in making the world better. The projects that are being discussed are unequivocally revolutionary. Even if it’s unclear which exact projects will succeed and which will fail, what matters is that we’re all working together. Sharing, building, and decentralizing … and that’s special.