Firemark: a Java Tool for SVG Watermarking

Battiato S., Di Blasi G., Gallo G., Messina E.

Digital images are easy to copy, reproduce, edit and maliciously process. For this reason watermarking has emerged as an important technology for protecting copyright of multimedia products. A watermark is a digital signal carrying information about the copyright owner that is (or at least should be) permanently embedded into a digital product, making the product robust to any alteration (deliberate or unintentional) of its content.

Watermark data embedding shouldn't cause the multimedia product to suffer severe quality degradation. In addition to bitmap images, many multimedia applications use vector graphics images (digital maps, GIS data, 2D graphics, cartoon images and SVG). Many watermarking methods embed a watermark by applying luminance alterations to the image. These watermarking methods aren't suitable for vector graphics images because in such images watermarks are perceivable and easily removed.

Vector graphics images usually consist of large homogeneous regions, which often have uniform luminance value. Thus, even a small perturbation on the luminance values is easily visible in these regions. Further, the most important information of vector graphics is stored in the contours. Classical watermarking methods embed the watermark in the homogeneous regions. Even if we could achieve minor visual changes on such images by embedding a low-power watermark, a pirate could easily corrupt the watermark (by applying a malicious perturbation that would affect only the homogeneous region intensity). Thus, for these image types, altering the contours (and not the luminance) is essential for imperceptible and robust watermarking.

Recently SVG has been used for rendering of real raster images (see for example [2], [3], [4]), so the problem of watermarking a SVG file is of great interest, because the same information (in this case an image) could be today found in raster or vectorial form.

We present a Java tool for embedding and detecting watermarks in SVG images and present results from simulated attacks. The tool implements the approach proposed in [5], adapting it to the special case of SVG file. Because an SVG file is composed by several primitives containing vertex points, it is not possible to simply remap the technique proposed in [5] to the problem at hand: several different cases have to be considered.

The proposed algorithm embeds watermarks in the vertex points found in the SVG file slightly modifying the vertex coordinates. It embeds the watermark in the magnitude of the curve's Fourier descriptors to exploit its location, scale, and rotation invariant properties. It is well proven that working in the spectrum domain guarantee higher robusteness degree. Watermark detection is blind (the watermark detection procedure doesn't need the original SVG file).

The technique has certain similarities to bitmap image watermarking in the discrete Fourier transform (DFT) domain. However, it's essentially different because it can be applied to SVG rather than bitmap images. Furthermore, Fourier descriptor watermarking problems differ from DFT bitmap image watermarking problems. For example, watermarks can cause curve discontinuity or curve self-crossing. Such undesirable side effects don't exist in DFT bitmap image watermarking.

Figures below show an example of our algorithm. The first figure shows the original SVG file, the second one shows the watermarked version.

To allow the reader to directly test the quality of our algorithm an applet is free available at the URL [1], at the same URL is also available for download a Java application.

[1] Battiato S., Di Blasi G, Gallo G., Messina E. the Firemark applet http://www.dmi.unict.it/~gdiblasi/firemark/firemark.html, Java application http://www.dmi.unict.it/~gdiblasi/firemark/firemark.jar

[2] Battiato S., Di Blasi G., Gallo G., Messina G., Nicotra S. SVG Rendering of Digital Images: an Overview. In poster proceedings of ACM/WSCG2005

[3] Battiato S., Costanzo A., Di Blasi G., Gallo G., Nicotra S. SVG Rendering by Watershed Decomposition. In proceedings of IS&T/SPIE Electronic Imaging 2005

[4] Battiato S., Barbera G., Di Blasi G., Gallo G., Messina G. Advanced SVG Triangulation/Polygonalization of Digital Images. In proceedings of IS&T/SPIE Electronic Imaging 2005

[5] Solachidis, V., Pitas, I. Watermarking Polygonal Lines Using Fourier Descriptors. IEEE CG&A, Volume: 24, Issue: 3, May-Jun 2004

Valid XHTML 1.1!