Robust Image Obfuscation for Privacy Protection in Web 2.0

advertisement
Robust Image Obfuscation for Privacy Protection in Web 2.0
Applications
Andreas Pollera , Martin Steinebacha and Huajian Liua
a Fraunhofer
Institute for Secure Information Technology, Darmstadt, Germany
ABSTRACT
We present two approaches to robust image obfuscation based on permutation of image regions and channel
intensity modulation. The proposed concept of robust image obfuscation is a step towards end-to-end security in
Web 2.0 applications. It helps to protect the privacy of the users against threats caused by internet bots and web
applications that extract biometric and other features from images for data-linkage purposes. The approaches
described in this paper consider that images uploaded to Web 2.0 applications pass several transformations, such
as scaling and JPEG compression, until the receiver downloads them. In contrast to existing approaches, our
focus is on usability, therefore the primary goal is not a maximum of security but an acceptable trade-off between
security and resulting image quality.
1. MOTIVATION AND CHALLENGE
Images users upload to Web 2.0 services (e.g. online social networks) raise many questions of privacy. They
are often a snapshot of non-public figures in private settings and reveal sensitive private information about the
depicted persons. Photos tell the viewers where and when a certain occurrence took place, who participated in
particular actions, and which relationships exist among the persons. Moreover, some images may be offensive or
embarrassing. As a consequence, users have to care about what they and their contacts share. To protect their
privacy, users have to control the image distribution inside and among these Web 2.0 services, and they have to
trust the service operators.
Current developments in the industry intensify the users’ privacy problem: Biometric software is making
its way into Web 2.0 applications, allowing new ways to link personal data. A first step is facial recognition,
e.g. introduced by the social network Facebook in June 2011.1 With facial recognition, a service provider can
automatically link uploaded images with other personal information of the identified persons. Pioneers of Web
2.0 facial recognition software like Polar Rose or face.com offered similar web services for social networks and
other Web 2.0 platforms several years ago.
Facial recognition will spread into more and more applications: For instance, facial recognition will become
part of augmented reality software on mobile devices, allowing device owners to instantly access personal data
of persons captured with the device camera - even of unknown persons they meet somewhere in public places.2
Besides that, the performance of biometric systems improves with the steadily increasing quality of captured
digital images. The systems will also benefit from 3-D imaging in consumer electronics enabling the software to
extract new biometric features e.g. from facial contours.
The concept of robust image obfuscation, we propose in this article, helps to tackle these privacy issues.
Designed for the use in end-to-end security mechanisms, we consider robust image obfuscation as a key concept
allowing users to take privacy protection into their own hands when distributing images through Web 2.0 services.
By an end-to-end security mechanism for images we mean that a sender obfuscates images with robust image
obfuscation, before uploading them to Web 2.0 services such as online social networks. With the aid of a key
distribution scheme, the sender defines who is able to de-obfuscate the image and thus belongs to the group
of intended receivers. The obfuscation prevents particular malicious image processing like the extraction of
Authors’ contact information:
Andreas Poller: andreas.poller@sit.fraunhofer.de
Martin Steinebach: martin.steinebach@sit.fraunhofer.de
Huajian Liu: huajian.liu@sit.fraunhofer.de
(a)
(b)
(c)
(d)
(e)
Figure 1: Robust image encryption of Li and Yu applied to JPEG: (a) original image, (b) encrypted image, (c)
decrypted image after applying JPEG compression with quality factor 90 (PSNR: 26 db), (d) with quality factor
50 (PSNR: 25 db), (e) scaling down to 90% of the original size (PSNR: 23 db)
biometric features or other misuse by Web 2.0 service providers and third parties. In this paper, we focus on the
challenges of the image obfuscation part. For key distribution, several approaches already exist, as we describe
in 2.
For Web 2.0 service providers, image obfuscation shall be transparent. Processing an obfuscated image must
not differ from processing a non-obfuscated image from a technical point of view. The obfuscation shall not
interfere with web application functions, like commenting images or painting notes in an overlay image.
On the other hand, we have to assume that an image passes considerable transformations on its way from
the sender to the receiver through a Web 2.0 service mashup. Consequently, the applied image obfuscation has
to be robust against those image transformations, at least against scaling and JPEG compression with changing
quality factors. Current image encryption techniques can not achieve this robustness to a sufficient degree, as
we explain in Section 2, although they allow a high level of protection for the content.
Robust image obfuscation weights security against robustness. While it cannot achieve the security level of
current image encryption algorithms, it offers a certain level of security and robustness at the same time. This
feature of robust image obfuscation is necessary for the use in current Web 2.0 applications and services.
In our research, we investigate obfuscation algorithms that are robust towards scaling and JPEG compression.
A single algorithm alone may not deliver a satisfying level of security, but it can serve as a primitive we can
combine with others to improve the protection of the image content.
In this paper, we present our first results on robust image obfuscation algorithms: Permutation in the spatial
domain (Section 5) and channel intensity modulation (Section 6).
2. RELATED WORK
Marko Hassinen and Petteri Mussalo suggested a concept for client-to-client security in web applications.3 They
described a scenario where an applet in the web browser of a user encrypts textual data in HTML input fields
before transmitting them to a web server. If another web browser receives the data later on, the applet is used
again to automatically decrypt the data on the client, if a certain key is available for the user. “Scramble!” is a
similar proposal for a transparent end-to-end encryption of textual data in social networks.4 The software has
been developed in the EU funded PrimeLife project. We want to extend these end-to-end encryption of textual
data for an end-to-end protection of image data.
Several approaches exists for image encryption like discrete parametric cosine transform proposed by Zhou
et al,5 or selective bitplane encryption proposed by Podesser et al6 and Yekkala et al.7 Even though these
approaches can establish a considerable security level for the protection of image content, our research showed
that they lack of sufficient robustness towards image transformations: Discrete parametric cosine transform is
not robust towards scaling and lossy JPEG compression. Bit plane encryption can handle JPEG compression
with higher quality factors, but decryption fails when the image is scaled.
Figure 2: Image with an image size of 1024 by
683 pixels, used to describe the image transforming in the online social network Facebook
Similar problems apply to the work of Li and Yu,8 who propose a robust image encryption scheme based on
permutation of DCT coefficients (discrete cosine transform) among JPEG tiles. They claim that their approach is
robust towards particular image transformations such as “noising, smoothing, compressing, and even print-scan
processing”, while providing a strong encryption at the same time. However, in the field of application we discuss
in Section 3, compression with serious changes in the JPEG quality rate, or scaling, considerably degrades image
quality (see Figure 1).
Especially the robustness towards scaling is very limited, since scaling changes the alignment between the tiles
used to permute DCT coefficients and the 8 · 8 pixel tiles used for lossy JPEG compression. Consequently, when
scaling the image, sharp gradations along the borders of JPEG tiles in the encrypted but not yet transformed
image move inside JPEG tiles. The result is blurring, which impacts the quality of the decrypted image. Using a
bicubic algorithm for scaling tightens this issue. For our test in Figure 1, the peak signal-to-noise ratio (PSNR)
already severely decreases to approx. 23 db when the image is scaled down in a small step to 90% of the original
size.
The work of Gschwandtner et al.9 comes closest to our approach. They introduce mapping functions for
secure and robust image encryption. The main focus is image encryption robust to transport errors in a network.
In their approach, they focus on the Cat map and the Baker map function with various iterations to encrypt an
image. The encrypted image can be decrypted again with a certain quality loss after transmission errors and
lossy compression. This quality loss depends on the utilization of additional functions to improve the security of
the encryption. For lossy compression, only unmodified map functions can be applied as otherwise robustness is
entirely lost. The authors also stress the fragility of their approach with respect to desynchronisation, e.g. by
pixel loss. This could mean that the approach also is not robust to scaling, an operation commonly applied in
the environments we aim at.
Li et al10 analyzed known and chosen plaintext attacks against permutation algorithms. The goal of our work
is not to present a strong cryptographic algorithm but to e. g. significantly hinder automatic feature extraction
from images done for linkage of personally identifiable information.
3. A BRIEF TOUR OF IMAGE DISTRIBUTION IN FACEBOOK
To frame the problem we discuss in this paper, we first take a quick look at how real-world Web 2.0 applications
transform and distribute images uploaded by their users. To this end, we will follow a fictional user, who uses
the online social network Facebook to communicate with her friends and to share media content, we call her
Alice.
Sometime, Alice decides to upload a new profile picture. Facebook displays this picture whenever e.g. Alice
posts into news feeds, when she appears in the friend lists of another user, or in the search function to find friends
Figure 4: Alice’s new
profile image as it is
shown in Facebook at
the home screen (a) and
at the profile page (b)
(a)
(a)
(b)
(b)
Figure 5: Alice posts the image to her personal news feed: (a) preview image as it is shown in the news feed, (b)
larger version that is displayed when user clicks the preview
and contacts. We assume, Alice uses the image shown in Figure 2 with a size of 1024 by 683 pixels stored with
a JPEG quality factor of 85∗ .
After Alice uploaded the image, it appears on her home screen next to her name. Facebook squared and
shrunk the image to a size of 50 by 50 pixels. If she now clicks the image, Facebook shows her profile page that
contains a larger version of the picture with a size of 180 by 119 pixels and a JPEG quality factor of approx. 80.
Figure 4 shows both altered versions of the original image embedded in Alice’s facebook profile.
Now Alice decides to share her new profile image with her friends by posting it into her personal news feed
(Facebook calls this feature “the wall”). For that, she again uploads the original image from Figure 2 while she
creates a new post. After she submitted the post, other users can see the image in her news feed. To present
an image preview, Facebook shrunk the original image to a size of 320 by 213 pixels and recompressed it with a
JPEG quality factor of approx. 75. When other users click the preview image, Facebook shows a larger version
with a size of 960 by 640 pixels and a JPEG quality factor of approx. 80. Figure 5 shows the preview image in
the news feed, and the larger version displayed after the user clicks the preview image.
As many other Facebook members, Alice also uses third party applications with her Facebook account. One
of these applications has access to her uploaded images to allow automatic tagging of faces. This application
also loads her new profile image and displays it in the application’s user interface. The third party application
changed the size to 720 by 480 pixels and applied a JPEG compression with a quality factor of approx. 75.
To sum up, images Alice uploads to Facebook are (a) used for several functions in the social network, (b) to
this end, undergo image transformations like recompressions with changing quality factors, resizing and cropping,
∗
c
We use a picture of an animal (Alexander
Klink, CC-BY 3.0) instead of a portrait shot due to privacy and copright
issues.
and (c) are also submitted to third party applications that additionally transform the images on their site. Our
small experiment shows, that even in the case we use only few functions of the online social network, the image
appears in four different sizes, undergoes JPEG recompressions with varying JPEG quality factors between 75
and 85, and is even cropped in one case.
Now we go one step further and assume that Alice wants to achieve end-to-end security for the images she
uploads to Facebook. In one case, she would like to share private pictures with her friend Bob, but she does not
desire that the provider of the social network is able to see the content of the images. In Section 4 we will give
multiple explanations why Alice’s desire is reasonable in certain situations.
To achieve this end-to-end security, Alice applies some kind of encryption or obfuscation to her private images
before she uploads them to the online social networks, or other Web 2.0 applications. Bob’s internet browser
receives the protected images while he visits Alice’s site on Facebook. However, the images Bob’s browser receives
differ from the images Alice uploaded to the online social network due to the transformations done by Facebook
and possibly involved third party applications. If the image encryption or obfuscation Alice applied, is not robust
towards these transformations, Bob will be unable to decrypt or de-obfuscate the image without a considerable
loss of quality. None of the yet existing approaches to image encryption delivers satisfying robustness, as we
explained in 2.
4. PRIVACY RISKS OF IMAGE SHARING IN WEB 2.0 APPLICATIONS
In Section 3, we explained why robustness is necessary for an end-to-end image encryption or obfuscation for
Web 2.0 applications. In this section, we will give three examples for current privacy risks in Web 2.0 applications
that require users of Web 2.0 applications to use an end-to-end protection mechanisms for their images.
4.1 Disclosure of Private Content due to Unreliable Privacy Settings
Web 2.0 applications, and in particular online social networks, allow their users to restrict the distribution of
private content. To this end, the Web 2.0 applications provide privacy settings, allowing the users to choose a
specific audience for their private data. However, there are two major problems with privacy settings:
First, privacy settings are often very complex. For example, a Facebook user has to deal with more than
fifty single controls to adjust how to share private data. Moreover, there are additional controls for selected data
objects and data collections such as photo albums. The default settings are often very permissive, and the user
has to explicitly opt-out from sharing data with all users of the social network.
Second, it depends on the reliability and security awareness of the provider of the Web 2.0 application, how
trustworthy these privacy settings actually are. In the case of Facebook, it already happened in the past that the
platform provider unexpectedly changed the privacy settings so that private content of the users became visible
to a broader audience. The U.S. Federal Trade Commission recently forced Facebook to enter into a privacy
agreement as a result of their unreliability in questions of privacy.11
Furthermore, privacy settings may become ineffective due to bugs and security weaknesses. As an example, in
December 2011, a security weakness in the online social network Facebook allowed unauthorized persons access
to certain private images of the users to unauthorized persons.12
To conclude, in principle, privacy settings enable users of Web 2.0 applications to control how to share private
data with others, but they are often complex and thus difficult to handle, and their enforcement solely relies
on the platform provider. Wrong configurations, technical issues including security weaknesses, and unexpected
changes of privacy policies by the platform provider can cause an undesired disclosure of the user’s private images.
and such disclosure already happened in the past.
If users could use end-to-end security mechanisms, these security glitches would have less dramatic consequences for the users’ privacy. Persons who get unauthorized access to images are not able to de-obfuscate them
as long as they do not possess the correct key. Configuring the intended group of receivers for obfuscation key
distribution can be done with a single and much simpler user interface compared to the current service- and
function-specific privacy settings.
Figure 6: Picture in an article of the print version of the
German magazine DER SPIEGEL that can be target
to a re-identification attack with robust image hashes
4.2 Extraction of Biometric Features and Face Recognition in Web 2.0 Applications
An upcoming privacy issue is the extraction of biometric features from images in Web 2.0 applications in order to
identify depicted persons: In 2011, the online social networks Facebook and Google+ introduced face recognition
techniques allowing to automatically tag faces in uploaded images. To this end, the providers of the online social
networks extract biometric features of their users and collect them in biometric databases. These features are
fed into the tagging algorithms later on. Such databases impose serious privacy risks since they may allow to
identify persons in images against their will, either by the owner of the database or by attackers who gained
unauthorized access.
On the other hand, the extraction of biometric features continuously improves because of the continuous
technical advances in digital photography. The increasing resolution and quality of digital images lead to more
accurate results of extraction algorithms. Upcoming three-dimensional photography allows to extract biometric
features from the three-dimensional shape of the face, further improving the performance of face recognition.
4.3 Image Re-Identification with Robust Images Hashes
Today a number of robust hashing or image fingerprinting techniques are known that can identify matching images
even after serious degradation of the images’ quality.13 This includes cropping, scaling, lossy compression and
rotation, depending on the applied algorithm.
For the privacy of depicted persons, these techniques can have serious consequences: In some cases, persons
are anonymized by blurring their facial regions. With an image hash robust against blurring, matching the image
to the original one would still be possible. As a consequence, an attacker could create a set of robust hashes of
images and metadata belonging to the images, especially the identities of the persons by crawling social networks.
If a newspaper publishes a blurred version of an image from a social network, the attacker can identify the person
by calculating the hash of the blurred image, matching it to the original image and deriving the metadata from
it.
As an example, Figure 6 shows a blurred image of a suicide victim in a German magazine. As the reference
indicates, the editor took the image from the online social network Facebook. An attacker may be able to find the
image in Facebook by means of a database with robust image hashes. This way the attacker can de-anonymize
the suicide victim.
5. OBFUSCATION BY PERMUTATION IN SPATIAL DOMAIN
5.1 Overview
One well-known approach for robust image obfuscation is the permutation of image regions in the spatial domain.
The main idea is to split the image into parts of equal shape (tiles), and to reorganize these parts in a way which
is only known by the sender and receiver of the image. The resulting obfuscated image is similar to a jigsaw
puzzle. Such a permutation algorithm can be constructed as explained in pseudo code in Algorithm 1.
(a)
(b)
(c)
Figure 7: Result of conventional permutation in the spatial domain: (a) original image, (b) image after applying
permutation of image regions, (c) de-permutated image with blurred tile borders. The de-permutation took place
after applying a JPEG lossy compression on the permutated image with a JPEG quality factor of 45. (picture
Public Domain by Jon Sullivan)
Algorithm 1 Puzzling a gray scale image
Input: Gray scale image G with width w > 0 and height h > 0
Input: Tile length l which satisfies 0 < l < min(w, h), for reasons of simplicity we assume w = h = 0 mod l
Input: Permutation function pk dependent on secret key k
Output: Gray scale image Ĝ with width w and height h
for u = 1 to w/l do
for v = 1 to h/l do
(û, v̂) ← pk ((u, v)) {With bijective permutation function pk , calculate tile position (û, v̂) in output image
from the tile position (u, v) in input image.}
for m = 1 to l do
x ← (u − 1) · l + m {Calculate column x in input image}
x̂ ← (û − 1) · l + m {Calculate column x̂ in output image}
for n = 1 to l do
y ← (v − 1) · l + n {Calculate row y in input image}
ŷ ← (v̂ − 1) · l + n {Calculate row ŷ in output image}
Ĝx̂,ŷ ← Gx,y {Copy single pixel gray value from input to output image}
end for
end for
end for
end for
First, without modifications on the algorithm, permutation of image regions is not very robust towards image
transformations. The reason is that the rearrangement of the tiles results in new sharp gradations at the borders
of the permuted image regions. As a consequence thereof, the frequency spectrum of the image gains energy
in particular high frequencies. This effect causes a blurring of the borders when the image is compressed with
JPEG, which is similar to a low-pass frequency filter. Figure 7 shows an example.
Second, an unmodified permutation algorithm is prone to image reconstruction algorithms. These algorithms
use heuristics that can significantly reduce the effort to solve the jigsaw puzzle compared to the NP-complete
checking of all possible combinations of the pieces. The recent work of Cho et al provides a good overview of
current techniques for solving jigsaw puzzles.14
From the state of the art, in simplified terms, we can conclude that jigsaw puzzle solvers are currently able
to handle jigsaw puzzles with less than 500 pieces with reasonable effort. In practice, solutions provided by the
jigsaw puzzle solver may vary in completeness. However, this variance is not important for our discussion here
since we consider that these algorithms always yield the complete solution which is the most unfavorable case
for us.
Original tile
(1,1)
(l,1)
(1,l)
(l,l)
Enlarged tile with margin
m
^
(l,1)
(1,1)
l
(m+1,
m+1)
Core created by
directly copying
original tile
(m+l,
m+1)
^l
(m+1,
m+l)
l
(m+l,
m+l)
^
(1,l)
^^
(l,l)
Figure 8: How a tile is enlarged by adding margins and filling them with the pixel values of border pixels
In the following sections 5.2 and 5.3, we propose solutions to tackle both problems.
5.2 Reducing Border Blurring
The permutation described above can be modified so that the defect rate declines steeply. To this end, each
tile is supplemented with a margin that “intercepts” the defects. This margin is removed when the image is
de-obfuscated. The margin is filled by copying the values of the pixels at the border. This step is necessary
to prevent defects in the de-obfuscated image resulting from inaccurate alignment between image content and
calculated tile borders.
Algorithm 2 explains in pseudo code how to create the margin for a single gray value tile. The algorithm
consists of three parts:
1. All gray values of the original tile are copied to the inner region of the enlarged tile. We call this inner
region the core of the enlarged tile.
2. Gray values of the original tile’s border pixels are copied to margin bars above, below, left and right of the
core.
3. Gray values of the original tile’s corner pixels fill the corners of the enlarged tile.
Figure 8 illustrates how to create a margin of width 2 pixels for a tile with edge length 3. The illustration
uses the notations from Algorithm 2.
Figure 10 shows a practical example of enlarged tiles in an obfuscated image: The original image from Figure 7
is split into nine tiles, the tiles are shuffled, and an additional tile margin of 6 pixels is added. Of course, by
adding margins, the size of the image increases (cp. 5.3.2). However, in practice, we can use rather thin margins:
The diagram in Figure 11 shows the connection between margin width and the PSNR of a de-obfuscated
image to original image, in this specific case of the image in Figure 7. It turned out that if we only consider
robustness towards recompression with lower JPEG quality factors, a margin width of 2 pixels is already sufficient.
Regarding image scaling, a margin of 2 pixels allows scaling rates down to 30 percent of the original size. For
lower scaling factors, the margin needs to be increased to prevent image degradation.
Figure 12 demonstrates the robustness against JPEG compression with decreasing JPEG quality factor and
scaling.
Algorithm 2 Creating an enlarged tile with margin
Input: Tile T representing a square image region with edge length l with l > 0 of a grey scale image
Input: Margin width m with m > 0
Output: Enlarged square tile T̂ with edge length ˆl = l + 2m that contains the tile T as a core and additional
surrounding margins with width m to improve robustness towards JPEG compression and scaling
{Create tile core}
for u = 1 to l do
for v = 1 to l do
x ← m + u {Column index in enlarged tile is shifted by margin width}
y ← m + v {Row index in enlarged tile is shifted by margin width}
T̂x,y ← Tu,v {Copy single pixel gray value from input tile to the core of the output tile}
end for
end for
{Create upper, lower, left and right margin}
for u = 1 to l do
for v = 1 to m do
x̂ ← m + u
ŷ ← m + 1 − v
T̂x̂,ŷ ← Tu,1 {Copy single pixel gray value from input tile to the upper margin of the output tile}
T̂ŷ,x̂ ← T1,u {Copy single pixel gray value from input tile to the left margin of the output tile}
ŷ ← m + l + v
T̂x̂,ŷ ← Tu,l {Copy single pixel gray value from input tile to the lower margin of the output tile}
T̂ŷ,x̂ ← Tl,u {Copy single pixel gray value from input tile to the right margin of the output tile}
end for
end for
{Create corners}
ˆl ← l + 2m
for u = 1 to m do
for v = 1 to m do
x̂ ← ˆl − u + 1
ŷ ← ˆl − v + 1
T̂u,v ← T1,1 {Copy single pixel gray value from input tile to the top, left corner of the output tile}
T̂x̂,v ← Tl,1 {Copy single pixel gray value from input tile to the top, right corner of the output tile}
T̂u,ŷ ← T1,l {Copy single pixel gray value from input tile to the bottom, left corner of the output tile}
T̂x̂,ŷ ← Tl,l {Copy single pixel gray value from input tile to the bottom, right corner of the output tile}
end for
end for
Figure 10: Adding margins to tiles:
(a) original image from Figure 7,
image regions permuted with nine
tiles and a margin of 6 pixels, (b)
same image but the margins are
marked with a checkerboard pattern for the purpose of illustration
(a)
(b)
(a)
(b)
Figure 11: Impact of recompression with decreasing JPEG quality factor and downscaling on the quality of the
de-obfuscated test image from Figure 10: (a) Correlation between JPEG quality factor and PSNR for different
margin widths, (b) Correlation between scale ratio and PSNR for different margin widths with a JPEG quality
factor of 75
(a)
(b)
(c)
Figure 12: Obfuscating an example image with 104 tiles and a margin width of 2 pixels: (a) obfuscated image,
(b) de-obfuscated image gained from a JPEG compressed obfuscated image with several quality factors; the part
of the original, uncompressed image is shown left, (c) de-obfuscated image gained from a JPEG compressed
(quality factor 80) and scaled obfuscated image with several scaling rates
5.3 Countering Jigsaw Solvers
In general, there are several ways to obstruct jigsaw solver algorithms:
• Increasing the number of possible permutations which leads to an enlarged search space for the solver
algorithms.
• Reducing or transforming the information contained in the permuted objects, providing the solver heuristics
with less clues. Consequently, the solver algorithms have to explore a larger part of the solution space.
• Adding redundant information to the permuted objects that mislead solver algorithms, but can be removed
during de-obfuscation. The redundant information shall as far as possible be indistinguishable from the
original information.
In the following, we will discuss approaches that implement these principles.
5.3.1 Rotating and Mirroring Tiles
A low hanging fruit to increase the number of available permutations is using the possibility to mirror the tiles
either on the horizontal or vertical mirror axis, and the possibility to rotate them in steps of 90◦ . The secret
obfuscation key k can be used to calculate the mirror and rotation transformations that shall be applied to a
given tile, and to undo them during de-obfuscation.
Figure 13: Correlation between image increase through the obfuscation
and tile size for different margin widths
The total number of permutations for the conventional image permutation algorithm, described in 5.1, is
kT k!, where T is the set of all image tiles. The proposed rotating and mirroring of tiles increases this total
number to kT k! · 8kT k . Rotating and mirroring tiles does not impact the quality of the de-obfuscated image.
5.3.2 Decreasing Tile Size
Decreasing the tile size is another way to increase the number of available permutations, and reducing the
information contained in a single tiles at the same time. However, the width of the tile margins is only determined
by the desired robustness and not by the tile size. Thus, the ratio between the tile size and the size of its margins
changes when the tile size decreases. Consequently, image width and height increase more during obfuscation.
Figure 13 shows this correlation.
As we described in 5.2, to achieve robustness towards compression with lower JPEG quality factors, and
scaling down by a factor of 5, a margin width of 2 pixels is sufficient. In this case, to restrict the increase in
image size to less than 20%, the tile edge length must be more than 20 pixels. However, that means that even a
small image with the size of 640 by 480 pixels is disassembled into 768 tiles.
5.3.3 Combination with Channel Intensity Modulation
Permutation in the spatial domain can be combined with the channel intensity modulation we describe in 6.
Thereby, the tiles are not only shifted to different positions in the image, but additionally a pseudo-random
pattern is added to the color channel values of the tile’s pixels. As a result, solver algorithms can not use e.g. the
average color values of tiles to find neighboring ones. In other words, the combination of both methods reduces
the amount of information contained in tiles that provide clues for jigsaw solvers.
6. OBFUSCATION BY CHANNEL INTENSITY MODULATION
6.1 General concept
This approach is based on adding a pseudo-random pattern to one or more color channels. The level of obfuscation
depends on various factors:
• Strength of pattern in comparison to image
• Usage of cyclic addition
• Pattern resolution
The strength of the pattern is defined by the range of its individual values. Typical image color channel
values have a range between 0 and 255 if they use the maximum contrast. The pattern can also feature the same
range, but this will require a strategy to handle overflows when adding color channel and pattern. An alternative
is to limit the range on both image channel and pattern. If both are reduced to a range of 0 to 127, while the
contrast of the resulting image will be lower, overflows will not occur. On the other hand this will result in a
significant loss of contrast.
Pattern resolution must be high enough for the cover to effectively interfere with the structure of the image
to be obfuscated. On the other hand, creating a smaller pattern is more efficient with respect to computation.
Patterns in the range of 40% to 50% of the image size show sufficient masking characteristics. An image of size
150 · 150 pixels therefore can be masked by a pattern of size 64 · 64.
Figure 14: Artifacts
in a de-obfuscated image (right) caused by
cyclic addition overflows, the original
image is shown left
When applying cyclic addition, overflows will be ignored and an addition of two values a and b will result in
a value equal to (a + b) mod 256. While this is simple to achieve, the risk of visible artifacts in ranges of a + b
close to 0 or 255 in the resulting images is high: If a = 255 and b = 5, the resulting value will be 4. If this value
is somehow increased, e.g. by lossy compression, to an amount of 5 or more, when subtracting b to recover the
original value of a, the result will be 0 or more, but far from 255. This will produce visible artifacts in the form
of pixels significantly differing from their environment, see Figure 14.
A less drastic strategy than limiting both the image and the mask avoids the negative effect of overflows:
Overflow artifacts will only occur when the image is close to the borders 0 or 255 and modifications afterwards
move the resulting values across these borders. If the image is limited to a range sufficiently far from these
borders, artifacts will not occur. Our evaluation identified 5 to 250 as a suitable range causing small quality loss
and no artifacts. Figure 15 shows the results for the “Lena” image.
6.2 Algorithm Description
The following pseudo code describes how the whole approach works.
To create an obfuscated copy of an image:
1.
2.
3.
4.
5.
Load image I of size x, y and value range 0 to 255
Create pattern P of size n and value range 0 to 255 with secret key k
Resize P to size x, y, result is P 0
Limit I to range 5 to 250, result is I 0
Create obfuscated image O by adding the P 0 to I 0
Now the user can save O with lossy compression, result is O0 . If somebody wants to undo the obfuscation,
he needs O or a copy O0 as well as k.
1.
2.
3.
4.
Load O or O0 of size x, y
Create pattern P of size n and value range 0 to 255 with secret key k
Resize P to size x, y, result is P 0
Create Image I 00 by subtracting P 0 from O or O0
The result I 00 should be of a quality comparable to I after going through a similar distribution channel.
6.3 Security Features
To create a pseudo-random pattern for obfuscation, a secret key k is necessary. This key must be available to
both the obfuscater party as well as the viewer of the image. The key exchange security is not discussed in this
work. Both one-time pads as well as chaotic sequences can be used as the base of the pattern. Sometimes only a
limited level of obfuscation may be required. In this case, both pattern size and pattern strength can be reduced.
Small value will result in obfuscated image where the content is perceivable while details are masked. Or robots
will be disabled to apply image recognition and extraction of biometric features while viewers can estimate the
content.
Figure 15: The “Lena” image after
channel limiting, obfuscation with
a pattern of half image size and deobfuscation, the last image shows
the obfuscation result after applying a pattern with 16x16 pixels.
original
limited
pattern
obfuscated
de-obfuscated
obfuscated with
16x16 pattern
Figure 17: Dependence of
PSNR on JPEG quality factor (a) and scaling rate (b)
36
PSNR in db
34
32
30
28
26
20
40
60
80
100
Scaling Rate in %
not obfuscated
(a)
obfuscated
(b)
7. TESTS AND RESULTS
7.1 Permutation of Image Regions
We tested the robustness of the image region permutation by obfuscating and de-obfuscating the images of the
Corel 1000 database for CBIR (http://wang.ist.psu.edu/docs/related/) with different parameterizations.
The quality of the de-obfuscation result is measured with the peak signal-to-noise ratio (PSNR). For all tests, a
tile edge length of 15 pixels and a margin width of 2 pixels have been used.
The left diagram in Figure 17 shows the PSNR for different JPEG quality factors without resizing the images.
The right diagram shows the PSNR for image resizing with different scaling rates; the aspect ratio has not been
changed and the JPEG quality factor was 80. For comparison, the PSNR for not obfuscated images which passed
the same transformations has been plotted in the diagrams as well.
For changes of the quality factor, the difference of the PSNR for obfuscated and not obfuscated images is
stable at approx. 2 db. Scaling behaves different: The PSNR difference increases with decreasing image size. At
a scaling rate of 20% the PSNR difference is approx. 4 db.
However, 20% scaling rate means that the de-obfuscated image has only 4% of the pixels of the original
image–which is a considerable quality loss caused by transformation itself.
7.2 Channel Intensity Modulation
To evaluate the behavior of our masking approach with respect to JPEG lossy compression, we execute the
following test:
Delta/Pixel
JPEG Imact
JPEG Impact
3
80
2,5
60
Pixel Difference
Pixel Difference
70
50
40
30
Average
20
Max
2
1,5
1
0,5
10
0
0
100 90
80
70
60
50
40
30
20
10
1
JPEG Factor
(a)
Image
(b)
Figure 18: (a) Dependence of pixel difference on JPEG quality factor, (b) Average pixel difference for the
Waterloo images
1.
2.
3.
4.
Create a masked copy of Lena with image size 400x400, mask size 200x200 and masking range 255.
Compress masked image by JPEG quality factor 100 to 1 in steps of 10
Unmask the compressed image
Calculate the average pixel difference of the original and the compressed copy which was masked and
unmasked
In the left diagram in Figure 18 it can be observed that there is a linear increase of the pixel difference as
expected. It is caused both by JPEG lossy compression and unmasking errors due to changes caused by JPEG.
It must also be noted that the maximum pixel difference in the Lena example lies at 70. This proves that in this
example overflow errors causing high local differences could be avoided.
We applied our masking algorithm to the full set of images of the Waterloo image repository (http://links.
uwaterloo.ca/Repository.html) gray scale set 2 to evaluate its behavior with different photos. Here we used
a JPEG quality factor of 65, a strong but still acceptable compression. As an evaluation criterion, we again
calculated the average pixel difference. The right diagram in Figure 18 shows that this difference is low for
all examples, but a dependency with respect to image characteristics can be observed. The worst result can
be found in “library”. White plain areas in the photo trigger overflow errors during unmasking which are not
avoided by our standard choice of limiting pixel values between 5 and 250. This is also true to a much lower
extent for “peppers2”, “france”, “frog” and “mountain”, while the other images feature no overflow errors. This
first evaluation points in the direction that the approach is especially suitable for human portraits, which makes
it well suited for privacy protection.
8. CONCLUSION AND OUTLOOK
In this work, we show that image obfuscation is robust to lossy compression and scaling is possible. These
two operations can be assumed to be the most typical in our target application domain of Web 2.0 community
platforms. With this obfuscation one can use the third platform as a distribution channel for images without
giving this platform access to the content. At the same time the platform can apply its common content
processing methods without disabling the de-obfuscation. This is the core difference to common cryptography
which does not allow processing in an encrypted state.
The first results are promising. Both permutation and masking are robust to common JPEG compression.
For permutation, robustness to scaling has also been proven by adding buffer edges to the permuted tiles. Both
approaches feature parameters to control obfuscation and security. Therefore with the same algorithms both
strong obfuscation similar to encryption as well as weak obfuscation to disable automatic face recognition or
similar methods can be achieved.
As this work is in its initial stage, a number of open questions are left for future work. More detailed testing
of the dependence of the algorithms to image characteristics is necessary. Also the behavior of a combination
of permutation and masking must be evaluated. To fight artifacts caused by the algorithm, additional image
processing may be applied at the de-obfuscation stage. As an example, occurrences of cyclic overflows may
be countered by local low pass filtering. Another approach to enhance security of the permutation may be to
split the image in the frequency domain with a bandpass and to permute the resulting high-pass and low-pass
images independently in the spatial domain before joining them again in the frequency domain to generate the
obfuscated image.
Another issue we want to tackle in our further work is the vulnerability to chosen or known plaintext attacks.
One possible solution is salting the encryption key with a randomly chosen nonce before the obfuscation takes
place. However, we have to find ways to store the non-confidential nonce in the image, e.g. in the tile borders
or by means of image watermarking.
REFERENCES
[1] J. Mitchell, “Making photo tagging easier,” December 2010. [Online]. Available: http://blog.facebook.
com/blog.php?post=467145887130
[2] H. Geser and C. Stross, “Augmenting things, establishments and human beings ”blended reality” in a
psycho-sociological perspective,” 2010.
[3] M. Hassinen and P. Mussalo, “Client controlled security for web applications,” in LCN. IEEE Computer
Society, 2005, pp. 810–816.
[4] PrimeLife, “Scramble!” September 2010. [Online]. Available: http://www.primelife.eu/results/opensource/
65-scramble
[5] Y. Zhou, K. Panetta, and S. Agaian, “Image encryption using discrete parametric cosine transform,” in Proceedings of the 43rd Asilomar conference on Signals, systems and computers, ser. Asilomar’09. Piscataway,
NJ, USA: IEEE Press, 2009, pp. 395–399.
[6] M. Podesser, H.-P. Schmidt, and A. Uhl, “Selective bitplane encryption for secure transmission of image
data in mobile environments,” in 5th Nordic Signal Processing Symposium, 2002, pp. 10–37.
[7] A. Yekkala and C. E. V. Madhavan, “Bit plane encoding and encryption,” in Proceedings of the 2nd international conference on Pattern recognition and machine intelligence, ser. PReMI’07. Berlin, Heidelberg:
Springer-Verlag, 2007, pp. 103–110.
[8] W. Li and N. Yu, “A robust chaos-based image encryption scheme,” in Proceedings of the 2009 IEEE
international conference on Multimedia and Expo, ser. ICME’09. Piscataway, NJ, USA: IEEE Press, 2009,
pp. 1034–1037.
[9] M. Gschwandtner, A. Uhl, and P. Wild, “Transmission error and compression robustness of 2D chaotic map
image encryption schemes,” EURASIP J. Inf. Secur., vol. 2007, pp. 21:1–21:13, January 2007.
[10] S. Li, C. Li, G. Chen, D. Zhang, N. G. Bourbakis, and N. G. B. Fellow, “A general cryptanalysis of
permutation-only multimedia encryption algorithms,” 2004.
[11] J. Leibowitz, J. T. Rosch, E. Ramirez, and J. Brill, “In the Matter of Facebook, Inc., a
corporation - Complaint,” November 2011. [Online]. Available: http://www.ftc.gov/os/caselist/0923184/
111129facebookcmpt.pdf
[12] T. W. S. Journal, “Facebook Flaw Exposes Its CEO,” December 2011. [Online]. Available:
http://online.wsj.com/article/SB10001424052970204083204577082732651078156.html
[13] S. Katzenbeisser, H. Liu, and M. Steinebach, “Challenges and solutions in multimedia document authentication,” in Handbook of Research on Computational Forensics, Digital Crime, and Investigation, C.-T. Li,
Ed. IGI Global, 2010, pp. 155–175.
[14] T. S. Cho, S. Avidan, and W. T. Freeman, “A probabilistic image jigsaw puzzle solver,” in CVPR. IEEE,
2010, pp. 183–190.
Download