The 2nd Parity Multi-sig Wallet $300m Error

The students in this class have written this page to analyze the events of Nov 6th 2017 which led to roughly 300$M of ethereum to become frozen, i.e. unable to be spent.

On July 20, 2017, Parity released a bug fix to their multi-signature wallet contract. It has been Parity’s tradition to implement clever contracts that perform governance functions such as enforcing rules about how transactions can be made from a jointly-owned Ethereum wallet. The main task is to allow petty-cash transactions, i.e., transactions for small amounts of money, to be made by any one of several authorized spenders, but to enforce multiple signatures on transactions that exceed a given threshold.

The parity contract is divided into two parts, a library which can be placed on the Ethereum blockchain once and referenced by anyone, and a specific instance of a Wallet which is created by any group who wants to share Ether.

The contract has been prematurely optimized in order to save a small amount of space and code.

find the code and paste it here

The semantics of the “kill” operation

The user devops199

Explain the transactions Before the kill transaction.

The kill transaction

find the transaction and point it to

transactions afterwards

the github issue

a search for the wallets effected by this

A possible fix