Development of a Blockchain-based Digital Asset Exchange System

Internship Topic

Context

The management of the flow of assets (goods, physical components, digital data and assets, etc.) in a distributed and efficient manner while managing the trust between the organizations (suppliers, integrators, service providers, resellers, clients, customers, users, etc.) is a key prerequisite for creating a trustworthy supply chain, since trusted centralized 3rd party organizations brings single point of failure and extra costs. In particular, the correct and timely knowledge of when assets are ordered, sent and received among organizations is important in order to change safely the assets’ ownership from one organization to another.

Blockchain technologies are suited to enact workflows in such systems since in each stakeholder can register ownership exchanges (i.e. transactions) into a distributed ledger (i.e. shared registry) which is collectively maintained.

Objective

The objective of this internship is to design and to prototype a blockchain-based asset exchange system. The development will be made in the Ethereum blockchain framework using the smart contract language Solidity. This system will target documents as assets and will take into account their exchange and their sovereignty. The developed asset exchange system will be the base for a future PhD study focusing on global security of blockchain systems.

Methodology

The intern will have the following responsibilities: (1) preparing a state-of-the art about blockchain-based asset exchange systems, (2) developing a prototype system (together with its automated tests) running on a single node on one computer, (3) finalizing the design of the system and testing it on several nodes running on several computers.

Competences

  • Being Master 1 or 2 in Computer Science/Engineering.

  • Knowledge about distributed systems and distributed computation in general.

  • Knowledge about the blockchain technology and smart contracts is a plus.

  • Good experience in programming (Java, JavaScript, Phyton or C++)

Means used: distributed systems, distributed computation

Languages: Solidity, JavaScript, etc.

Software: Ethereum, Geth, etc.

Level required: Bac + 4/5

Duration: 6 months

Formation required: Engineering / Masters

Possibility of pursuing a thesis: Yes

Venue of the internship: CEA, Centre de Saclay Nano-Innov, 91191 Gif-sur-Yvette, France

Contacts

Related