Verify the integrity of your files with Polygon File Verifier. Import file and get its hash. Choose to store the hash in the blockchain or verify if it has been stored before with its address of origin. Ensure your downloads are exactly what they pretend to be!
A lightweight dapp with the purpose of verifying files and ensuring you have the correct ones with the usage of SHA256 algorithm.
SHA256 hash is calculated of an imported file. Then you have the option of:
Stored information in the blockchain are address of origin and block number which can be displayed in the application. We thought blockchain is a perfect storage for such important information as a file integrity hash, because it's there forever unchanged.
This way, you can ensure the files you download or find are the right ones you expect, if you can get a published address/hash from the original developer.
Use cases:
Please note: this project is made by junior developers of Dobby Labs www.dobbylabs.com We are yet unsure if we want to expand on this project but we would be open to cooperation and we would love to hear from you! If you are interested in cooperation of any kind you can find the contact at our website.
We are using npm packages for the frontend with lite-server for local deploy. Contract is written in solidity and deployed on Polygon Mumbai Testnet https://github.com/Simecekk/fileOriginValidator with hardhat.
Considering contract, we chose SHA256 as the hash to save because it fits into bytes32 solidity value types perfectly and there is a minimal chance of collisions with this type of hash. Frontend is interacting with blockchain with ethersjs library. Bootstrap serves as the styling skeleton for our project. Metamask wallet is integrated via Ethereum Provider API. SHA256 hashes of files are generated with Crypto.subtle. One person took the responsibility of building the contract and its deployment. Next developer initiated the project frontend and made a simple application which allows for connecting metamask wallet, meanwhile the third dev started working on the hashing using javascript libraries.
Then we grouped the tasks together and continued building the whole project, by expanding Metamask functionality, visuals and frontend logic. For graphics we are using royalty free images and icons as we do not have a dedicated designer in our team. Not only exclusive to, possible expansions are: adding a backend where we store information about file searches, like counters of how many times each file were searched. Perhaps even some hosting of the files themselves to store them. Adding more wallets support and expand hash algorithms (including contract itself). IPFS could also be included in our project. This project is just the rough MVP from which a more powerful verifying tool could be built upon.