The present-day digital arena faces increasing risks of financial frauds, theft, etc. Such crimes call for reliable ways to safeguard people’s digital assets while transferring them. FileHub is a decentralized solution that would allow users to share only the Encrypted Hash of the file and the recipient can then decrypt it by using their unique key. The service employs IPFS(Inter-Planetary File System) to store the documents in a decentralized database. The encrypted hash of the IPFS hash can be then sent to the recepient, who can access his file on the same website. The data can be retrieved only by the trusted recipient and the users themselves. The Encrypted Hash of the location of the document on the IPFS is stored on Ethereum using a smart contract. This enables us to keep track of the file on the IPFS.
FileHub acts a decentratralised peer-to-peer file transfer system which uses IPFS, CryptoJS, and Ethereum to secure user data.
I wanted to integrate Metamask Webwallet with my project. But the codebases were old and not maintained properly. The docs did not help me much. After a lot of trial and error and going through 100s of StackOverflow pages I was able to make it work. I am not very good at writing large chunks of react code, having only been used to writing it for the front end so far. But
I was somehow able persevere and integrate the IPFS node with my project using React. Surprisingly the easiest part of the project was the Encryption/Decryption where I used CryptoJS to easily encrypt the IPFS hash and then use Web3 to deploy it to my smart contract.
Discussion