ioBuilders at the DevCon 2019 – Io Builders
There were many talks about new progresses and solutions regarding privacy in Ethereum:
With the above mentioned zkSNARKs, the transactionality can also be improved. To do so, some solutions as the one presented by Iden3 allow verifiable computation to be done offchain, decreasing the amount of transactions that have to be done on-chain for obtaining the same output.
There was some interesting talks about smart contract debugging. We highlight the work done by Nomic Lags with the Buidler stacktrace tool. They offer an alternative to Ganache that includes solidity-aware stack traces. It is able to know what smart contracts are being run, what they are suppose to do and why they are failing. They will highlight with a clear and detailed reason why the tests of the smart contracts fail so it is easier for the developer to find the problem.
Ethereum is regularly updated, with the so called soft forks, to include constant improvements without breaking backwards compatibility. But some bigger changes, like higher transaction throughput or changing the consensus protocol from the energy inefficient proof of work to the much more efficient proof of stake can not be done without completely changing the implementation of the Ethereum blockchain. Those changes will be released in the upcoming Ethereum 2.0 version, a completely new implementation of the blockchain. The planning phase for the second iteration are about to come to an end and first parts of the new version will be released soon. Many talks focused on the differences to the current version and how those will affect smart contract design. While not everything is set in stone yet, it seems that Ethereum is heading in the right direction and will allow many more use cases that at the moment are technically not possible.
On-chain interaction
Brooklyn Zelenka, the creator of the ERC-1066 that allows for standardization of revert messages in smart contracts, gave a talk about a “smart contract service” that allowed, by means of messaging between smart contracts, the possibility to create highly vetted and secure contracts that anyone could re-use. She highlighted that Ethereum counts with innumerable amounts of repeated deployed contracts. With a solution as the one proposed, instead of having multiple copies, there could be just one version of each contract available for everyone. This would decrease the computation power spent for running the network.
It was also interesting the talk of Fabian Vogelsteller (creator of the ERC-20) about the ERC-725 that proposes Self sovereign Identity by means of proxy smart contracts. This way, security is increased and allows users’ accounts to be holders of their personal information that can then share to other accounts through the blockchain.
Oracles
Oracles goal is to feed smart contracts with external data. Due to the immutability of the blockchain, it is critical that the data inputted is correct. This is why it is important to remove the inherent indeterminism of real world events by aggregating and filtering information from multiple data points.
We attended a talk given by Witnet about a new language they have developed called RADON that serves to simplify how external data is aggregated, filtered, reduced and reported to the smart contracts.
Chainlink also had a couple of talks on how to ensure secure connections between smart contracts and off-chain data events
Data extraction from smart contracts
While oracles serve to feed smart contracts with outside data, it is also interesting to know some methods that try to make simpler the extraction of data from them. The same data structures that make Ethereum an effective and trust-less distributed virtual machine complicate data accessibility and usability for dApp developers. VulcanizeDB improves the data accessibility by providing a suite of tools to ease the extraction and transformation of data into a more useful state.
Security on chain
As the adoption of smart contracts is growing constantly, so is the money held by smart contracts. Despite all the benefits this brings, it also creates a higher incentive for malicious actors to try to search for and to exploit security holes in smart contracts. As all the information on Ethereum is public, so is the low-level program code of any smart contract. As this can be analyzed by anybody given enough time and resources, security has always been a big part of any smart contract design.
Many new tools assisting developers in designing secure blockchain programs have been presented at the Devcon. One of the best known ones is MythX, which provides automatic security analysis for smart contracts.
Another approach is Vyper, a programming language for smart contracts. It distinguishes itself from the de facto standard Solidity by trying to be secure by design. Meaning that the goal is to make it almost impossible to write insecure code with it. It is intended to be reached by limiting the functionality of smart contracts to a secure minimum. Right now it is not yet ready for production, but it has already accumulated a large number of supporters and should be ready soon.
Moving to a more Enterprise/regulated environment
In general, if we compare this Devcon’s edition to the one of last year, we get the feeling that the community is moving to a more corporate and regulated environment. Since the crash of the crypto and ICO bubble in 2018, ethereum use cases and developers are getting closer to the enterprise world where they can increase their value proposition. In addition, corporates are getting more familiar and interested in blockchain technology and are investing more money on it, even more after Facebook’s stable coin (Libra) was announced. The use of Ethereum on the enterprise world, however, comes with some requirements that were not so important before. Mainly: Privacy, stick to existing regulation, scalability, transactionality and stability of tokens value.
Regarding this topic is worth to mention the talk –Ethereum and the Law- of Vlad Zamfir, one of the core researchers at the Ethereum Foundation that pointed out that the growth of Ethereum and its use cases should always be pegged to the existing laws and regulation.
We can also see in this regard the great advancements that Pegasys is doing on establishing an Ethereum client and protocols that suit enterprise projects with the creation of Pegasys Plus and Hyperledger BESU -after partnering up with Hyperledger-.
Apart from all the talks that we attended, we also got the chance to give one. We were selected for a lightning talk about the E-Money Token Standard (ERC 2020) that we have developed together with the Adhara team. It was received with a lot of interest by the community and it served us to give it more popularity, which is something key to increase adoption and make it a standard per se. Check our post about the EM-Token to find out all the details of the standard
The conference was not all about talks and workshops. We also had the time to meet a lot of people from the community.
We had the chance to talk with our partners from Kauri, a team we are helping up with the development of Eventeum, a key tool for the ioCash project. Soon, there will be a webpage of Eventeum with the details of all its functionalities and roadmap. Stay tuned to not miss it.
We also spent some time with Pegasys team, one of our core technology partners, and talked about next steps and further collaborations.
We also had the chance to meet and exchange insights with people from the EEA, Consensys, Truffle, Santander Bank, LimeChain, Iden3 and many more, that served us to strengthen the relationship with the community and open doors for future collaborations.
In conclusion, the DevCon was an intense week where we gained some new technical knowledge that we can apply into our products, we confirmed the direction the community is heading towards, we shared our knowledge with the ERC 2020 and we strengthen our relationship with our partners and other companies building on Ethereum.
Published at Thu, 28 Nov 2019 09:12:51 +0000
{flickr|100|campaign}
