Roberto Infante

Author
+ Follow
since May 04, 2019
Merit badge: grant badges
For More
Cows and Likes
Cows
Total received
5
In last 30 days
0
Total given
0
Likes
Total received
1
Received in last 30 days
0
Total given
0
Given in last 30 days
0
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Roberto Infante

Hi Ludoviko,

you are right, there have been many cases of hacking, theft and malicious behaviour in the blockchain space by many parties: developers, crypto-exchange owners, etc. As it happens in other industries, the community is formed of a majority of good people and a minority of bad people that cause pain and damage to the rest. Not many people are probably aware of the Bitcoin MT GOX hack that in 2014 ended with the theft of $450M in bitcoin. And not too many people know about the hack to the Ethereum DAO, the first big scale Dapp, which in 2015 cost around $150M in investment losses and required a major blockchain fork to roll back the damage. These hackings happened before the big-boom of December 2017, when cryptocurrencies and blockchain became mainstream. In the last few months you might have heard other episodes, such as the suspicious death of the CEO of a Canadian crypto-exchange that was alledgedly the only person to own the private keys of the exchange accounts, with a loss for his customers of around $200M. These news definitely contribute to damage the reputation of cryptocurrencies and also to the blockchain industry. And I believe, given the hype on the technology and the economic value involved, it is very easy new episodes will happen again.
I believe most of the hackings are due to the general inexperience of the whole industry. You would think that the developers of the crypto-exchanges should be so experienced in cryptography that hacking should be very unlikely. Yet the fact that these hacking episodes have been relatively frequent, proves that the industry is learning "the hard way" because good practice has yet to be defined. For example, the famous Ethereum DAO hacking was launched against a project developed by some of the most experienced Ethereum developers at the time, who obviously did not forsee all the possible "bad scenarios" that could have happened.

In the last couple of years Ethereum and other blockchain technologies have become more robust. For example, Solidity, the main EVM smart-contract language, has phased out some of the most vulnerable features which were being exploited by attackers.

In my book I cover security extensively, especially in chapter 14, which is entirely dedicated to the topic. I explain the most common attack strategies and I recommend how you should defend against them. I also give many pointers for further learning.

Hopefully going forward smart-contract languages and tools will become more robust and hacking cases will become less frequent.
4 years ago
Hi Paul, thanks for your question.

Although it is probably not mainstream knowledge, bitcoin does allow you to create non-crypto application, however it is rather difficult, because the original bitcoin blockchain had been designed almost exclusively to support the bitcoin cryptocurrency. So generally only hardcore programmers venture in bitcoin Dapp land.

Ethereum was the first blockchain platform designed with the purpose of allowing developers to build any decentralized application (Dapp). Thanks to the introduction of the Ethereum Virtual Machine (EVM), developers can implement smart contracts in Solidity, a JavaScript-like language. Originally other languages such as Serpent (Python-like) and LLL (Forth-like) were also available, but have now lost traction. Recently it a new language called Vyper is gaining some followers. Basically a smart contract looks like a class of any object-oriented language: it has a constructor, state variables (similar to member variables), functions (similar to methods) and events.

A fork of Ethereum called Quorum was developed by the investment bank JP Morgan to allow privacy and better scalability. It is used mainly by financial institutions.

Other Distributed Ledger Technologies (DLT) such as Hyperledger and Corda have appeared in the last few years. They offer various functionality to support corporate application requirements such as privacy and scalability. I have briefly covered them in the last chapter of my book, if you are interested to learn more.

4 years ago
Hello Carl, thanks for your question.

I believe successful use cases will act as catalyst for the growth of the technology. Although there have been various good niche examples in the fields of supply chain tracking, ownership tracking, international trade finance, there has not been yet a use case which has caught the attention and the imagination of the general public. As soon as it happens, the adoption will speed up. Otherwise the growth will be slower and "organic" and will go through many parallel experiments which will validate various competing Distributed Ledger technologies. I am currently involved in various blockchain projects and I can see a keen interest by business people, however the lack of landmark implementations and the crypto crash of 2018 have made non-technical people a bit more wary than they were in 2017. Hopefully, with the new crypto rally the industry will regain some confidence in the technology.
4 years ago
Hi Michael, thanks for your questions.

The books is self contained and with very low entry requirements. You do not need to know cryptography and I assume you do not know anything about blockchain technology: I cover all the foundations in the first three or four chapters. It is useful if you know a programming language and have some development experience, because you will be able to enjoy the following chapters on the Solidity language, which allows you to write smart contracts, and on the full Dapp development cycle and related tools. You will also be able to build three or four Dapps I have presented in the book: a small cryptocurrency, a crowdsale application and a Voting Dapp where you will see most of the concepts coming together.

I cover mainly unit testing, both in a dedicated chapter where I used the JavaScript mocha framework, and in a subsequent chapter on Truffle, which offers unit testing functionality. Although I show briefly how to perform full integration tests, it is not the focus of my book.
4 years ago
Hello Ludoviko, thanks for your question.

The quick answer is that blockchain technology is very young: although it appeared in 2009 with the launch of bitcoin, the first blockchain platform that allows to build any Decentralized application beyond crypto-currencies is Ethereum, which is less than 5 years old. When it was reaching a critical mass of developers, around the end of 2017, the crypto-crash happened and this scared off investors, who decided to take a break from this technology. Also, other competing decentralized ledger technologies (DLT) such as Hyperledger and Corda have appeared, so there has been a fragmentation of efforts. On the other hand, the new crypto rally which has started a couple of months ago seems to have injected new enthusiasm into the technology and new projects have started to appear. Therefore, I believe this is the best time to learn the technology before it becomes mainstream.
4 years ago