1/ ERC-20 token standard approve() has caused an unnecessary cost of $53.8M for #Ethereum and #DeFi users

This is bad. Continue reading why and how to avoid this in the future.

👇👇👇

2/ Before you go all rage on the flaws of my analysis, please read the whole Twitter thread for disclaimers and caveats.
3/ approve() is an unnecessary step of ERC-20 tokens when they interact with smart contracts.

You know this because when you do a Uniswap trade you need press two transaction buttons instead of one.
4/ Why there is approve() - you can read the history in this Twitter thread

https://t.co/ZHXzPBbqJJ
5/ I queried all approve() transactions on Google BigQuery public dataset and calculated their ETH cost and then converted this to the USD with the current ETH price.
6/ These queries were made possible to awesome @EthereumETL team. They have created Google BigQuery dataset from real-time blockchain data. You can query over terabytes of Ethereum data FOR FREE.
7/ Here are instructions on how to execute your own queries:

https://t.co/YnK1p8u75n

(But links are outdated because Google Cloud has new UI)
8/ Total transaction on #Ethereum blockchain: 989,461,092

Woo! One billion transactions will be done in a few days!
9/ Total ERC-20 transfers(): 304,382,558

Includes only Externally Owned Accounts, EOAs.
10/ Total ERC-20 approves(): 14,921,106

Includes only Externally Owned Accounts, EOAs.
11/ The gas cost ERC-20 approves():

41327.870139658684 ETH
12/ Here is my query

https://t.co/FqNWBAxjwt
13/ You can query Ethereum transactions that call a particular smart contract function by the 4-byte signature of the function that is 1st parameter of tx data field.
14/ Binary function signatures are 4-bytes keccak256() hash of the @solidity_lang signature string. Here is an example:
15/ If you are a @solidity_lang or Vyper developer, consider ditching ERC-20 and include alternative token standard in your next token.

Alternatives for ERC-20 include:

ERC-777
ERC-667
ERC-827
ERC-223
(did I miss any?)
16/ Most of the new token standards, like ERC-777 are backwards compatible and work with ERC-20 enabled centralised exchanges.

Centralised exchanges do not need to do anything to support these new, better, token standards that make smart contract and #DeFi interactions safer.
17/ Or let's put it this way...

Every time someone creates a new ERC-20 token, hundreds of thousands of dollars die.

Let's actively demanding non-ERC 20 tokens from developers.

And if that does not work I suggest we start punching ERC-20 developers to face over the internet
18/ Newer token standards may "increase the attack surface", but in practice, this has not been a problem for high-quality #DeFi projects since 2018 or so.
18/ Note that raw approve() cost calculation comparison to newer token standard is not 1:1.

Newer token standards need some similar mechanism to pass user data as the part of the transaction, but this cost is lower compared to additional approve() tx.

Prove me wrong.
19/ FIN

CC @dmihal @FrancescoRenziA @abcoathup

Now I am going to climb the mountain, get fresh air and visit monkies

More from Crypto

Excited to share our 2020 #Bitcoin review.

2020 will be remembered as the year the long fabled institutions finally arrived and #Bitcoin became a bonafide macroeconomic asset.

Below are the top highlights of each month for Bitcoin’s historic year.

1/


Bitcoin is now at all-time highs capping off an extremely successful year.

But it was by no means stable ride up.

2020 was a historically volatile year.

@YoungCryptoPM and I provided a detailed overview of every month of 2020 in all its

Jan.

3 days into the new year the US assassinated Iran’s top general Soleimani.

BTC surprisingly reacted to the events behaving like a safe haven as the risk of war increased.

The events provided the first hints of BTC potentially having graduated to a legitimate macro asset.


Feb.

COVID-19 reached a tipping point causing markets to crash.

BTC’s correlation with the S&P 500 reached an ATH in the following weeks.

This is when everyone learned BTC was not a recession hedge, it was a hedge against inflation and loss of confidence in fiat currencies.
https://t.co/JB7dJ3qp6M


Mar.

Financial markets in free fall.

The liquidity crisis was so severe BTC experienced one of it’s worst days ever.

Now known as Black Thursday, on March 12, BTC plummeted as much as 50% to below $4,000 at its lowest point on the day.

BTC closed the day down 40%
1/ @MIT discussing the need for blockchain gateways to achieve interoperability across different blockchain networks, and to support the cross-blockchain mobility of virtual assets

https://t.co/PbjQkSlTT3

@quant_network are collaborating with MIT in the creation of ODAP

$QNT

2/ "In order for blockchain-based services to scale globally, blockchain networks must be able to interoperate with one another following a standardized protocol and interfaces (APIs)"

Gilbert founded ISO TC307 which 60 countries are working towards standardizing the interfaces


3/ "We believe that a blockchain gateway is needed for blockchain networks to interoperate in a manner similar
to border gateway routers in IP networks. Just as border gateway routers use the BGPv4 protocol to interact with one another in a peered fashion we believe that a...

4/ blockchain gateway protocol will be needed to permit the movement of virtual assets and related information across blockchain networks in a secure and privacy-preserving manner"

You can read more about the gateway protocol ODAP in this 21 tweet


5/
"We motivate the need for blockchain gateways and blockchain gateway protocols in the following summary:

✅Enables blockchain interoperability:
Blockchain gateways provide an interface for the interoperability between blockchain/DLT systems that operate distinct consensus...

You May Also Like

Recently, the @CNIL issued a decision regarding the GDPR compliance of an unknown French adtech company named "Vectaury". It may seem like small fry, but the decision has potential wide-ranging impacts for Google, the IAB framework, and today's adtech. It's thread time! 👇

It's all in French, but if you're up for it you can read:
• Their blog post (lacks the most interesting details):
https://t.co/PHkDcOT1hy
• Their high-level legal decision: https://t.co/hwpiEvjodt
• The full notification: https://t.co/QQB7rfynha

I've read it so you needn't!

Vectaury was collecting geolocation data in order to create profiles (eg. people who often go to this or that type of shop) so as to power ad targeting. They operate through embedded SDKs and ad bidding, making them invisible to users.

The @CNIL notes that profiling based off of geolocation presents particular risks since it reveals people's movements and habits. As risky, the processing requires consent — this will be the heart of their assessment.

Interesting point: they justify the decision in part because of how many people COULD be targeted in this way (rather than how many have — though they note that too). Because it's on a phone, and many have phones, it is considered large-scale processing no matter what.