playlists / Devcon 4
Devcon 4 brought Ethereum's ecosystem and family back to Europe with a 2018 event at the Prague Convention Center in the Czech Republic (Czechia). With 3,000 strong in attendance, Devcon was filled with talks, experiences, teams from a matured application ecosystem, and more enterprise support than ever before.
A Conversation with Stewart Brand
A Panel discussion with Stewart Brand, a pioneer in creating the Personal Computer, featuring Wendell Davis and Althea Allen. Stewart gives a brief history of his life and work spent "hacking civilization," and discusses a variety of topics including: The progress in the "hacking" ecosystem; The role of institutions in decentralization; The overlap of blockchain & climate change; Aging within a movement. A Q&A session follows the Panel.
Stewart Brand
A Killer Ecosystem
Joe Lubin speaks about the progress of the Ethereum ecosystem and recent projects that have been developed in just the last few years.
Joseph Lubin
Applying Trusted Compute to Ethereum
Explore the role of trusted computation in blockchain and decentralized computing for improving scalability, privacy and security. The breakout will begin with a number of short perspectives on how trusted computation can and should integrate with Ethereum, before shifting to a conversation of what is needed from trusted computation going forward from perspective of decentralization. Participants are members of Enterprise Ethereum Alliance that are working on applying trusted computation to Ethereum broadly. A common implementation of trusted computation is a Trusted Execution Environment (TEE) which is a secure area of a main processor. Code and data loaded inside the secure area, commonly known as secure enclave, is protected with respect to integrity and confidentiality. Intel SGX, TrustZone, Keystone etc. are examples of such TEEs. 10 companies are committed to support this breakout session.
Sanjay Bakshi, Marley Gray, Guy Zyskind, Nicolas Bacca, Lei Zhang, Sebastian Gajek, Andreas Freund, Noah Johnson, John Whelan, Joanna Rutkowska
AxLang: Compiling Scala to EVM Bytecode for Secure and Reliable Ethereum Smart Contracts
We present AxLang Backend: a compiler framework for verifiable Ethereum smart contracts, and Axoni’s first step toward releasing an open source full-stack Scala compiler for the Ethereum Virtual Machine (EVM). AxLang Backend significantly improves the ability to optimize, analyze, and verify/audit smart contracts through a standard intermediate representation (IR), a compiler norm that hasn’t previously been used by EVM compilers. Additionally, AxLang Backend can be used by other compilers to target the EVM in a more efficient manner. AxLang Backend consists of four main features: a clean, minimal intermediate language (IL) that serves as an effective compiler target as well as a human readable/writable languagea standard three-address code IR that is convertible to a static single assignment (SSA) form, as is common in widely-used general purpose compiler frameworksa retargetable code-generation module that converts IR into the desired executable codea decompiler that constructs the above IR from Ethereum bytecode produced by other compilers like Solidity. Axoni is developing AxLang because the ability to write verifiable smart contracts is critical to our clients' broad adoption of this technology. AxLang Backend is the underlying structure that makes it possible for AxLang and other high-level languages to efficiently target the EVM.
Athanasios (Thanasis) Konstantinidis
Ackee - Mobile Development Studio
We present our dev kit that has been funded by the Ethereum Foundation. With the devkit iOS developers can easily use Ethereum smart contracts in their applications. This will be the official introduction of the dev kit.
Josef Gattermayer
B-U-I-D-L Song
Jonathan Mann's famous B-U-I-D-L song!
Jonathan Mann
Blockchain Autopsies - Analyzing selfdestructs
On the blockchain, contracts may be lost but are never forgotten. Of the over 1,800,000 Ethereum smart contracts ever created, more than 54,000 are empty. When a contract’s purpose is fulfilled, the owner typically triggers a self-destruct switch that removes code and state. These steps are similar to what an attacker would do after hijacking a contract. Is it likely the selfdestruct was intentional or performed by a trusted third party? Or was it a hack or fraud? Old contracts have been purged from the world computer’s working memory but they can be reconstructed and analyzed. By investigating the transactions leading up to the selfdestruct, the circumstances of contract deaths can be determined.
Jay Little
BlockScout - The Ethereum Explorer
Etherscan is a block explorer used and loved by many of us. One of the core features of Ethereum is the ability to verify, view, and interact with smart contracts through Etherscan. The problem is that this functionality is mostly closed source and end users have to trust a single entity that this information is valid.With the help of EthPrize (http://ethprize.io/) and the Ethereum Foundation, POA Network has been building an Open Source EVM block explorer to solve this issue. Our v1 release will take place very and soon and we would love the opportunity to show developers and the Ethereum community that there is another option other than Etherscan. Along with the standard blocks, transactions, internal transactions, tokens, and logs, our v1 release will include contract verification, contract read and write functionality, and exportable smart contracts for further verification from developers. Our plan is to support Ethereum, Kovan, Rinkeby, Ropsten, POA Network, and Sokol testnet in our first release. We've had the great opportunity to work with many developers in the space to build an open and accessible block explorer for the Ethereum community. Here is more info on the project: https://github.com/poanetwork/poa-explorer
Andrew Cravenho
Bridging the ÐApp: contracts talking across chains
"A year ago Parity Tech published an initial PoC of Parity Bridge, a federated system that can connect any two EVM-based networks. In this talk, we'll give an overview on the progress we've made and present our new release. Today many Ethereum dapp teams have 'working' products but neither can they launch their product due to mainnet's limitations (congestion/high tx-fees) nor can they improve their products since today’s non-value-bearing testnets don't cater to realistic testing environments. At the same time, strongly sought-after scaling solutions (such as Shasper) are either far out or not applicable to current generation dapps. Some of the points that will be covered in this talk are: - Arbitrary message passing Bridge - interfaces, extensions, deployment and usage - How can bridged sidechains mitigate current scaling issues of the Ethereum mainnet? - How can they extend capabilities and be used to test potential, future mainnet functionality? - What are important security considerations? (i.e. trust model, integration with different consensus engines & validator sets) - Which tooling is needed and what's available today?"
Björn Wagner
BUIDL a Mesh Network of Human Beings
As the Ethereum community doubles down their focus on creating usable dApps, its important to remember that we're designing for 3 dimensional humans. How do these humans organize, and how will their organizations be different from the hierarchical organizations of yesteryear? What are best practices for organizing groups of humans in a peer to peer way.In this devcon4 lightning talk, Gitcoin Founder Kevin Owocki will talk about best practices for creating intrinsic motivation that creates collective action in p2p networks of human beings
Kevin Owocki, Vivek Singh
Build and Operate Internet-Scale Ethereum dApps on Celer Network
Current Ethereum dApps have low throughput because each operation needs to be processed by the vast majority of nodes to reach on-chain consensus. Off-chain scaling techniques such as state channel are able to support truly scale-out dApps with better privacy and no compromise on the trust-free guarantee. Despite its high potentials, off-chain scaling is still in its infancy with challenges remaining unsolved. For example, how to construct state channels that support arbitrary state transitions with minimal on-chain operations? How to route payments to achieve high throughput in an off-chain network that is fundamentally different from data networks? How to help developers to easily build and operate scalable off-chain dApps? How to guarantee that off-chain states are always available for possible disputes? In this talk, we will describe how Celer Network meets these challenges. Celer embraces a layered architecture with clean abstractions that enable rapid evolution of each individual component, including generalized state channels that supports fast and generic off-chain state transitions; a provably optimal payment routing algorithm that achieves orders of magnitude higher throughput compared to state-of-the-art solutions; a powerful development framework and runtime for off-chain dApps; and an incentive-aligned mechanism that provides stable liquidity and high off-chain state availability.
Mo Dong, Junda Liu, Xiaozhou Li, Qingkai Liang
Building a state channel application
State channels are a great tool for building high-performance, low-cost dapps today. By moving some of your dapp behaviour off-chain you can save transaction fees and confirmation times, while continuing to bootstrap security and trustlessness from the underlying blockchain. In order to understand how an application can benefit from state channels, it’s important to understand the mechanics behind them. The good news is that once you’ve managed to model part of your application as a state channel interaction, there are already tools available to help make the switch.In this interactive workshop, we will dig into an existing state channel application. We’ll cover the fundamentals of state channels, as well as the main design decisions behind modeling the interactions and architecting the application. You’ll test your understanding by completing key sections of the code, leaving the session with a functioning state channel application, built with react on top of the force-move games framework!
Tom Close
Browser 3.0 - How to Build Secure Web3 Clients
The Internet and Ethereum share many parallels. We can learn from the history of the Web and its "browser wars" and will see that "time to market" plays an important role for the positioning and adoption of network clients. The Chrome browser defines for most people how they use services and experience the Internet and a new generation of clients will eventually do the same for the Ethereum network. Applications such as Mist or Brave use popular frameworks like Electron to accelerate the development of browser(-like) applications without giving up platform ownership as it is the case for plugins such as Metamask. However, Electron has some serious security issues that should be considered and which are discussed together with their alternatives.
Philipp Langhans
Building Augur - Lessons Learned
Scott Bigelow discusses the experience building Augur, and the lessons they've learned.
Scott Bigelow
Building Cross Ecosystem Communities: A Playbook
Describing the playbook used to identify and then encourage cross project collaboration to solve problems affecting all projects in the ETH ecosystem. Drawing on lessons learned from ETHPrize, ETHSecurity, Web 3.0 Design, the Open Source Block Explorer Group and the Community of Communities (learning resource for Community Managers) --- a brief history around how these groups were built (each has become a cornerstone in the community for it's topic), the tactics and tools used to manage them, and how to set goals and get results. The format would be a talk around what these communities are reviewing the above and then an open workshop to come up with creative ideas for future useful communities and how to build them. The goal is to facilitate new community ideas where grouping stakeholders could be super valuable and come up with creative ways to either grow the existing community base or start new ones. I would like to split into small groups where people could come up with Community Ideas and then present them live to the group with feedback from a panel of community experts. There aren't many resources for building communities and even fewer talks and workshops on this topic.
Robbie Bent
Building self-sustaining ecosystems through governance
At 0x, we would like to move towards progressive decentralization of network ownership and control. As a first step, we will launch a community-managed developer grant program that is intended to provide funding for public interest projects that advance the community’s collective interest and that drive platform growth. To take this one step further, we are developing a roadmap for transferring control of grant distribution and custody of grant funds to an on-chain decentralized governance system administered by the ZRX token holders themselves. The grant program will provide us with a unique opportunity to observe on-chain governance and community social dynamics when the financial stakes are real and no centralized authorities can interfere with the community's decisions.
Will Warren, Peter Zeitz
CBC Casper Design Philosophy
Consensus protocols are used by nodes to make consistent decisions in a distributed network. However, consensus protocols for public blockchains should satisfy other requirements, by virtue of the protocol being open. For example, they need to be incentivized, in that people will be incentivized to run consensus forming nodes in the first place, and in that following the protocol should be an equilibrium for consensus forming nodes.The CBC Casper family of consensus protocols has been designed to fit design criteria necessary for secure public blockchains. In this talk, we will explore the design goals and methodology used in CBC Casper research: economically motivated properties of the consensus protocol, the correct-by-construction approach to protocol specification, and the resulting rapid iteration.
Vlad Zamfir
Closing and Tweet Song
Jonathan Mann's closing of Devcon 4 and the Tweet song!
Jonathan Mann
Contributing to Ethereum and Open-Source
The Ethereum community is an open source community. We rely on implementations of an open protocol, open tools built to interface with these implementations, and ultimately open source dApps and contracts that live on top. Without a healthy ecosystem of open source developers, Ethereum is nothing. That said, contributing to open source can sometimes feel intimidating, and it's not always clear how to get started. Fortunately, it is actually easy in the Ethereum community! Everything is growing and changing so much. There is so much to do and to build, and there are a ton of great ways to get started. This talk will help demystify contributing to Ethereum and open-source in general.
Danny Ryan
Cryptoeconomics at Scale
The next wave of internet applications will not only compete on functionality, but also incentives. With cryptoeconomic research we are witnessing the beginnings of incentive analysis being applied to the architecture of internet protocols. As this body of research grows, common methodologies are beginning to emerge. These methodologies are also beginning to be composed to produce even more sophisticated and scalable protocols. This talk provides an overview of these cryptoeconomic methodologies and calls for help in the quest to build a fairer web.
Karl Floersch
Current State of Security
Matthew Di Ferrante, Martin Swende, J. Maurelian, Dan Guido, Phil Daian, and Kevin Seagraves have a conversation on the Current State of Security in Ethereum.
Matthew Di Ferrante, Martin Swende, J. Maurelian, Dan Guido, Phil Daian, Kevin Seagraves
Dark Crystal Secure Scuttlebutt
Peg talks about the Dark Crystal project.
Peg
Decentralization Against Isolation
We propose a design for philanthropic or publicly-funded seeding to allow (near) optimal provision of a decentralized, self-organizing ecosystem of public goods. The concept extends ideas from Quadratic Voting to a funding mechanism for endogenous community formation. Individuals make public goods contributions to projects of value to them. The amount received by the project is (proportional to) twice the square of the sum of the square roots of contributions received. Under the “standard model” this yields first best public goods provision and some modest modifications can make it fairly robust against collusive or altruistic deviations from that model. We discuss applications to campaign finance, development ecosystems, news media finance and, more broadly, implications for the liberal-communitarian debate.
E. Glen Weyl
DApp UX Design Awards
Enter, the DApp UX Design Awards! The DApp UX Design Awards recognizes the talent and effort of the most ingenious DApps from developers and designers; voted by the community, for the community. DApps Awards fall into the following categories: 1) On-boarding 2) Key Management 3) Login 4) Transaction Experience 5) Visual Identity 6) Overall UX
Amy Jung
Decentralization and its Discontents
There is building movement to decentralize the web (or re-decentralize the web), and Ethereum plays a particularly significant role. Communities that engage with these technologies often frame decentralization as a moral good in and of itself - but to what extent has this claim been validated? We'll consider examples where censorship resistant networks are used to host content that is morally repugnant to their maintainers, at times when centralized networks are cracking down (stormfront.eth vs blacklisting by dns providers), cases where there is disagreement about what constitutes decentralization at all (POW vs DPoS), and seeming technical challenges that block decentralization (scalability and performance). The concept of decentralization appears, at least on the surface, to be the enemy of specialization - but yet the networks we hope to build are the product of specialized knowledge. Can we decentralize the building of decentralized networks themselves? Ultimately, I hope to make the point that decentralization without governance has few, if any, inherent moral qualities, and that we must consistently and intentionally consider not only how, but why and for whom, we decentralize.
Sarah Friend
Decentralize, Democratize, or Die
Cory Doctorow from the Electronic Frontier Foundation discusses the "crypto wars" & where we go from here.
Cory Doctorow
Decentralized development: what even does it mean and should we care? (yes!)
Amber Baldet and Patrick Nielsen discuss decentralized development.
Amber Baldet, Patrick Nielsen
Decentralized Identity & Reputation
Since leaving Truebit, I have been focused on the problem of decentralized identity and reputation. This is an important missing primitive that enables some of the most exciting blockchain use-cases: governance (e.g. quadratic voting), airdrops, unsecured unchain lending, and security tokens. Reputation enables protocols to utilize iterated games instead of one-off games; and identity enables much better UX for usage of dapps. I would like to give a 20 minute presentation on our research into identity and reputation. I will begin by demonstrating the importance of reputation in the pseudonymous decentralized context, present the possible architectures under consideration (1) based on trust graphs and PageRank, 2) based on social collateral, and 3) based on attestations made by anchors, and finally discuss open problems in order to engage the attendees on this topic going forward. Our recent breakout session in San Francisco (with engineers from Metamask, Dharma, Protocol Labs, and Google Brain) demonstrates some of our latest thinking on this topic! – https://twitter.com/sinahab/status/1027639769910525952
Sina Habibian
Decentralized Oracles: Reliably Triggering Smart Contracts using Decentralized Computation and TEEs
We’ll define and examine what makes a secure oracle mechanism reliable enough to be used by smart contracts for external data delivery, off-chain payment execution, and provable off-chain computation. We’ll go over the security risks and failure scenarios to be avoided based on various smart contract’s reliance on an oracle mechanism as their trigger and/or payment mechanism; closely examining the methods that developers should keep in mind for minimizing the most common failure scenarios. We’ll look in depth at how decentralization can help make oracle mechanisms more secure through the use of a decentralized oracle network, while also presenting a defense in-depth approach that applies additional layers of security through the use of Trusted Execution Environments, and cutting edge approaches like TownCrier.
Sergey Nazarov
Defeating front-runners with Submarine Sends
Front-running is a fundamental problem in blockchain-based markets in which miners reorder, censor, and/or insert their own (or the highest gas bidder's) transactions to directly profit from markets running on blockchain economic mechanisms. Submarine Sends (first introduced here: http://hackingdistributed.com/2017/08/28/submarine-sends/) are a powerful general-purpose mechanism to prevent front-running on Ethereum by hiding the very existence of a transaction until it is no longer front-runnable. Unfortunately, so far no practical (in terms of gas) Submarine Send constructions were known. In this talk, I will introduce: a freshly discovered, practical Submarine Send construction that works on the Ethereum mainnet today.LibSubmarine, an open source project implementing it.
Lorenz Breidenbach, Tyler Kell
Devcon4 Track Overviews
Various speakers present Devcon 4's Tracks and what each will include.
Jonathan Mann, Hsiao-Wei Wang, Hudson Jameson, Bryant Eisenbach, Piper Merriam, Sarah Mills, Rhys Lindmark, Josef Jelacic
devp2p development update
This talk presents 2018's developments in devp2p, the communication system underpinning the Ethereum main network. I will speak about the state of the network and implementation progress on the ideas presented in last year's devp2p talk.
Felix Lange
Efficient and cryptoeconomically driven DKG as a smart contract
In the absence of a trusted party, Distributed Key Generation (DKG) protocols are essential for the initial setup of any type of threshold cryptosystem. The protocol results with each of the participants holding a valid key share. We use Ethereum as a decentralized trusted platform to run a DKG protocol for BLS signatures. We use precompiled contracts that were initially designed for fast (within the block gas limit) zkSNARKs verification to overcome the computational complexity of the protocol. We rely on a previously proven DKG protocol, but our version is specifically designed to be implemented as a smart contract over Ethereum. We prove the security of our DKG protocol in the random oracle model and other common cryptographic assumptions. To conclude the system, we give an efficient smart contract for signature verification. Our smart contract consumes reasonable gas and scales nicely (in terms of the number of participants). Only a dispute between two of the participants will invoke elliptic curve arithmetics or paring computations. Ethereum is used for three reasons: As a medium for (synchronous) communication, as a mediating authority in case of conflicts, and as a cryptoeconomic incentivization layer over the plain DKG protocol.
David Yakira, Ido Grayevsky, Avi Asayag, Ido Zilberberg
Enigma: Privacy-preserving Smart Contracts for Ethereum
Enigma is a privacy protocol to enable privacy preserving smart contracts on Ethereum. Enigma utilizes secret contracts - smart contracts that let you use private and sensitive data in decentralized applications. Enigma is building a network for privacy preserving computations. Nodes in the Enigma network that execute secret contracts never see the data that is used in their computations. In this talk, we would like to give an overview of the first version of Enigma network, which is currently on testnet, and present the roadmap with specific focus on privacy preserving cryptographic methods including Multiparty Computation (MPC) and Zero Knowledge Proofs. Computing over private data is considered one of the “holy grails” of computer science. With secret contracts, Enigma focuses on building blocks for the Ethereum network, such as voting / governance and auctions, in the short term. Longer term, Enigma enables applications on Ethereum that work with sensitive user data to compete with centralized solutions such as Uber. Enigma can also harden the privacy and resiliency of popular solutions like on-chain voting and sealed-bid auctions. Without privacy, applications and users must turn to centralized solutions or accept severe trade-offs.
Guy Zyskind, Isan Rivkin
ENS Ethereum Name Service On-boarding Booth
The Ethereum Name Service is one of the key projects that aim at simplifying the use of Ethereum by converting long and complicated hashes (user addresses, contract address, IPFS url etc) into simple memorable short names. Instead of writing 0x123...ABC the users can simply write “me.somedomain.eth”. Although the result is simple, it requires some complicated interactions to register a domain and assign it to the user’s desired address. The aim of the on-boarding booth is to help as many people as possible to start using these names right away guiding them through the process of: - Registering a subdomain (free or paying) which is an instant process - Pointing it to their address - Set the reverse address so that Dapps can show their name instead of the address - Eventually explain and guide them through the initial phases of registering a full .eth domain that requires to go through the 5 day Vickrey auction process that is the most confusing step for every user
Beltran Berrocal, Makato Inoue
Enuma
Antoine Cote & Philippe Camacho from Enuma present their progress after receiving a Grant.
Antoine Cote, Philippe Camacho
ERC1066: Better UX & DX in Just One Byte
This talk discusses ERC1066: a common set of Ethereum status codes ("ESC") in the same vein as signals, tagged tuples, and HTTP status codes. They provide an opt-in way of enriching payloads with a finite set of shared metadata. ESCs improve smart contract autonomy, UX, and DX, with clear application for localization, wallet integration, and contract interoperability. Code layout, Solidity and JS helper libraries, and tooling are all designed with developer experience in mind. While much broader than errors, ESCs are fully compatible with revert-with-message, with the added bonus of being localized for the end user. Come see the difference a byte makes!
Brooklyn Zelenka
Ethereum 2.0 implementation updates 4Q2018/Prysmatic Labs: Implementing Ethereum 2.0 Today
The sharding implementation updates 4Q2018, mainly on Python side. // Sharding and layer-1 scalability are perhaps the most important, forward-thinking changes that Ethereum 2.0 will implement. Ever since the inception of the Sharding FAQ by Vitalik, both the foundation’s research team and the community have actively engaged in bringing ideas together into a solid specification and road ahead for the future of Ethereum. This task will focus around the ins-and-outs of building the high-level Ethereum 2.0’s Casper & Sharding spec into granular code by one of the main sharding implementation teams, Prysmatic Labs. We will analyze caveats we ran into when designing Ethereum 2.0 while the research is still in flux. Ethereum 2.0 encompasses a lot more than software upgrades, as it gives developers the opportunity to pave a path with better design capabilities, a better open source contribution ecosystem through documentations, and a more modular, pluggable set of tools built to last the test of time. We assembled organically as a team to build this out, and we aim to give back to the community from what we have learned so far in terms of building on a volatile research spes, attracting open source talent, mitigating technical debt, and why transparency and public work are important.
Hsiao-Wei Wang, Raul Jordan
Ethereum 2.0 randomness
Justin Drake talks about the randomness behind Ethereum 2.0 using a Verifiable Delay Function.
Justin Drake
Ethereum for all : develop mobile apps using MIT AppInventor
Imagine a world where programming Ethereum on mobile is made easy, fun and accessible to anyone. AppInventor aims to make coding accessible to all by providing a graphical API to develop Android applications through high level components usually referred to by “blocks” (by Blockly). It comes from Google, then MIT, and is open source. The strength of AppInventor lies in its simplicity and ergonomics : kids can learn to build an app in a few hours, and business professionals can as easily construct a proof-of-concept of their ideas. Ethereum and public blockchains in general must be accessible to anyone, we are now making blockchain programming accessible to anyone with an AppInventor extension: Qaxh.Eth. With basic blocks such as connecting to Infura, "getBalance", “signTX”, "sendTx" or "getTxStatus" anyone can now create his own app to interact with Ethereum. I will show how I have added extensions based on web3j in order to create blocks for accessing the blockchain. The lightning talk will quickly present the technology, a workshop whose agenda is on another submission will have participants make their own mobile app and create more appinventor blocks, either borrowing functionality from web3j or fully making their own.
Jose Luu
Ethereum Foundation Values
Aya Miyaguchi, Executive Director of the Ethereum Foundation, discusses the values, philosophy, structure & purpose of the EF, as well as her history & thoughts on decentralization, and urges us to remember why we continue to build Ethereum.
Aya Miyaguchi
Ethereum Governance: Showcase and Tools
Governance is hard, especially in a blockchain community. This breakout session aims to educate participants on the history, major groups, and interactive tools around Ethereum governance. We will have representation from major governance bodies such as the Fellowship of Ethereum Magicians, EIP editors, and core developers. The activities in the breakout session will include short presentations from each governance group, a Q&A session, and demos of software and tools used in the governance process, such as exciting new voting/signaling tools.
Hudson Jameson
Ethereum Mist - Progress and Challenges Ahead
In this talk, the Mist team shows the year in recap, with milestones and interesting challenges ahead.
Everton Fraga, Alex Van de Sande, Marc Garreau, Philipp Langhans, Ryan Ghods
Ethereum on Android - Chances and Challenges
In this presentation I want to talk about challenges and chances for Ethereum on the Android platform. This platform can enable access to a huge amount of users and open up a lot of use-cases. It can also help us improve security - e.g. by using old phones as offline signing devices, leveraging the app-sandboxing or really split application from wallet with UX patterns users are familiar with from online banking. But all these chances come with challenges. Light clients and their incentivisation layer here I will be a big topic here. I will try to address the challenges and point out possible solutions. This talk will also contain a small assessment of the current state of the art. Comparing several solutions and approaches. Not only of existing applications - but also standards in this area.
Marcus Ligi
EthereumJS - Our Roadmap for 2019
In this talk we will give an introduction to the EthereumJS ecosystem and the various libraries we are maintaining and provide an outlook on future developments. We will tell you about the state of our virtual machine implementation and plans on Ewasm integration and we will retrace the progress on our client project. We will further talk about where we think we can contribute to the latest sharding research efforts and explain why we get more and more excited about TypeScript, what AssemblyScript is and what all this has to do with progress and future integration of an Ewasm virtual machine. This will be a combined talk by various members of the EthereumJS team.
Holger Drewes, Jared Wasinger, Casey Detrio, Vinay Pulim, Alex Beregszaszi
Ethereum’s Impact on Society Overview
Rhys Lindmark takes a closer look at Ethereum's impact on society.
Rhys Lindmark
Ethermint 2.0: Cosmos SDK + EVM
Chris Goes presents his talk on Ethermint 2.0: Cosmos SDK + EVM.
Chris Goes
ethers.js - A Complete and Compact Ethereum Library
The ethers.js library, which has received a DevEx Grant from the Ethereum Foundation is an Ethereum library designed to be complete, while remaining small, flexible and secure. By creating a library which abstracts many of the features available in the Ethereum eco-system to a collection of lowest-common denominator objects, developers can focus on the aspects they care about for their application without having to take into account the type of signer (a geth node? a hardware wallet? a multi-sig contract) or the provider back-end (geth? parity? INFURA? Etherscan?).
Richard Moore
EVM Packages: using OpenZeppelin from ZeppelinOS
Proxy contracts are gaining traction as a mean to support upgradeability, reduce deployment gas costs, and share on-chain libraries. In this talk, we'll quickly review: -The minimal proxy contract, being formalised as EIP 1167 -The transparent upgradeability proxy, in use in ZeppelinOS -And the vtable proxy contract, which enables new development patterns
Santiago Palladino
Evolving the Ecosystem & a Metamask Roadmap
The maturation of dApps has progressed significantly compared to two years ago, especially in being mobile-ready and end-user friendly. MetaMask has a story to tell about this progression first-hand and the new challenges that 2018 brings us. In this presentation we will alert the community about upcoming features from MetaMask such as IPFS support, signed type data, our new web3 injection model, MetaMask-as-a-light-client, mobile support, and multi-chain support. We will also take a critical look at how different actors are attempting to improve on the bridge between users and dApps that is the Ethereum browser.
Bobby Dresser, Bruno Barbieri, Kevin Serrano, Jenny Pollack
Ewasm: Ethereum-flavored WebAssembly and Ethereum 2.0 - Part 1
Ewasm is a candidate for the future Ethereum engine to replace EVM with the rollout of Shasper. Ewasm stands for Ethereum-flavored WebAssembly and it encompasses a broad range of initiatives being led by the Foundation Ewasm team including building an execution engine for Ethereum 2.0, adding support for a host of languages including C++, Rust, and AssemblyScript, and lots of related research and tooling to make Ethereum development easier and more powerful than ever. The team is in the process of launching a public testnet and releasing tooling which will be officially announced in this breakout session. In addition, members of the Ewasm team will introduce the technology, walk through the new stack, and give demos of the bleeding edge development tooling we've built around Rust, AssemblyScript, and other frameworks. We'll have an hour-long workshop where developers can download the new tools and get their hands dirty, building and deploying their first Ewasm-compatible smart contracts, with the team serving as mentors.
Alex Beregszaszi, Guillaume Ballet, Paweł Bylica, Hugo De La Cruz, Casey Detrio, Paul Dworzanski, Jake Lang, Lane Rettig, Jared Wasinger
Ewasm: Ethereum-flavored WebAssembly and Ethereum 2.0 - Part 2
Ewasm is a candidate for the future Ethereum engine to replace EVM with the rollout of Shasper. Ewasm stands for Ethereum-flavored WebAssembly and it encompasses a broad range of initiatives being led by the Foundation Ewasm team including building an execution engine for Ethereum 2.0, adding support for a host of languages including C++, Rust, and AssemblyScript, and lots of related research and tooling to make Ethereum development easier and more powerful than ever. The team is in the process of launching a public testnet and releasing tooling which will be officially announced in this breakout session. In addition, members of the Ewasm team will introduce the technology, walk through the new stack, and give demos of the bleeding edge development tooling we've built around Rust, AssemblyScript, and other frameworks. We'll have an hour-long workshop where developers can download the new tools and get their hands dirty, building and deploying their first Ewasm-compatible smart contracts, with the team serving as mentors.
Alex Beregszaszi, Guillaume Ballet, Paweł Bylica, Hugo De La Cruz, Casey Detrio, Paul Dworzanski, Jake Lang, Lane Rettig, Jared Wasinger
Flyingcarpet: An Open Network for Building and Using Aerial Analytics Services
The Flyingcarpet network connects analytics-hungry businesses with a pool of data scientists who compete to create machine learning/artificial intelligence analytics-extraction models from visual data, such as drone and satellite imagery. The competition incentivisation mechanism uses bounties and a Token-Curated Registry of Opportunities (TCRO) running on the Ethereum blockchain to collect and rank machine learning model creation opportunities. From insurance companies, to agri-companies, to governments, the Flyingcarpet network enables actionable insights through rich AI-powered analytics. For example, last year, Flyingcarpet built a machine learning model that enabled a drone to autonomously count the number of coconuts in a coconut plantation in Papua New Guinea—a task which cannot be performed using satellites. The aim was to increase estimation accuracy and reduce the costs of crop yield predictions for the farmer. From a 20 minute autonomous flight, we were able to effectively collect data from the entire plantation, provide an accurate coconut count and translate that into crop yield predictions to be used on blockchain prediction platforms such as Gnosis. This information could also be used by the farmer to optimise distribution of fertilisers, water and so on. Tech paper: https://drive.google.com/open?id=10TM6bN6excBePftD6l4AoWEfZe484POp Website: https://www.flyingcarpet.network/
Julien Bouteloup
Fraud Proofs: Maximising Light Client Security and Scaling Blockchains with Dishonest Majorities
Light clients are nodes which only download a small portion of all of the data in a blockchain, and try to use indirect means to verify that a given chain is valid. Typically, instead of validating block data, they assume that the chain favoured by the blockchain's consensus algorithm only contains valid blocks, and that the majority of block producers are honest. By allowing such clients to receive fraud proofs generated by fully validating nodes that a block violates the protocol rules, we can eliminate the assumption that the majority of consensus-participating nodes are honest, and instead assume that there is at least one honest fully validating node that can distribute fraud proofs within a maximum network delay, and a minimum number of honest light clients to reconstruct missing data from blocks. Fraud proofs and data availability proofs are key to enabling on-chain scaling of blockchains (e.g. via sharding or bigger blocks) without significantly reducing the ability of end-user wallets to have assurance that all on-chain data is available and valid. We present, implement, and evaluate a novel complete fraud proof and data availability proof system. Research paper draft (work-in-progress): https://www.dropbox.com/s/3zj3burdfrw5v69/fraudproofs-paper.pdf Data availability code: https://github.com/musalbas/rsmt2d Fraud proofs prototype (work-in-progress): https://github.com/asonnino/fraudproofs-prototype
Mustafa Al-Bassam
From Scalability to Inclusion: Enabling Mass Adoption
David Lee Kuo Chuen gives his talk on Enabling Mass Adoption.
David Lee Kuo Chuen
FunFair Technologies' Fate Channels: Lessons learned Implementing State Channels
Jeremy Longley, CTO of FunFair Technologies, will offer a post-mortem on the delivery of their own version of state channels, Fate Channels, to Mainnet. There have been significant challenges along the way, and there's likely to be many more to come as their use scales up. Having deployed a flexible and creative approach, Jeremy will outline how others can bypass these challenges and embrace state channels as best they can.
Jeremy Longley
Genesis Block, EXODUS 1, Zion
Lisa Chu speaks about the EXODUS 1 phone from HTC.
Lisa Chu
Getting to a Million DApp Users
DApps are the future of the web but only thousands of people are currently aware of this future. How do we get millions of people to use DApps? Do they even need to know how DApps are different than other apps? Sid Coelho-Prabhu, Product Lead for Coinbase Wallet, will walk the audience through what is missing today in DApps and user interfaces, and how we can overcome these challenges. He will also cover how Coinbase Wallet enables both developers and users to leave behind what’s complicated about DApps and focus on what matters - developing products that add value to people’s lives all over the world.
Sid Coelho-Prabhu
Gnosis Safe - Make dealing with crypto a less scary thing
The Safe is the first smart contract based multi-signature wallet targeting mobile users. Using smart contracts as proxies between users and dApps opens the door for many usability and security improvements. New access control schemes can be implemented to allow for 2FA and recovery mechanisms making private key management redundant. Transactions can be sent via relay services, which can be paid in any kind of token. Users won't need Ether anymore to interact with the Ethereum network. Usability and costs for dApps can be improved by batching transactions together making user flows simpler and more intuitive. The presentation will give a detailed overview about the Safe implementation of the different features and how they can be used for future dApp development.More information and a download to the testnet beta can be found here: https://blog.gnosis.pm/announcing-the-gnosis-safe-beta-personal-edition-19a69a4453e8
Stefan George
Guerrilla user research for dApps: Step 1 to mainstream adoption
Today, the most prominent dApps struggle with daily user counts in the low hundreds. We have some work to do in terms of widespread adoption. And because of bureaucratic financial systems and increasing smartphone adoption, a lot of that growth will come from the 6 billion-plus people outside of North America and Europe. You’ll learn how a variety of factors, including but not limited to sociocultural and language differences, carrier ecosystems and internet speeds affect consumer behavior in different countries with regard to talking to friends and family, purchasing things, making payments and paying their bills. You’ll learn how five thousand-person WhatsApp groups in Brazil, 100%+ carrier surcharges in Kenya and the popularity of voice messages in China all relate to how you iterate and grow YOUR dApp. This is from an ex-Facebooker who’s driven research for and shipped to hundreds of millions of users in 100+ countries. And yes: a lot of this will be in the form of hard, quantitative data! By the end of this session, you’ll know how to analyze a new market, conduct UX and usability research unique to the area and have the nuanced perspective necessary to disrupt global legacy institutions.
Kevin Kim
High-stakes decision making: how to maximise your impact
After 10 years of sharpening my decision-making skills in the world of high stakes poker I discovered effective altruism - an intellectual movement that applies science, evidence and reason to figure out the most impactful ways to address the world’s most pressing problems. Rigorous analysis shows that some non-profits are literally 1000s of times more cost-effective than average. Additionally, a significant portion of well-meaning philanthropic efforts produce little, or even negative effects on the problems they are trying to solve. Considering the many billions that are donated to charity each year, it is crucially important that all philanthropists develop the critical thinking skills to make these tough decisions - skills such as decision-making under uncertainty, correcting for bias and knowing when to (or not to!) use intuition. I expect many of Devcon4’s attendees will strongly resonate with these concepts. As blockchain pioneers, they already understand the dire need for positive social impact on a truly global scale to ensure a safer and fairer future for everyone. Alongside my colleague - philosopher and barrister Natalie Cargill - I will present the decision-making framework that effective altruists use to ensure that the actions we take achieve the most good.
Liv Boeree, Natalie Cargill
How can the Enterprise Ethereum Alliance interoperate with the public Ethereum chain EIP process?
Members of the Enterprise Ethereum Alliance and the Ethereum core Ethereum Improvement Proposal (EIP) process will have a facilitated breakout session discussion on how to interoperate, learn from each other. The EIP process builds on large scale public open source collaboration, also inspired for historical reasons by the Bitcoin BIP process. Which in turn borrows from Python PEPs, XMPP XEPs, and so on. The EEA has a more formal technical steering committee process for its corporate members. The goal is to improve the quality of the technical Ethereum ecosystem overall, and understand how private chain, enterprise use cases can interoperate with public chain EIP processes.
Boris Mann, Nick Johnson, Conor Svensson, Bob Summerwill, Jamie Pitts, Charles Nevile, Alessandro Voto
How do we control the material world with smart contracts?
The long term vision for the Ethereum community has always been that car rentals, high finance and Cryptokitties would all co-exist on the same blockchain. However, some assets (like Cryptokitties) are purely digital whereas others are purely material (your house) and automatically subject to fiat regulation. How are we to manage fiat property using crypto tools? Vinay will present the results of several years of research in the practical legal technicalities of controlling fiat property from Ethereum smart contracts, with examples from a variety of real world use cases.
Vinay Gupta
How to Magician: Improving Technological Governance
The Fellowship of Ethereum Magicians is a self selecting group of people that collaborate to get to rough consensus and running code that improves the technology ecosystem of Ethereum and related decentralized & cryptographic technologies. We'll discuss what the EthMagicians have done to date, how anyone can join and contribute, and how to self-organize to reach consensus and commitment on subsequent action.
Boris Mann, Greg Colvin, Jamie Pitts
How will nations remain relevant in the 21st century?
Kaspar Korjus discusses how nations will remain relevant in the 21st century.
Kaspar Korjus
Human Centered Identity: We are more than keys
Much of the discussion around identity in our industry is centered on specific identifiers, authentication standards, open protocols, etc. However, I think we need to consider identity from the human outward. What do we care about when we talk about identity? How does identity relate to reputation? What does self-sovereignty actually mean? And of course, what do we need to consider when designing experiences to support the most fundamental aspects of ourselves. Privacy, security, accessibility and flexibility become increasingly critical in this context. The goal of this presentation is to first establish a shared understanding of the fundamental concepts and behaviors we are trying to translate online. To do this, I draw on philosophy, psychology and sociology. Then, an examination of the current state of digital identity and it's many design flaws. And finally, a road towards a solution. Where are we so far? What have we learned about addressing the privacy and security concerns of people through design? What are the current best practices and thinking around designing experiences for interacting and managing your identity. It's been said that money is the killer app of crypto, but what is worth more: you money or your identity?
Jonny Howle
IDEN3: Scalable distributed identity infrastructure using zero-knowledge proofs to guarantee privacy
IDEN3 is NOT an ICO. It has no token at all. It is an open source permissionless identity layer built on top of Ethereum that we expect many projects will be able to use as a foundational layer for their own identity solution. It is a simple system that allows any identity to make a claim about any other identity. Our talk at DevCon4 will cover these topics: - We will introduce the idea of a decentralised identity management system and the challenges and needs for this solution. We will explain how IDEN3 can deploy millions of identities on blockchain without almost any expenditure of gas, allowing the system to scale to become a global solution with Ethereum as it is today. We will show how the claims are managed off-chain and validated on-chain and off-chain. We will explain how to generate proofs to validate claims that are valid only for a specific recipient and not reusable. We will show how to create proofs of those claims anonymously without revealing unnecessary data by using zero knowledge proofs. Finally we will talk about the status of the current development, our roadmap, milestones, the team, etc.
Jordi Baylina
Improving the Ethereum Virtual Machine (EVM 1.0, 1.5, 2.0)
This panel will consist of experts with deep experience designing and building both the current iteration of the Ethereum Virtual Machine, EVM 1.0, as well as various candidates for future virtual machines including EVM 1.5 (several improvements to the existing EVM) and Ewasm (a reimagining of the Ethereum Virtual Machine built using industry-standard WebAssembly technology). These experts will discuss the history and current state of EVM 1.0, the various improvement proposals that are on the table, and the various initiatives underway today. It will also touch upon harder, more controversial questions regarding the EVM 1.5 and EVM 2.0 (Ewasm) proposals. The panel will give audience members an opportunity to learn about how and why Ethereum and its smart contracts work the way they do today, to ask questions of the experts behind this design, and to participate in the conversation about the future of Ethereum--both the low-level virtual machine and the stack of developer tooling (such as Solidity) built on top of it.
Alex Beregszaszi, Casey Detrio, Lane Rettig, Gregory Colvin, Danny Ryan, Paweł Bylica
INCUBED - A trustless incentivized decentralized remote node network
To enable smart devices of the Internet of Things to be connected to the Ethereum blockchain, an Ethereum client needs to run on hardware. While running a full-node or even a light-client on most IoT devices with low performance or restricted resources is not possible or meaningful, today's state-of-the art solution uses a remote client. By using distinct remote-nodes, the advantages of a decentralized network without being forced to trust single players are undermined and there is a risk of malfunction or attack because there is a single point of failure.With the presented Trustless Incentivized Decentralized Remote Node Network, in short INCUBED, with a stateless minimal verification client it is possible to establish a decentralized and secure network of remote-nodes, which enables trustworthy and fast access to blockchain for a large number of low-performance IoT devices.
Christoph Jentzsch
Integrating Ethereum at Scale
Many developers understand how to integrate with the Ethereum blockchain with a few accounts, but how do you grow your product to support millions of users? Jake & Eric, engineering leads at Coinbase, will facilitate a roundtable discussion about the unique challenges of integrating with Ethereum at scale, including key management, protecting customer privacy, and building for forks. We hope this conversation will be a starting point for other major companies in the space to share how they’ve scaled and learn ways we can support each other to grow this industry.
Eric Scrivner, Jake Craige, Pete Kim
Introducing Embark 4 - A powerful engine to build DApps
Iuri Matias, Lead Developer of the Embark Framework, introduces the new version of the framework and how it can be used to easily build the next generation of DApps and Decentralized Services-----Abstract (for submission): The Embark Team has been hard at work these past months working on the next version of Embark which allows to create in minutes DApps that would otherwise take hours if not days, easily allow the developer to find bugs & security issues, a powerful development "command center" and create easily not just classic DApps but other types of Decentralized Services as well on top of Ethereum.
Iuri Matias
Inside Out and Upside Down: Making the Web Distributed Despite Itself
I'll talk about efforts at Mozilla to enable decentralized and distributed web applications, how the success of the web is one of the biggest challenges to changing it, and share lessons we've learned shipping open source software to hundreds of millions of people worldwide.
Dietrich Ayala
Introducing Formality
In 2017, I presented the ideas behind the Moon Project, which aims to create a blazingly fast and secure decentralized browser for DApps. In this talk, I'll highlight advancements towards this goal, highlighting Formality, a massively parallel programming language featuring formal proofs and smart contracts, and the FVM, a decentralized virtual machine dedicated to running functional programs with much lower gas costs using the so-called Abstract Algorithm.
Victor Maia, Leonardo Souza
Introducing Pantheon, a Mainnet Java Client - Demo & Roadmap
This will be the launch of Pantheon, a Java client built for mainnet with an eye for meeting enterprise requirements. Having multiple, performant clients is important to the long-term viability of the Ethereum ecosystem, and enterprise adoption will draw greater resources. This will be a demo of the new client with a walk-through of our roadmap. By introducing a client in Java and building it open source, we’re hoping to draw in the massive Java community into the Ethereum ecosystem, support research and innovation led by the Ethereum Foundation, and add extensions to meet enterprise needs on privacy, permissioning, and others. We will also talk about some of our research efforts on top of Pantheon.
Shahan Khatchadourian, Rob Dawson, Daniel Heyman
Introduction of Ethereum iOS dev kit
We present our dev kit that has been funded by the Ethereum Foundation. With the devkit iOS developers can easily use Ethereum smart contracts in their applications. This will be the official introduction of the dev kit.
Josef Gattermayer, Jan Mísař
Is Ethereum compatible in Islamic finance?
Islamic finance works in a specific framework and guideline laid out by Shariah, which in brief is a divine law of Islam. Since the emergence of Bitcoin to the lime light becoming the buzz word of almost everyone a few years ago, much have been said and debated in the Islamic finance community whether or not it is permissible to deal with, whether it is halal etc. Blockchain has evolved a lot since then, with Ethereum now becoming the leading platform for the smart contract development. However, due to the complexity of the blockchain and cryptography concept, and also perhaps negative perception towards Bitcoin which previously was commonly associated with the excessive speculation activity in the market, there has not been much attempt by the Islamic finance community to tackle this subject in a serious manner. The Muslim community at large is still shrouded by ambiguity and uncertainty on the topic, and therefore one of the cause for the lack of participation and contribution by the Islamic finance community in the development of blockchain and smart contract application thus far. This presentation attempts to provide some insights and clarifications on the subject.
Wan Hafizi Wan Halim, Mohd Daud Bakar
Jaguar. Tinybox. Strawberry.
It’s been nearly a year since the first wave of dapps, and while we’re still reeling with excitement, we’re also looking to the future. How do we bring the next generation of users to the decentralized world? How do we stop thinking in terms of thousands of users, and start thinking in millions and billions?We start thinking less about ourselves as developers, and more about the user experience. Until now we’ve been working around onboarding limitations, trying to create as smooth a UX as possible. A year later, and the time has come to stop overcoming limitations. We plan to remove them entirely.In this talk, we’ll focus on some of the biggest pain points that users face, how we’re solving them, and the impact those solutions will have on growing the ecosystem. We’ll explore parallels with previous big inflection points in tech, and how to draw on the past to help make decisions on where to go next. You’ll leave with invaluable tools, tricks, and strategies that will help you build your own successful dapps on the blockchain.
Nicholas Salloum
Latest on Ethereum
Vitalik gives an update on Ethereum's progress and roadmap.
Vitalik Buterin
Ledger SGX enclave - (un)popularity assessment and the way forward
An overview of the new developer features available for Ledger Nano S Ethereum application, including the validation of an arbitrary smart contract call on screen and how to design a Dapplet on a Nano S to assist the security of Dapps.
Nicolas Bacca
Less Gas, More Fun: Optimising Smart Contracts through Yul
Due to the relative simplicity of the Ethereum Virtual Machine, it is possible to perform heavy analyses in order to optimize bytecode. The jump operations are a main obstacle for this, because they might require a preservation of all basic blocks in the worst case. To overcome this, Solidity's new optimizer operates on an intermediate language called Yul, which is close to EVM bytecode (and also wasm) but abstracts jump operations through real function calls. Each of the many optimizing operations are simple local equivalence transforms whose effects can be inspected at any time and which in combination should be both more reliable and efficient than the classic optimizer.
Christian Reitwiessner
Lessons from International Law: How to reframe our thinking around crypto governance
Governance challenges have plagued international politics since the beginning of time. As we think about governance in crypto, it's critical to understand the history of politics and law - because governance is inherently about human nature and behavior. Whether it's smart contracts, proof of stake, centralized nodes, or miner consolidation concerns, these are all rooted in age-old governance problems presented in a new form. In my presentation, I will cover the foundational principles of international law, its evolution, and how we can take those lessons and context and think about governance from a new perspective. Specifically, I will use examples of current global governance organization such as the UN (and its predecessor, the League of Nations), the ICJ (International Court of Justice), and the lessons that these organizations hold for the emerging field of crypto governance.
Katherine Wu
LibSubmarine - Temporarily hide transactions on Ethereum
LibSubmarine is a modular implementation of the Submarine Sends framework proposed by the team at IC3. While a standard commit-reveal scheme allows users to temporarily obfuscate data included in their transaction, Submarine Sends allow users to completely hide their transaction until revealed in a later block. Notable use cases include preventing frontrunning on DEXs, working sealed-bid auctions, and private voting with public tally. This is an open source and gas efficient implementation which anyone can add to their project. Built by the community, for the community. Slides: https://goo.gl/ncn3xG
Stephane Gosselin, Shayan Eskandari, Tyler Kell, Lorenz Breidenbach
Lex cryptographica : the legal challenges of new blockchain-based lifeforms
Primavera De Filippi talks about the legal challenges of new blockchain-based lifeforms.
Primavera De Filippi
Live Smart Contract Hacking
In this break-out session, a panel of well-renowned hackers and builders will perform security assessments of contracts that the audience submits - and anyone in the room is highly encouraged to help out and take part in the audit. There will not be time to perform full-scale reviews, but the panel will discuss the contracts both from a high-level perspective and also dive into the nitty gritty details, to see if we can find faults in the implementation. This is a panel session, where we want to interact with the community and bash as many bugs as possible, and hopefully demonstrate how tricky it can be to program for the EVM. Mistakes are what makes us learn: There shall be no shaming of anyone who submits a contract for review.
Martin Holst Swende, Nick Johnson, Richard Moore, Matthew Di Ferrante
MakerDAO: A New Hope for Financial Reform
Aside from its practical applications, the blockchain movement can be seen as a populist response to the lack of meaningful reform within the financial sector since the crisis of 2008. This is the sentiment that was famously captured by the indignant inscription on the Bitcoin genesis block: “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.” At MakerDAO we believe that by adding the key feature of stabilization, Dai fully realizes Satoshi Nakamoto's vision of a peer-to-peer electronic cash system. To do this, we have borrowed many different ideas from traditional finance and in the process created a truly holistic foundation for a more rational financial system. In this talk we will dive deep on the philosophical similarities and differences between MakerDAO and the world of traditional finance. We will discuss how MakerDAO represents significant reform of the global financial system by better aligning its incentives and radically increasing its transparency.
Andy Milenius
Making Sense of Layer 2
This talk will be a high level overview of the state-of-the-art in "Layer 2" scaling tech. The goal is to give the audience a comparative understanding of techniques like state channels, plasma (and its various flavours), sidechains, etc. Introduce a basic taxonomy of layer 2 tech -What are the similarities and differences between them? -Comparative analysis - what is each technique good at and bad at? -Defining and explaining jargon used to discuss this tech -Distinguishing between "safety net preserving" techniques (plasma, state channels) and others (sidechains)
Josh Stark
Managing upgradeability and EVM packages
At Zeppelin, we have been working on a toolset for deploying and managing upgradeable smart contracts and on-chain libraries, we have had the opportunity to collaborate with other teams to gather better understanding on their needs. We have also onboarded several projects to share their code on-chain via a common package registry. We are building an open source tool that offers the best possible developer experience for securely managing smart contract applications. In this talk we will revisit the importance of upgradeability in smart contracts security, present the lessons learned from this semester of usage, and share the work we have been doing as a result.
Facundo Spagnuolo
Melonport will not exist by Devcon 5
Melon is an experimental project developed during a 2-years workshop by Melonport AG. The ambitious endeavor undertaken by the Melon team was to build a decentralized asset management system powered by Ethereum. Mission accomplished. During this talk we'd like to provide a deep insight on our journey building the asset management infrastructure of tomorrow on top of Ethereum. We would also like to unveil Melon v1.0, together with the token economics (Melonomics) and the governance mechanisms of the Melon ecosystem. The token model has never been attempted before and leverages work that Vitalik Buterin and other renowned experts have written about in the past. Similarly, Melon governance system is unique in many aspects and will allow Melonport to step down as sole maintainer of Melon protocol, while ensuring the longevity and integrity of the protocol. This presentation constitutes the first step in the decentralization process of the maintenance of the Melon protocol, as we would like to make a call for applications to the Melon Technical Council (given our skilled governance model, the Devcon audience is the perfect crowd for that matter). Melonport will not exist at this time next year. Our talk will explain how we made this possible.
Jenna Zenk
Money is the killer Ðapp: crypto in Venezuela
We want to talk about real-world cryptocurrency use in avoiding forex controls, preserving one's wealth while fleeing an authoritarian regime, and escaping hyperinflation. Venezuela is in a deep economic crisis of its own making: relentless money printing and disastrous fiscal policies have brought the country to the edge of collapse. Eduardo will tell his own story of people using cryptocurrency as an unstoppable store of value and medium of exchange. Alejandro will recount how the crypto community, including projects like Zcash, BitcoinVenezuela.com, and MakerDAO, are researching how to allow Venezuelans to gain access to open money that, unlike the dying bolívar, will not consistently depreciate 50%+ each month, and that anybody could use.
Alejandro Machado, Eduardo Gomez
Mustekala Project: MetaMask to become a light client over libp2p
MetaMask Labs is doing research for the browser extension to become a light client running on top of libp2p. The project codename is Mustekala. As of now, we have fleshed out a comprehensive architecture (https://github.com/MetaMask/mustekala/blob/master/docs/architecture.md) of four layers, where we extract data from devp2p synchronized clients and make it available in libp2p using the IPLD format. Upstream, an overlay network of peers (named kitsunet) shares this information, allowing data redundancy and decentralization at face value. In terms of vision, in a close future low resource devices (browsers, mobile and IoT) should stop depending on JSON RPC communication with ethereum nodes. This is a huge problem today, as nodes became GB-sized machines. Last but not least, every MetaMask user will become a peer of a bigger and more inclusive ethereum network.
Dmitriy Ryajov, Frankie Pangilinan
Nethermind - .NET Core Ethereum Client
If you are familiar with .NET and new to Ethereum programming, this workshop will teach you how to integrate .net applications or new dapps with Ethereum smart contracts using Nethereum. This programming session will guide through the creation of a standard token (ERC20 smartcontract) as well as through the creation of a .Net api definition and interaction with a smart contract (deployment, transactions, calls and events). Members of the Nethereum team will of course be there to answer any questions you may have regarding Ethereum programming and its cumulated benefits when used in the .NET context.
Tomasz Kajetan Stanczak
New hash functions for Ethereum, SNARKs, and STARKs
Traditional cryptographic hash functions such as SHA-256 are well known in the Ethereum community and are well regarded for security and performance. However, they are not quite suited for SNARKs and STARKs as their circuits are too complex and slow in SNARK/STARK-friendly fields. That's why Zcash proofs originally took more than 40 seconds to create. In this talk we present and call for new designs that will make all the SNARK/STARK crypto much faster and thus bring better privacyto Ethereum. In particular, we cover: -Existing algebraic hash functions such as MIMC. -Merkle tree enhancements: wide functions and trees with feedback; -improved algebraic function design using ideas from AES and SASAS schemes. -performance overview; -how new designs will affect EVM and smart contract programming. We will also present other directions and potential research bounties that can be offered to motivate the hash research, crucial for SNARKs, STARKs, and Ethereum.
Dmitry Khovratovich
P2P Networking in Ethereum 2.0
Sharding and Casper promise to greatly improve performance, sustainability, and security of the Ethereum blockchain. Alongside a novel and much-discussed consensus protocol, they also entail fundamental changes to the requirements and constraints imposed on the peer-to-peer (p2p) networking layer. In this talk we report on ongoing research as well as the current implementation state of the latter. We begin by defining key qualitative and quantative properties the network should have. Then we discuss several options for both node discovery and gossip protocols, comparing their performance on the basis of simulationresults. Finally, we give an update on the current state and future developments of protocol implementations.
Jannik Luhn, Kevin Mai-Hsuan Chia
P4: Private Periodic Payments Protocol
P4 aims to solve the problem of subscription services offering end-to-end private cryptocurrency payments. This protocol introduces periodicity to cryptocurrency payments through an ongoing relationship between the merchant and the customer without unintentionally disclosing personally identifiable information. We are creating this protocol to allow us to offer a truely end-to-end private subscription data storage solution built with Tahoe-LAFS. By sharing it, we hope that other subscription services will implement our protocol and further the adoption of cryptocurrency payments in real world retail use cases. Although this protocol is currently a work in progress, we have already specified some design decisions. For periodicity, we are avoiding a payment pre-authorization design to keep the user in control of their keys. And for privacy we are utilizing Zcash shielded transactions and the coming improvements in the Sapling release. This protocol is being created by the Least Authority team with support from the Zcash team.
Liz Steininger
Perun: Virtual Payment and State Channel Networks
In this talk, we will present the Perun Network: a general framework of 2nd layer protocols supporting off-chain payments and arbitrary smart contract off-chain execution. Perun allows its users to execute contracts off-chain via complex state channel networks possibly involving many intermediaries over which contract execution can be routed. One distinctive feature of Perun is that its channels can be virtual, meaning that once a virtual channel is established transactions can be executed even without involvement of the intermediaries. This enables nearly real-time transaction execution with minimal latency at negligible costs. Moreover, privacy of transactions is significantly improved. An additional property of Perun is that its security is backed up by formal proofs using state-of-the-art scientific methods from cryptographic research. Besides presenting the main conceptual ideas of our system, we will outline some of the the major scientific challenges that need to be addressed when designing secure and efficient 2nd layer protocols. Further information available at https://perun.network/
Sebastian Faust, Stefan Dziembowski, Lisa Eckey, Kristina Hostakova
PIET
Piet is a web application providing support to understand smart contract architectures. This is approached by generating a graphical representation of such architectures and a possibility to query deployed instances of smart contracts. The graphical representation shows the inheritance structure of solidity contracts. In addition to the inheritance structure the defined enumerations and structs are shown. To provide understanding of one single solidity contract Piet offers an inspector view showing all members of the contract including the inherited ones. The presentation of the contract and the contract members is enriched by documentation labels derived from Ethereum NatSpec tags. Piet also provides an interactive mode enabling to read the state of a smart contract, sending transactions and browsing through events. This is achieved by connecting to deployed smart contracts through an injected web3 object.
Heiko Burkhardt
Pili-Pala Consensus
Elaine Shi speaks about the Pala Consensus protocol.
Elaine Shi
PISA: Arbitration Outsourcing for State Channels
PISA alleviates the "always online assumption" for all channel protocols and it is necessary for Raiden, L4, Perun, etc. State channels are a leading approach for improving the scalability of blockchains and cryptocurrencies. They allow a group of distrustful parties to optimistically execute an application-defined a program amongst themselves, while the blockchain serves as a backstop in case of a dispute or abort. This effectively bypasses the congestion, fees and performance constraints of the underlying blockchain in the typical case. However, state channels introduce a new and undesirable assumption that a party must remain on-line and synchronised with the blockchain at all times to defend against execution fork attacks. An execution fork can revert a state channel’s history, potentially causing financial damage to a party that is innocent except for having crashed. To provide security even to parties that may go offline for an extended period of time, we present Pisa, a protocol which enables such parties to delegate to a third party, called the custodian, to cancel execution forks on their behalf. To evaluate Pisa, we provide a proof-of-concept implementation for a simplified Sprites and we demonstrate that it is cost-efficient to deploy on the Ethereum network. Blog+Paper: http://hackingdistributed.com/2018/05/22/pisa/
Patrick McCorry
Plasma Implementers Call Live!
The Plasma Implementers Call is a biweekly call which discusses the cutting edge of Plasma research. We will be doing a LIVE session! This is a great group of 9 people: Joseph Poon, Karl Floersch, Kelvin Fichter, Dan Robinson, David Knott, Xuanji Li, George Konstantopoulos, Alex Vlasov, & (if I can convince him) Vitalik! You can take a look at the YouTube channel here: https://www.youtube.com/channel/UCG2MeKuKDJRK4gFNk-dQuZQ Please subscribe! ;)
Karl Floersch
Plugging the metadata leaks in the Ethereum ecosystem
Current generation blockchains are by definition public... but how much public is too public? There is ample research going into making transactions private, hiding users' balances and computing verifiably off chain. However, nobody really focuses on the alarming amount of metadata we leave behind us with every one of our chain, explorer and/or dapp interactions. Even running our own nodes can expose a lot more about us to the world than most people realize or would feel confident with. In this talk I'd like to highlight some of the issues I see around metadata privacy within the Ethereum ecosystem, how those seemingly innocuous data leaks could be amassed and abused by aggregating actors and what we collectively might try to do to protect our users and the safety of our community members in the coming years.
Péter Szilágyi
Plasma Cash: Towards improved Plasma constructions
Plasma is a technique which is used to increase Ethereum transaction throughput, while maintaining network decentralization and security. We focus on the variant of Plasma called Plasma Cash, which allows for highly performant sidechains in production, today. We discuss Plasma Exits and Challenges as well as explore the User Interface choices for Plasma Apps. We go over the challenges encountered during the development and final implementation of a Plasma chain and contract. The presentation will highlight the advantages and disadvantages of using Plasma Cash, as well as practical examples of Plasma for Non Fungible Tokens and gaming. Finally, we'll talk about edge-cases such as griefing attacks, and future work towards making Plasma implementations more efficient, such as fast exits through liquidity providers, coin checkpointing through Plasma XT and arbitrary coin denominations through Plasma Debit. The audience is expected to walk away with a detailed understanding of how Plasma Chains should be built as well as the inner workings of the Plasma Cash technique. More experienced individuals who understand but are not following Plasma actively are expected to walk away with an overview of the current status of Plasma research and development, and motivated to tackle the existing open research problems.
Georgios Konstantopoulos
Post Nation-State Governance
The contemporaneous world order we have today emerged during the Westphalia Treaties of the 17th century after 30 years of war in Europe following a clear set of principles: frontiers, non-domestic intervention and power alliances that keep the peace through a Nash equilibrium. As the internet and blockchains become a dominant economic force able to break the limits imposed by Nation-States (ie: "Facebook and the Russians"), the quest to seek a new equilibrium of power has begun. Democracy Earth researches smart contracts able to deliver an alternative to traditional democracy using the Ethereum network addressing key issues of voting systems including coercion and bribe resistance.
Santiago Siri
Practical Plasma: Gaming
Talk will explore how Plasma Cash is changing the blockchain gaming landscape. Viewers will come away with a strong understanding of how to add advanced functionality like real time battles and crosschain token transfers to their existing games. Also we will explore how Plasma Cash enables use of sidehains to speed up gaming. What are the UI/UX difficulties of Plasma Cash? What would having wallets on multiple chains look like. Can we have automatic sign transactions for users? First we will delve deeper into L2 solutions like sidechain and state channels. We will see how plasma cash enables token transfers to sidechains, enabling the game to be fully run on the secondary layer. We will compare from a high level some common L2 solutions. We will walk through the UI/UX choices, how existing wallets interact with Plasma contracts. Then we we will delve into the tradeoffs in UI to speed. Finally we will tie everything together, by showing a working game that uses plasma, on a sidechain. So the audience can get the feel of what the end result of all this work would look like. What kind of games are possible and open up ideas for their future titles.
Matthew Campbell
Privacy for Everyone
Zooko Wilcox speaks about Zcash & recent advances in Privacy.
Zooko Wilcox
Privacy Preserving Smart Contracts
An overview of the privacy-preserving smart contract landscape. Examines the 3 main approaches: trusted execution environments (TEE), secure multi-party computation (sMPC), and zero-knowledge proofs (ZKP), and their respective tradeoffs to achieving computation over private data. I talk about the different companies doing each approach and I propose a way to synthesize all 3 approaches coherently. There is a full blog post about the topic here: http://juliankohtx.com/privacy-preserving-smart-contracts/
Julian Koh
Privacy-preserving Smart Contracts at Scale
In this talk we'll describe Oasis, a platform for privacy-preserving smart contracts at scale. Oasis addresses two critical issues of today's platforms: poor scalability and a requirement that all data is public. These platforms cannot support many exciting use-cases which have complex application logic (e.g. machine learning) or require protection of user or application secrets (e.g. data markets). Oasis is a layer 1 blockchain platform that scales to complex workloads such as machine learning and protects data via secure computing techniques. Oasis's scalability stems from the novel separation of computation and consensus in a layered design. This design allow transactions to execute in parallel before validation by the consensus layer, thus alleviating a major source of congestion and enabling new verifiable computing techniques that dramatically reduce replication needed to ensure integrity. Oasis uses a proof-of-stake consensus algorithm tailored for this architecture and supports multiple secure computing models (trusted hardware, multi-party computation, zero-knowledge proof) based on security and performance requirements. We'll summarize the Oasis protocol and discuss real-world applications built on Oasis in as credit scoring, medical data sharing, and blockchain-based games. We'll describe how Oasis enables these exciting applications to run directly on-chain, avoiding the need for off-chain computation.
Noah Johnson
ProgPoW - A Programmatic Proof of Work
Kristy-Leigh Minehan speaks about ProgPoW.
Kristy-Leigh Minehan
Recurring meta transactions to power l33t subscriptions!
Dapps require way too much on-boarding. The Ethereum ecosystem needs to push toward mass adoption by allowing new users immediate access to functionality and interactivity without all the hoops to jump through. This means paying the gas for first time users' transactions. Thanks to public/private key pairs, users can sign meta transactions and incentivize desktop miners to pay the gas for them. I will demonstrate how etherless accounts can craft and sign transaction off-chain and send them to a relayer. The relayer, incentivized by the a reward in the transaction, submit the the meta transaction to a bouncer proxy and pay the gas. This also works great for Universal Logins where you have an identity proxy that your etherless devices can transact through.
Austin Griffith
Raiden Network: Getting to a production ready payment channel network
The Raiden Network is the payment channel network for Ethereum aiming to help scale Ethereum payment and all Dapps that utilize Ethereum for payments and rely on no on-chain side effects of the payments. There will be a small explanation of what is payment channels and a payment channel network, an explanation of the raiden network protocol and a demo of using Raiden (hopefully by then live on the mainnet). We will close with future plans, expansion of the protocol and showcasing potential applications.
Lefteris Karapetsas
Reversing Ethereum Smart Contracts to find out what's behind EVM bytecode
Reverse engineering is a common technique used by security researcher to understand and analyze the behavior of closed-source binaries. If you apply this to Ethereum smart contract (and more specifically on the EVM bytecode), thats allow you to analyze and verify the result of your Solidity source code compilation. From a developer point of view, it can save you a lot of time and money if you succeed to detect flaws and missing bytecode optimization. Also, providing the Solidity source code it's not mandatory during the smart contract creation, that’s why being able to directly reverse the EVM bytecode make even more sense if you want to understand the behavior of external smart contracts.
Patrick Ventuzelo
RICO - Making ICOs Fair, By Making Them Reversible
The ERC 20 had far more impact than I expected when I proposed the draft in November 2015. The massive amounts of ICOs following the adoption of this standard led to money collection becoming a breeze. As much as this democratised the space, it also led to massive amounts of money being collected, where not all projects lived up to the expectation they created, while opening the door to not ICO-able projects, as well as outright scams. It's time to bring back balance, by letting participants decide if they deem a project worthy their funding - over time. The RICO, or Reversible ICO is a proposal I introduced a few months back that has the potential to make ICOs more fair. This happens by releasing the funds over time and giving each participant the power to cut his funding to the project at any time.
Fabian Vogelsteller
S-gram: Statistical Linter For Incomplete Solidity Smart Contracts
This presentation will introduce a statistical linting technique called S-gram for Solidity smart contracts. Generally, S-gram aims at finding bugs, stylistic errors, bad programming practice patterns in Solidity contracts. Unlike traditional approaches relying on program analysis which requires full/compilable contracts, S-gram offers automatic checking capability even for incomplete Solidity contracts, thus can help create better development experience where developers can almost code and check simultaneously. The key insight behind S-gram is that "unusual code is more likely to be buggy". The likelihood is measured via probability computation in statistical language models, e.g. N-gram. Specifically, S-gram builds an N-gram model out of a corpus of “good” contracts (“good” means meeting stylistic specifications and having no bugs). Given an incomplete contract c, S-gram first parses it into a token sequence based on abstract syntax tree types e.g., AssignExpr, CallExpr etc. Then, S-gram calculates probabilities with respect to the N-gram model for all the subsequences of c and further flags less-probable code as suspicious. This presentation will also introduce preliminary evaluation on S-gram in terms of capturing real-world smart contract errors. In the end, this presentation will highlight the future tooling support to integrate S-gram with a Solidity IDE.
Han Liu
Satoshi Has No Clothes: Failures in On-Chain Privacy
Payments in Ethereum and Bitcoin are, by default, transparent. Transactions are conducted between pseudonyms with the sender, recipient and value exposed. While this transparency enhances auditability and decentralization, it is a major privacy issue. A growing volume of research shows that these pseudonymous identities are easily linkable. This is a major issue for privacy, fungibility, and a free market. A variety of techniques have been proposed to alleviate these issues. These include but are not limited to Confidential transactions + Conjoin, RingCT/Cryptnote, Zerocoin, Zerocash, Hawk, and Solidus. These techniques span a large multidimensional performance envelope in terms of transactions generation and validation time, size, as well as a range of cryptographic assumptions and data retention requirements. At the same time, these protocols offer markedly different levels of privacy against various threat models. Which one should we use? If performance were the sole issue, then systems without such enhancements would likely be preferred. Clearly some amount of privacy is necessary and the cost of getting it acceptable. The question is thus, which approaches provide sufficient privacy, in what contexts, and at what cost?
Ian Miers
Self-Sovereign Sexuality
If we’re honest about what we claim we want to achieve—banking the unbanked and censorship resistance commerce for common folks—then we shouldn’t be surprised when the first people that actually use crypto are those for whom banking and censorship are important, daily problems. Besides rogue states, drug dealers, and the impoverished, sex workers stand out as the next major group to adopt crypto to use in their daily lives. I believe we should embrace this community and build our dapps with them in mind. In this talk I want to discuss: Cultural parallels between the crypto and sex worker communities, Trust but verify - Escorts screen clients before the first meeting, Self-sovereignty, Crypto - we don’t want anyone to be able to get in the way of how we spend our money, Sex workers - we don’t want anyone to be able get in the way of how we use our bodies, Privacy - Fake identities / Protonmail / Cash, Challenges that sex workers face and blockchain-based solutions, Lack of banking access, Difficulty advertising, Rent-seeking intermediaries (pimps), Cancellations, The case for sex work decriminalization, The opportunity for Ethereum to welcome the sex worker community
Ameen Soleimani & Chelsea Palmer
Shasper on Substrate
Robert Habermeier gives an overview of Parity Technology's work on Serenity.
Robert Habermeier
Smart Contract Security - Incentives Beyond the Launch
To mitigate security issues that were quickly present in the deployment of smart contracts, the community has turned to a wide variety of security techniques. Standard when deploying new contracts is manual review by an externally contracted company/individual. In many ways this has been a success, reducing the number of observed security incidents. In this talk, we take a look at how unique incentives in smart contracts affect the process of securing them. For example, smart contracts are often non-upgradeable: enshrinement at release time encourages security processes that end after the deployment of the contract, leaving blind spots in long-term security guarantees against evolving threats. Pressure to ship often leaves critical security guarantees out-of-scope of external reviews, and auditor incentives tend away from detailed or fundamental criticisms of contracts' protocols. In this talk, we review the reviews and take a look at several top contracts in the ecosystem: what are the provided guarantees, who were they reviewed by, and what is missing? How do these guarantees compare to guarantees provided users in systems outside the smart contract ecosystem? And how can we most effectively deploy the immense talent coming into the community towards more secure, more usable systems for end-users?
Phil Daian
Smart contracts: Approach with caution
Some of Ethereum’s most critical use cases come from it’s ability to create smart contracts, but this feature has a downside. Transactions no longer either succeed or fail, there are partial failure states that affect what occurred and all variations need to be accounted for when people get paid from it. Jake will discuss how Coinbase mitigates these risks and ensures smart contract transactions are handled safely.
Jake Craige
Snarks for mixing, signaling and scaling
There is general interest in the ethereum community to scale ethereum by moving dapps inside snarks. The key to do this is to make an efficient signature function available inside a snark. We present this signature function https://github.com/barryWhiteHat/baby_jubjub_ecc designed to work efficiently inside a snark. Furthermore we describe an architecture to scale ethereum using snarks. We discuss the trade offs required and compare them to building a dapp inside the evm.
Barry Whitehat
Solutions towards trusted and private computations - built by Golem for the wider ecosystem
Intel SGX is a technology first developed by Intel for the protection of code and data. This an extremely promising technology that will contribute to the development of the blockchain space and is focusing efforts on solutions and further development.Our hard work has allowed us to be positioned as the most advanced team in this field. We are building this solution and open-sourcing it because we believe that our user-friendly product will enable many projects facing challenges like the ones we have faced apply this solution and push other development aspects of their projects. This talk will cover what we have accomplished so far and what are the next steps related to Intel SGX technology development. We will explain how we have achieved total security and privacy for requestors (people requesting computing power via the Golem p2p marketplace). They can be certain that the data they share is not accessible for the providers and they can be certain that the results are not manipulated. We'll also show how that integrates with our Concent service.Most importantly we will talk about other new possibilities that this technology enables for decentralized computations, explaining how to run arbitrary binaries inside SGX.
Piotr Janiuk
SpankChain: Payment Channels in Production
The original custodial payment hub architecture; Our motivation for upgrading to a non-custodial hub; The new perun-style hub architecture; How we conducted the upgrade; An overview of features: Streaming payments, Currency auto-conversion (+ price negotiation), 2-token exchange, Custodial payments, Fees; A discussion of various design decisions: Payment Channels vs. Plasma, Perun vs. Hashlocks, Unidirectional vs. Bidirectional Virtual Channels, Emphasizing the “Card”, de-emphasizing the wallet; BOOTY Maximalism vs. ERC20 agnosticism; Future Roadmap; Networked hubs; State channels; Integration into Wallets like Gnosis Safe; Delegated signing keys / permissions; Anticipated Ecosystem Impact; SDK - Everyone gets payment channels; As a foundation for state channels; As a focal point for experimentation.
Ameen Soleimani, Arjun Bhupati
Special Projects 2018
Grab bag of fun projects, including: fancy oracles, ETH-ETC relations and relays, fancy domains, new swag, new wiki release, islamic finance, opt-in backdoors, ether.cards.
Virgil Griffith
State Channels on Ethereum with Counterfactual
State channels are a critical "layer 2" scaling technology for ethereum. State channels let users conduct "off chain" transactions rapidly, without waiting for blockchain latency, but with each transaction still considered a "final" transfer of digital value or other valuable "state". However, they are difficult to engineer - today, many dapp developers have had to "roll their own" channels. Counterfactual aims to make it easy for developers to use channels in their applications, and get started making secure, scalable, performant ethereum dapps today. This talk will cover: - Overview of state channels technology - Introduction to the Counterfactual framework - How developers can get started using Counterfactual today
Liam Horne
Status Changelog
Jarrad Hope from Status gives an update on their Changelog.
Jarrad Hope
State of the ENS
Updates on the state of the Ethereum Name Service, and our plans for the next year.
Nick Johnson & Jeff Lau
SWARM Team Update
Swarm aims to be the native data storage and content distribution infrastructure layer of the "Web 3.0".Since our last update at Devcon3 in Cancun, Swarm has seen major progress in its codebase. The long awaited network rewrite has been completed and several new features have been merged. In this talk members of the Swarm Team will present quick updates. For example, here are some of the updates we'd touch upon: -Encryption - Since the 0.3 release Swarm supports native encryption on the chunk level. Daniel will present a quick overview. -Access Control Trees - newly introduced in Swarm is the support for Access Control Trees. This feature increases the utility of Swarm to a wide range of use cases. Elad will sketch the main features. -Swarm Light Client - The requirements and limitations of the mobile phone present unique challenges for Swarm and we have begun to address them with the Swarm Light Client. Attila will give an update on this project. -PSS - The PSS protocol has matured significantly since last year. Lois will give the update. -Spam prevention in Swarm - new ideas for countering a flood of bad data. (dani & Aron) -Databases in Swarm (Viktor)
Aron Fischer & Swarm Team
The Case for Proof-of-Stake
Emin Gün Sirer gives an overview of blockchain & how we got here, and makes the case for Proof-of-Stake.
Emin Gün Sirer
The EEA Technical Roadmap
Ron Resnick and Conor Svensson from the EEA present their technical Roadmap.
Ron Resnick, Conor Svensson
The Promise of Trusted Compute for Ethereum Scalability, Decentralization and Privacy
The Ethereum community has well known reservations about Trusted Compute and support those concerns. As Ethereum is becoming the dominant chain, scalability, decentralization and privacy will be the most important challenges. With the emergence of technologies such as PoS, Plasma and increasing use of staking and voting as design tenets, we believe Trusted Compute designed and deployed with decentralization as the objective can play a significant supporting role in not only preserving but also extending and democratizing the promise of decentralization. The presentation and related demonstrations are designed to engage with and trigger conversations within the Ethereum community on the relevance of Trusted Compute.
Sanjay Bakshi, Andreas Freund
The Social and Economic Fabric of Decentralized Space Development
Crowdsourcing and crowdfunding has existed in the aerospace industry for decades, although usually they occur independent from one another. With the advent of cryptoeconomics, incentive systems can be designed that synergize crowdsourcing and crowdfunding in new ways to enable mass coordination in open source space development. Space Decentral is a DAO building a citizen-led space agency, with a novel governance model and ultimate goal of bringing humanity together to collectively accomplish the impossible. Project proposals are vetted and curated by the Space Decentral community, with curation leading towards project activation for volunteer-driven crowdsourcing. Ethical complications arise when volunteers help bootstrap for-profit entities without legal protections in place for ownership. To solve for this, Space Decentral's projects will use a tokenized task management system built on top of Aragon, that will track individual work contributions. By participating in Space Decentral, the expectation is: should a nascent mission spin-off into a new entity (such as a child DAO) each individual’s stake will be measured by the non-transferable tokens collected, which will be transparently accounted for on Ethereum. This new collaborative model is generic and can be applicable to any organization that wants to combine crowdsourcing and crowdfunding.
Yalda Mousavinia
The State of Plasma
David Knott and Kelvin Fichter give an update on the state of Plasma.
David Knott, Kelvin Fichter
The State of Whisper
Whisper is the Ethereum Foundation's secure communications protocol. It has been designed to ensure darkness, i.e. guarantee that neither a message's content nor its metadata can be captured by an attacker. With the release of version 6 last spring, it is now also used to prototype the switch of the P2P stack from DevP2P to libp2p. This talk will start with a summary of the protocol, followed by in-depth coverage of two upcoming features that will improve its usability: 1) insights into the libp2p switch, and 2) compiling it to WASM to run directly inside a browser, thus bypassing the confusing RPC interface.
Guilaume Ballet
The Entire History of You Is Being Sold
Every moment, servers are logging, cataloging, and selling your personal, private information. Your utility bill payments, cell phone records, insurance payments, auto history, court records, credit score, identity information, social security records, address history and hundreds of other pieces of information are amassed into giant data warehouses where it’s packaged and sold to data farms, lenders, and banks. A Blockchain Solution: The data industry is a murky one. With the right direction, businesses are ready to adopt Blockchain technology TODAY as Blockchain can offer practical solutions to GDPR and Data privacy. Riddled with scams, dark markets, and illegal underground sources of data, the problem is getting worse. 10,000+ different companies report information about you to major bureaus. Analysts’ figures show that number climbing to more than 30,000 in the next 10 years. This is where Blockchain is needed. Developing the Future: In the past, consumers had little recourse, calling central data collection firms are a “necessary evil”. Blockchain gives users the power to own their own data, and decide how it’s used, how it’s sold. How you can develop systems that get adoption today? What businesses are ready to integrate now? Simple solutions to big problems.
Jesse Leimgruber
The Trinity Ethereum Client - A platform for blockchain applications
Trinity is a new full client for the Ethereum network. This talk will cover three main areas. First, highlighting the role that Trinity plays in the research and development of the core Ethereum protocols. Second, that once Trinity is no longer in an alpha stage that it will be a production client which you can use as core infrastructure. Last, explaining the "Plugin API" being developed for trinity as well as exploring the planned use cases we foresee it being used for.
Piper Merriam
The Web We Want
Brewster Kahle discusses the Internet Archive's history & attempt at decentralization, the technology that's currently in place, and what's needed from the community. He also discusses the benefits of decentralization, the steps that will need to be taken to get there, and the challenges we'll need to overcome on the way. The presentation is followed by a Q&A session.
Brewster Kahle
Towards a socially scalable Etherean future
Ethereum and related Web3 technology stands a real chance of making the future fairer, more open, more inclusive, and more just. But up to now Ethereum has been the near-exclusive playpen of a tiny coterie of already-wealthy, never-marginalized, mostly Western and almost entirely male technocrats. Can Ethereum be more than this? Can it fulfill its mission to be the future compute platform for all of humanity? How do we overcome the enormous obstacles we currently face to mass adoption, things such as UX, the complexity of key and identity management, the public perception of scams and shitcoins, and the awful wealth distribution? I believe the answer lies in the concept of social scalability, conceptualized by Nick Szabo. This talk will introduce the concept, discuss how it relates to Ethereum, and examine present scaling, governance, education, marketing, and UX initiatives through this lens, with an eye towards developing Ethereum into a platform usable by and valuable to humans everywhere.
Lane Rettig
Turbo-Geth: optimising Ethereum clients
As Ethereum network becomes gets more and more use, the load on the system grows, and the scalability becomes the primary concern. While concepts like Plasma, State Channels, and Sharding offer medium to long term solutions, client software optimisation have a potential to create enough runway in the short term. Turbo-Geth is an experiment to challenge various design choices made in major Ethereum clients and see the outcome. It is currently a fork of go-ethereum, but hopefully the insights are applicable to other client implementations too. This presentation will report on main experiments, findings, benchmarks, and the current state of Turbo-Geth project.
Alexey Akhunov
Universal Ethereum Logins
A modest proposal to improve usability in Ethereum apps by removing a lot of the friction created by the usual login system: Your users can use your app without needing to install anything, buy ether or even type a password -Users are identified by a ENS username, and not a hex address -Users can use tokens to interact with your app, and you can even give out some of them free to encourage usage -Users are in control of their identity and any assets that are tied to them, and can take them to other apps -When users log into their identity with other apps, these act as second or third factors authenticators. While the app relies on a server, the server’s only job is to relay messages to the chain and pay ether, and the user can use any server they want. This is all achieved by using client side signed messages and multiple standards. Live code will be presented.
Alex Van de Sande
Unscrambling an Egg: Decentralization and the Zcash Foundation
The Zcash protocol we know today started as a project by the Zerocoin Electric Coin Company (commonly known as the "Zcash Company"), but it wasn't meant to live under the aegis of a single company. In this talk, the Executive Director of the Zcash Foundation—a separate, independent 501(c)3 from the Zcash Company—will cover the path forward for further decentralizing the Zcash protocol, share lessons from the Zcash Foundation's experience in governance applicable to dapp developers and Ethereum community members, and discuss trade-offs inherent in various approaches for bootstrapping cryptoeconomic systems.
Josh Cincinnati
Unintended Consequences of Product Design
The little choices we make when building a product—regardless of how much thought we put into them at the time—can have long lasting consequences. I'll cover lessons learned while building MyEtherWallet & MyCrypto, why we decided to ultimately make the hard choice to remove private keys from MyCrypto.com and move people to the desktop app, and how others can be more mindful while building great products in this ecosystem that promote a secure and decentralized mindset for both product creators, their teams, and ultimately their end users.
Taylor Monahan
Updates from the Solidity Team
In this talk we will give an overview of what the Solidity team has worked on in 2017/2018 and what our plans our for the next year. It will cover features, challenges and plans.
Erik Kundt
User Experience of Aragon
Problematic user experience of decentralised applications has been a major factor in slow adoption of them. We think this is attributable partially due to incomplete technology, but also to lack of established design patterns and design systems in the space. Through the work we have done with Aragon, and other open source projects like Ubuntu and Matrix/Riot redesign we think increased attention to design can really help push these important technologies to wider audiences. We would like to share learnings from these projects. Additionally, we are announcing a new open source design system and UI component library - Lorakeet - for decentralised applications, using React and Styled Components for theming. We hope it will help developers and designers build dapps with a good level of baseline design choices and code quality, and that the community will adopt and contribute to it.
Jouni Helminen
Using Solidity's SMTChecker
Solidity's SMTChecker is a formal verification module that automatically tries to prove safety properties in Solidity smart contracts. These properties include checks for underflow, overflow, trivial conditions, unreachable code and user defined assertions. The checks are performed statically during compilation time, and the properties are either proved correct or a counterexample representing a bug is given to the user. Formal specifications for user defined properties are written using constructs already available in the language, therefore not requiring learning a new verification language/framework. If the formal specification is inaccurate or wrong, proofs are useless to the developer. Therefore, it is important to write specifications in a way that the target properties do represent the program logic. For the advanced user, some understanding about the SMTChecker may lead to specifications that also increase the module's efficiency and proving power. This talk gives an overview of the available features in Solidity's SMTChecker, and presents some insights on writing better formal specifications.
Leonardo Alt
Water We Doing: The Changing Tides of the Ethereum Foundation Grants Program
Kenneth Ng from the ESP team discusses the role & goals of the EF's Ecosystem Support Pipeline.
Kenneth Ng
Web3 Design Systems - components and design standards for better dApp UX
As a continuation of the Web3 Design Principles, our group has launched a community wide research for the most common UX problems in the ecosystem, with the objective of creating a Web3 Design System that includes: -The Web3 Design Language: that will research and consolidate a series of guidelines and Design Principles, (similar to Google's Material Design minus the styling suggestions), focused around the specific UX needs of distributed applications, as well as producing a series of proposals to map and solve some of the open-ended design challenges of this space (ie. key management, "login" patterns, asynchronicity etc). -a Web3 Design Library of components, a bootstrap like library for quickly developing dapp front-ends that implement the principles of the guidelines and give consistent UX across dapps. Although at Devcon the interviews will still be happening, we would like to share some initial insights that will emerge from the interviews. The objective is to share with the largest possible audience some of the most common and urgent UX problems and some ideas about how to solve them.
Beltran Berrocal, Aqeel Mohammad, Alejandro Machado, Laura Giron, Gustavo Esquinca
web3j 4.0
web3j 4.0 will be released just in time for Devcon4.web3j provides the glue for Java and Android developers to work with Ethereum. It is now the most popular Java/Android Ethereum library on GitHub. I will be providing a quick update on the great new functionality contained in this milestone release.
Conor Svensson, Ivaylo Kirilov
Welcome and Song
Jonathan Mann's opening song & welcome to Devcon 4.
Jonathan Mann
Writing Robust Code
What the elements of a robust and secure development process looks like: 1) V Model of development 2) Writing requirements 3) Requirements traceability 4) Test-driven development in practice 5) Obtaining an audit 6) Operational security during launch
Bryant Eisenbach, Kirill Pimenov
Year working with Geth on a production Ethereum application
AirSwap is a decentralized trading network. As Infura can attest, these applications end up making quite a few calls to Ethereum nodes. Most of the calls are simple lookup calls just checking balances. In addition, because the network supports trading there are many transferring token calls as well. This talk focuses on the evolution of AirSwap's geth infrastructure through the course of the year and how the setup has changed. We started from using Infura, to a single node, to making an in-house cluster. Along the way, we've experienced down times, slow syncs, and code issues. While, the infrastructure is bound to change as the ecosystem shifts, we'd love to share what we've learned and a bit of our setup.
Adam Link, Don Mosites
Yul - Intermediate language for Ethereum
This talk will give an introduction to Yul, the intermediate language developed by the Solidity team. We'll go through the motivation, design decisions and progress of implementation. Yul is designed to have multiple targets, EVM and ewasm, and support multiple languages as a frontend. We'll touch on languages using it (Flint, LLL) and what is ahead in order to support it in Solidity.
Alex Beregszaszi