Skip to content

This system gives users an option to encrypt their personal information with their piece of art and register it on the blockchain, at the same time using image processing algorithms makes sure no duplicacy or piracy of your work.

Notifications You must be signed in to change notification settings

Yash2412/copyright-management

Repository files navigation

Poster


Walkthrough

Copyright Management System using Blockchain

Image theft and copyright issues have been increasing rapidly with the rise of the internet. Therefore, copyright protection of images has become an unavoidable issue. Blockchain is a distributed database that provides a secure yet transparent way to protect any type of records. Our system gives users an option to encrypt their personal information with their piece of art and register it on blockchain, at same time using image processing algorithms it makes sure no duplicacy or piracy of your work.

Project Overview

  • Firstly we have to provide the details of owner i.e. owner name, owner email, image title and image.
  • By clicking on submit it will checks in the Blockchain for duplication and privacy using Perceptual Hashing technique.
  • If the selected image is registered in the blockchain it will stop execution by showing the name of its original owner, else the image will be sent to the Flask server (localhost:5000) for its watermarking by using Discrete Cosine Transform (DCT) and Discrete Wavelet Transform (DWT).
  • A QR Code is generated by using the owners personal info and the perceptual hash of the image then this QR will be watermarked with our image.
  • After that the generated QR code and watermarked image is displayed on screen.
  • Down there it asks permission for uploading generated watermarked image to IPFS(InterPlanetary File System) where IPFS stores the image in a folder and gives us a unique hash address for the uploaded image.
  • Now, we can deploy our watermarked image to our Blockchain.
  • When we click on Deploy to Blockchain button, Metamask will ask for the deduction of ethers from our linked account.
  • When we are done with the payment, the image will be successfully deployed to the Blockchain.

Setup

0. Clone this repository using command git clone https://github.com/Yash2412/copyright-management/ into your system.

1. Setting up local Blockchain And Metamask

  • Open Ganache and create a new ethereum workspace
  • Ganache will give 10 free accounts, copy the private key of any account.
  • Install and login to Metamask extension on your browser.
  • Click on import account under my accounts then paste the copied private key.
  • Under networks section add a custom RPC with url HTTP://127.0.0.1:7545.
  • Your local Blockchain has started on http://localhost:7545/

2. Running Flask Server for Digital Image Watermarking

  • Open terminal window in the current working directory.
  • Change directory to /watermark by cd watermark.
  • Create a virtual environment in this directory using virtualenv python package.
$ pip install virtualenv
$ virtualenv venv

$ python -m pip install -r requirements.txt
$ venv\Scripts\activate
  • Running Flask Server by
python main.py

3. Compiling and Migrating Smart Contract using Truffle

$ npm i

$ truffle compile
$ truffle migrate

4. Running Lite Server on http://localhost:3000/

npm run dev

About

This system gives users an option to encrypt their personal information with their piece of art and register it on the blockchain, at the same time using image processing algorithms makes sure no duplicacy or piracy of your work.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published