Assessment Organization Service Based on Ethereum Platform Pavel I. Danilin, Artur A. Lukin, Elena N. Reshetova Abstract. This work is dedicated to the description of principles of construction a decentralized application designed for experts' assessment of different kinds of works based on Ethereum blockchain platform. The activity of experts' as- sessment is organized by generation and publishing a smart contract and gen- eration of a web widget for interaction with it. We have developed a web ser- vice for the automatization of the process. The blockchain technology gives the opportunity to store reviews securely and exclude forgery. Keywords : blockchain, cryptocurrency, distributed ledger, mining, smartcon- tracts, decentralized applications, Ethereum 1 Introduction The developed service is a software module that can be used to organize assessment activity. This module allows you to securely store reviews on various types of work in electronic form, such as: innovative projects, essays, diploma and course works. The blockchain technology will ensure the safety, immutability of these reviews. We have identified three parties involved in the process of reviewing a work. These are the author of the work, the expert assessing the work and the platform on which the work was done or at which we work (hereinafter simply referred to as the "platform"). A platform could be a university, an innovative projects competition, or a conference). All these parties are interested in the introduction of the provided service. The author of the work will be sure that his work will be preserved in the bockchain and correctly assessed by the expert. For the expert, the blockchain keeps the history of his assess- ments, that is, creates a kind of resume that confirms his competence. And for plat- forms, this service will provide transparency in the assessment of works. This is a step towards decentralization in assessment issues. In this article, we first describe the general concepts of the system. Then the fol- lowing subsystems for creating smart contracts and web widgets will be described. Finally, the results of the project will be presented. 2 Common concepts The organizers of the assessment process use their private solutions to automate it. Usually this is a web portal, using which authors load projects, experts assess. In such a case it might be possible to change the grade, because you cannot verify the func- 292 tionality of the private system the platform uses. Our solution, using the properties of blockchain, allows to guarantee to a certain extent the transparency of the assessment process. While working on a project it was necessary to decide on the blockchain platform on which our solution will be based. The main criteria were as follows: 1. The possibility for creating and executing smart contracts 2. The availability of tools for interaction with the site and a smart contract 3. The size of platform capitalization 4. The size of the platform community The first two criteria were necessary for the technical side of our project, the last two were to ensure the reliability of the platform. After comparing the options, we chose the Ethereum platform[1][2] as the most promising and popular blockchain platform, supporting smart contracts, we have to- day. The user of our service is a platform administrator, on which the assessment takes place. The administrator interacts with a web page, enters the necessary parameters for the assessments and configures some properties of the smart contract. The service creates a smart contract, loads it into the Ethereum network, and loads the archive with the source files of the widgets to interact with the smart contract. To use the widgets, it's enough to insert their contents into the source files of the site. To interact with widgets, you need the Metamask[3] extension installed in the browser. This ex- tension allows you to interact with the Ethereum network, taking responsibility for communication with an Ethereum network node. Web-site Ethereum blockchain Administrator network Assessment management widget Author Project Download Widget Metamask Smartcontract Expert Assessment Assessment Widget Viewer Viewing Viewing Widget Fig. 1. Interaction with DAPP diagram In the course of our work, we identified two subsystems of the product - a subsystem for the generation of a smart contract and a subsystem for generating a widget. 293 Assessment Organization Service Based on Ethereum Platform Smart contract Web widget Platform administrator generation subsystem generation subsystem Smart contract generation Widget Web UI Dapp parameters Contract address, abi generation Smart contract deployment Dapp Fig. 2. System component diagram 3 Smart contract generation subsystem This subsystem is a Node.js[4] module that processes post requests that accept the assessment parameters. Based on the received parameters, the module generates the source code of the corresponding smart contract on the Ethereum smart contract pro- gramming language of Solidity. The generated text of the smart contract is compiled into a bytecode and placed on the Ethereum network using Metamask in the Ethereum network block. The resulting address and smart contract interface are passed to the web widget creation subsystem. 4 Web widget generation subsystem This subsystem is a Node.js[4] module that processes post requests, accepts the as- sessment parameters, the address and abi of the smart contract. The first query creates a cache object that contains the widget templates. The module makes some substitu- tions into the templates and forms the source code for the widgets, that are archived and sent in response. 5 Conclusion In this paper, a description was given of the principles for constructing a decentralized application designed to organize expert evaluation of various types of projects based on the Ethereum platform blockchain platform. The mechanism of an expert assess- ment based on blockchain was demonstrated in work. Now assessment processes can be organised based on blockchain that allows to store securely the reviews and ex- cludes possibility of forgery 294 References 1. Ethereum Project. Ethereum Blockchain App Platform. https://www.ethereum.org/ (Ac- cessed 2017-06-25) 2. Ethereum White Paper. White Paper https://github.com/ethereum/wiki/wiki/White-Paper (Accessed 2017-06-25) 3. Metamask. Metamask Brings Ethereum to your browser https://metamask.io/ (Accessed 2017-06-25) 4. Node.js. Node.js https://nodejs.org/en/ (Accessed 2017-06-25)