The Polkadot Claims Audit

2019-08-07 in  Polkadot Audit, Security
Avatar by Polkadot
Image

Web3 Foundation engaged Chain Security for an audit of the Polkadot Claims smart contract. The audit found 0 Critical, 0 High, 2 Medium and 9 Low level issues, all of which have been resolved in the latest commits to the code.

The Polkadot Claims contract is an Ethereum smart contract that allows holders of the DOT allocation indicator token to claim their balances of DOTs to a Polkadot public key ahead of Polkadot genesis.

In order to launch Polkadot in a transparent and decentralized way, an Ethereum smart contract was required to hold data necessary to the genesis of Polkadot including the Polkadot public key to associate to a specific allocation, the index of the public key, and the vested status of the allocation.

Submission of this data to the Ethereum blockchain enables the community to generate and verify the genesis chain specification themselves in an independent manner. It is an integral piece to the launch of Polkadot in a transparent way.

For this reason, the security of the contract was of the utmost importance, especially regarding the certain immutability of the state of the contract after claiming actions have taken place.

To guarantee that the Claims contract is secure and functionally correct, ChainSecurity formally verified the contract's code with respect to its intended specification. In more detail, ChainSecurity formalized 12 critical functional requirements and verified them using their state-of-the-art tool for formal verification. Examples of the properties that were verified include the immutability of the state after the initialization, access-control requirements, and safety of the contract set-up period.

In addition to the formal verification, the full audit report details each of the issues that were found in the categories of Security Issues, Trust Issues, and Design Issues. It also describes the fixes that were applied to each and reasoning of the Web3 Foundation.

You can find the full audit report here.

arrow_upward
Related articles
Polkadot
XCM Part II: Versioning and Compatibility

Polkadot founder Gavin Wood inspects one interesting aspect of XCM in-depth: how XCM can change over time without introducing breakage between the very networks it is meant to connect....

Polkadot
XCM: The Cross-Consensus Message Format

This primer on XCM, Polkadot's inter-chain messaging format is the first in a series of articles explaining what it does, how it works, how to use it, and what it could become....

Kusama
Kusama’s First Batch of Parachains: An Interview with the Teams

This blog contains information provided by the projects Karura, Moonriver, Shiden, Khala, and Bifrost, in order of when they won their parachain slot. Discover what network each does, their achievements so far, and the phases ahead on their respective roadmaps....

Subscribe to the newsletter to hear about updates and events.
mail_outline
* To see how we use your information, please see our privacy policy.