This project consists of a python-based backend and Vue.js-based browser oriented frontend to allow users to store product information (production date, the manufacturer, etc.) into the IPFS and searching on the IPFS for information.   Say a customer bought some snacks from a canteen, but he found that the snacks had expired. It is difficult for him to defend his rights cause the canteen could deny selling these snacks. However, by deploying our system, all the product information could be submitted to the IPFS, which allows the customers to trace back the origin of the product.   Specifically, we design two kinds of frontends. One for the manufacturer to upload the product information to the IPFS. The other for the customer to trace back the origin of the products.   Technically, once a manufacturer uploads some product information, our python-based backend would interact with the infrua to store the information into the IPFS. Meanwhile, the backend would compute the hash value of product information and send it to the smart contract which is deployed in the Ethereum. The hash value would be stored as a cache with the form of dict{uuid, hash value}, where the uuid could be a simple description of the information. By utilizing the hash value, we connect the information between IPFS and the Ethereum. Once the customer wants to find the origin of some products (e.g., Cola_ECNU_711, which means cola bought from 7-11 in east china university), our backend would interact with the smart contract and find the corresponding hash value, which could help for finding the product information on the IPFS. Finally, the product information would be passed to our frontend and presented by the vue.js.   In the future, we plan to deploy our project into an eth2.0 blockchain, which would improve the efficiency of our project. With the improvement of the efficiency, not just food or drug information, our structure could be further used in large corporations, government, etc. for supervising their behaviors.

HEIBEN showcase

How it's made

During the new crown epidemic, the traceability of items is becoming more and more important. Although some people have made a blockchain-based item traceability system, it is either based on a consortium chain or the problem of the preservation of large amounts of data has not been resolved. This project is based on the item traceability system of IPFS and Ethereum. It separates the company's information and item information to ensure that a large amount of information is stored on IPFS, thus solving a large number of data storage problems. This project writes a smart contract to ensure the complete safe execution of data access, and then finds the information of the item in IPFS, and then uses a recursive algorithm to continuously recurse the parent item of the problem item from Ethereum and IPFS, and finally form a DAG

Technologies used