The goal of this project is the design and the implementation of a framework based on blockchain technology that allows for the detection of manipulations in images or videos. Images or videos can be manipulated, e.g., individuals (or other objects) can be added to or removed from an image, video frames (or sequences of video frames) can be added or removed from a video. Such a manipulation should be detected to ensure authenticity of content.
The manipulations should be detected based on the storage of specific image encoding parts in a blockchain which allows to re-check the validity of an image encoding. E.g., essential macroblocks or portions of some macroblocks of a JPEG-encoded image could be stored in a blockchain such that it can be checked whether an image still consists of those macroblocks or includes manipulated macroblocks. The project will first have to select and specify the kind of content type (e.g., images, videos) and the kind of manipulations to be considered in the scope of the project. Then one needs to design an approach and a software framework and implement a prototype and a demo application illustrating the approach, based on a specific blockchain platform that best suits the needs of the application.
The technology stack intended to be used may include:
- Ethereum Blockchain Infrastructure (Solidity, OpenZeppelin https://docs.openzeppelin.com/contracts/5.x, Hardhat https://hardhat.org/, ethers.js, Hyperledger Besu with QBFT proof-or-authority https://docs.besu-eth.org/private-networks on Linux of Windows, or - optionally - partially on Azure cloud infrastructure):
- Web Technologies for implementing Web-based applications (React, Typescript, Tailwind, DaisyUI, IPFS https://blog.ipfs.tech/)
- Image processing libraries like https://imagemagick.org/, using, e.g., perceptual hash support, e.g., https://github.com/science-periodicals/phash-imagemagick
Provided to the students: Optionally, virtual machine
Technologies: Blockchain Infrastructure; JPEG; MPEG; Web-Technologies; Docker; Image processing library; Video processing library;
Tags: Blockchain; Web technologies; Docker; Klas