Skip to content

Commit

Permalink
Improve wording
Browse files Browse the repository at this point in the history
  • Loading branch information
5chdn committed Apr 4, 2018
1 parent e800b75 commit d23817a
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions EIPS/eip-999.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ created: 2018-04-04
---

## Simple Summary
This document proposes to restore the contract code of the `WalletLibrary` contract which was accidentally self-destructed with a patched version.
This document proposes to restore the contract code of the `WalletLibrary` contract at `0x863DF6BFa4469f3ead0bE8f9F2AAE51c91A907b4` with a patched version. The contract was accidentally self-destructed and renders a significant amount of Ether inaccessible.

## Abstract
The `WalletLibrary` contract was used by the Parity Wallet to reduce gas costs for users deploying multi-signature wallets on the Ethereum blockchain. It contained basic functionality such as confirming or revoking multi-signature transactions for any wallet deployed that depends on this library. The destruction of the library contract caused significant amounts of Ether and other assets to be inaccessible. This proposal suggest to restore the `WalletLibrary` by a [peer-reviewed](https://github.com/paritytech/contracts/pull/74) version to allow the owners of the dependent multi-signature wallets regain access to their assets.
The `WalletLibrary` contract was used by the Parity Wallet to reduce gas costs for users deploying multi-signature wallets on the Ethereum blockchain. It contained basic functionality such as confirming or revoking multi-signature transactions for any wallet deployed that depends on this library. The [accidental self-destruction](https://github.com/paritytech/parity/issues/6995) of the library contract caused significant amounts of Ether and other assets to be inaccessible. This proposal suggests restoring the `WalletLibrary` by a [peer-reviewed](https://github.com/paritytech/contracts/pull/74) version to allow the owners of the dependent multi-signature wallets regain access to their assets.

## Motivation
This proposal is necessary because the Ethereum protocol does not allow the restoration of self-destructed contracts and there is no other simple way to allow the affected users and companies regaining access to their tokens and Ether. In opposite to previously discussed proposals, this will not change any EVM semantics and tries to achieve the goal of unfreezing the funds by a single state transition as specified in the next section.
Expand All @@ -37,12 +37,12 @@ To verify the byte-code above, a patched version is deployed at [`0xfF7a1D565ff6
```

## Rationale
The design decision to restore the `WalletLibrary` contract code in a single state transition was made after lengthy discussions of [alternate proposals](https://gist.github.com/5chdn/a9bb8617cc8523a030126a3d1c60baf3) that explored different ways to improve the Ethereum protocol to allow contract revivals by adding different built-in contracts. It was eventually concluded that all of these proposals changing the EVM semantics around self-destructed contracts were introducing unwanted side-effects and potentially risks to the existing smart-contract ecosystem on the Ethereum platform.
The design decision to restore the `WalletLibrary` contract code in a single state transition was made after lengthy discussions of [alternate proposals](https://gist.github.com/5chdn/a9bb8617cc8523a030126a3d1c60baf3) that explored different ways to improve the Ethereum protocol to allow contract revivals by adding different built-in contracts. It was eventually concluded that all of these proposals changing the EVM semantics around self-destructed contracts were introducing unwanted side-effects and potential risks to the existing smart-contract ecosystem on the Ethereum platform.

It is assumed that this change is aligned with the interests both of (A) Parity Technologies that intended to provide a smart-contracts library for multi-signature wallets to last forever for it's users and (B) the users of the multi-signature wallets that intended to safely store their assets in a contract accessible any time they desire. Lastly, the client-side implementation cost of this proposal is estimated to be low. A sample implementation will be attached and linked in the following sections.
It is assumed that this change is aligned with the interests both of (A) Parity Technologies that intended to provide a smart-contracts library for multi-signature wallets to last forever for its users and (B) the users of the multi-signature wallets that meant to safely store their assets in a contract accessible any time they desire. Lastly, the client-side implementation cost of this proposal is estimated to be low. A sample implementation will be attached and linked in the following sections.

## Backwards Compatibility
This proposal introduces backwards incompatibilities in the state of the contract at `0x863DF6BFa4469f3ead0bE8f9F2AAE51c91A907b4`. The Ethereum protocol does not allow the restoration of self-destructed contracts. To implement this on the Ethereum blockchain, it is recommended to add the required state transition in a future hard-fork at a well defined block number.
This proposal introduces backwards incompatibilities in the state of the contract at `0x863DF6BFa4469f3ead0bE8f9F2AAE51c91A907b4`. The Ethereum protocol does not allow the restoration of self-destructed contracts. To implement this on the Ethereum blockchain, it is recommended to add the necessary state transition in a future hard-fork at a well-defined block number.

## Test Cases
To be implemented.
Expand Down

0 comments on commit d23817a

Please sign in to comment.