Watermarking in multimedia
The aim of this activity is to try out both sides of digital watermarking: inserting visible and invisible watermarks into an image and attempting to remove or damage them. The exercise combines graphical work in GIMP, image processing in Python and measuring the robustness of LSB and DCT watermarks.
Visible watermarks are removed manually in GIMP and automatically using blurring, inpainting and colour masks; the results are evaluated using the PSNR and SSIM metrics for the whole image and for the area of the original watermark (ROI). Invisible watermarks are inserted into the least significant bits (LSB) and into the frequency domain (DCT) and then exposed to a JPEG compression attack.
What you will learn in this task
- The difference between visible and invisible watermarks and between watermarking and steganography.
- The trade-off between invisibility, robustness and capacity of a watermark.
- Creating a visible watermark and the effect of opacity and placement.
- Removing a watermark in GIMP using the Clone Tool, Healing Tool and Resynthesizer (Heal Selection).
- Automated watermark removal – Gaussian blur, Telea inpainting, colour mask and morphological operations.
- Evaluating image quality using the PSNR and SSIM metrics.
- Inserting and extracting a message using the LSB method, bit planes of an image.
- A DCT watermark and its robustness against JPEG compression compared to LSB.
Ongoing tasks are
- First functional test
- GIMP – Creating a watermark and Opacity experiment
- GIMP – Clone Tool
- GIMP – Healing Tool
- GIMP – Resynthesizer / Heal Selection
- GIMP – Evaluating the GIMP results
- Automated removal and metrics – Single and repeated visible watermark
- Automated removal and metrics – Control image for three methods
- Automated removal and metrics – Simple – Gaussian blur
- Automated removal and metrics – Medium – Telea inpainting
- Automated removal and metrics – Colour mask, morphology and Expert
- LSB, DCT and robustness – LSB message and capacity
- LSB, DCT and robustness – Bit planes
- LSB, DCT and robustness – JPEG attack on LSB
- LSB, DCT and robustness – DCT watermark and JPEG
Workstations available for the task
The maximum time required for the lab task is 70 minutes.
Etický hacking
Laboratoř není určena k vytvoření postupů a návodů na provádění kybernetických útoků. Cílem je demonstrativně najít a ukázat zranitelnosti současných počítačových a síťových technologií různými kybernetickými útoky. Ukázat, jak k takovým útokům dochází, a co se při nich odehrává a jaké jsou možnosti takovým situacím předcházet.
Note: the lab needs approx. 5 minutes to start (preparing virtual mechines).