Pooled steganalysis in JPEG: how to deal with the spreading - - PowerPoint PPT Presentation

pooled steganalysis in jpeg how to deal with the
SMART_READER_LITE
LIVE PREVIEW

Pooled steganalysis in JPEG: how to deal with the spreading - - PowerPoint PPT Presentation

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Pooled steganalysis in JPEG: how to deal with the spreading strategy? Ahmad ZAKARIA 1 , 2 , Marc CHAUMONT 1 , 4 , G erard SUBSOL 1 , 3 LIRMM 1 , Univ Montpellier 2 , CNRS 3 ,


slide-1
SLIDE 1

Pooled steganalysis in JPEG: how to deal with the spreading strategy?

Pooled steganalysis in JPEG: how to deal with the spreading strategy?

Ahmad ZAKARIA1,2, Marc CHAUMONT1,4, G´ erard SUBSOL1,3 LIRMM1, Univ Montpellier2, CNRS3, Univ Nˆ ımes4, Montpellier, France

December 11, 2019

WIFS’2019, IEEE International Workshop on Information Forensics and Security, December 9-12, 2019, Delft, The Netherlands.

slide-2
SLIDE 2

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

Outline

Introduction Pooled steganalysis architecture Experimental protocol Results Conclusions and perspectives

slide-3
SLIDE 3

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

Steganography / Steganalysis

slide-4
SLIDE 4

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

Batch steganography / Pooled steganalysis

Alice

Embedding

Bob

Bag of cover images Bag of cover/stego images Spreading Strategy S Message m

Alice:

◮ spreads a message m ∈ {0, 1}|m|, ◮ in multiple covers, ◮ using a strategy s ∈ S.

  • A. D. Ker, “Batch steganography and pooled steganalysis,” in IH’06
slide-5
SLIDE 5

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

Examples of possible spreading strategies

Joint Cover Cover bag

Classical embedding algorithm

Greedy strategy [2]

Classical embedding algorithm

Linear strategy [2]

Classical embedding algorithm

The 6 evaluated spreading strategies in this paper, S = {IMS, DeLS, DiLS, Greedy, Linear, and Uses − β}

slide-6
SLIDE 6

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

Pooled steganalysis: how to deal with the spreading strategy?

Alice

Embedding

Bob

Bag of cover images Bag of cover/stego images Spreading Strategy S Message m

Many possibilities for Alice to spread the message; What about Eve, the steganalyst?

slide-7
SLIDE 7

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

Pooled steganalysis: how to deal with the spreading strategy?

Alice

Embedding

Bob

Bag of cover images Bag of cover/stego images Spreading Strategy S Message m

Many possibilities for Alice to spread the message; What about Eve, the steganalyst? Recent approaches opt for pooling individual scores (more general)

slide-8
SLIDE 8

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

Pooled steganalysis: how to deal with the spreading strategy?

Alice

Embedding

Bob

Bag of cover images Bag of cover/stego images Spreading Strategy S Message m

Many possibilities for Alice to spread the message; What about Eve, the steganalyst? Recent approaches opt for pooling individual scores (more general) Let us denote, f , a Single Image Detector (SID); For example a payload predictor (quantitative steganalysis): f : Rr×c → R+

slide-9
SLIDE 9

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

Pooled steganalysis: how to deal with the spreading strategy?

Alice

Embedding

Bob

Bag of cover images Bag of cover/stego images Spreading Strategy S Message m

Many possibilities for Alice to spread the message; What about Eve, the steganalyst? Recent approaches opt for pooling individual scores

Cover bag Stego bag

Pooling function g Classification

x1 x2 xb-1 xb

SID

f(x1) f(x2) f(xb-1) f(xb)

Bag of cover/stego images . . . . . . . . . . Bag of scores . . . . .

slide-10
SLIDE 10

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

Recent studies

◮ [1] Hypothesis: Eve does not know the spreading strategy

⇒ best pooling strategy = averaging the individual scores

◮ [2] Hypothesis: Eve does know the spreading strategy

⇒ knowledge of the strategy = improves steganalysis results.

◮ [3] Hypothesis: Eve does know the spreading strategy

⇒ knowledge of the strategy = improves steganalysis results.

[1] R. Cogranne, “A sequential method for online steganalysis,” in WIFS’2015.

[2] T. Pevn´ y and I. Nikolaev, “Optimizing pooling function for pooled steganalysis,” in WIFS’2015.

[3] R. Cogranne, V. Sedighi, and J. J. Fridrich, “Practical strategies for content-adaptive batch steganography and pooled steganalysis,” in ICASSP’2017.

slide-11
SLIDE 11

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Introduction

The addressed question

Cover bag Stego bag

Pooling function g Classification

x1 x2 xb-1 xb

SID

f(x1) f(x2) f(xb-1) f(xb)

Bag of cover/stego images . . . . . . . . . . Bag of scores . . . . .

Hypothesis: Eve does not know the spreading strategy. Can Eve “do better” than averaging the individual scores?

slide-12
SLIDE 12

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Pooled steganalysis architecture

Outline

Introduction Pooled steganalysis architecture Experimental protocol Results Conclusions and perspectives

slide-13
SLIDE 13

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Pooled steganalysis architecture

  • T. Pevny and I. Nikolaev general architecture

x1 x2 xb-1 xb

SID

f(x1) f(x2) f(xb-1) f(xb)

IMAGES Bag of scores PARZEN window

. . . . .

. . . . . . . . . . SVM . . . . . Cover Stego

Given a vector of SID scores z = {f (x1), ..., f (xb)}: h =

  • 1

b

  • f (xi)∈z

k(f (xi), c1), ... , 1 b

  • f (xi)∈z

k(f (xi), cp)

  • ,

with {ci}p

i=1 a set of equally spaced real positive values,

and k(x, y) = exp(−γ||x − y||2)).

slide-14
SLIDE 14

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Pooled steganalysis architecture

  • T. Pevny and I. Nikolaev general architecture

x1 x2 xb-1 xb

SID

f(x1) f(x2) f(xb-1) f(xb)

IMAGES Bag of scores PARZEN window

. . . . .

. . . . . . . . . . SVM . . . . . Cover Stego

◮ Histogram → can treat a bag of any dimension, ◮ Histogram → invariant to the sequential order in the bag.

slide-15
SLIDE 15

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Pooled steganalysis architecture

The Single Image Detector (SID)

◮ Note: Alice embeds using J-UNIWARD

(512×512 BossBase1.01 QF=75).

◮ Quantitative steganalysis in JPEG [1]. ◮ GFR cleaned and normalized:

◮ Gabor Features Residuals (GFR) of dimension 17 000 [2], ◮ Clean cleaned from NaN values and from constant values

→ reduced to 16 750,

◮ Normalize using random conditioning [3].

Learning: 5 000 covers + 5 000 stego per payload size ({0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1} bpc).

[1] J. Kodovsk´ y and J. J. Fridrich, “Quantitative steganalysis using rich models,” in EI’2013 MWSF.

[2] X. Song, F. Liu, C. Yang, X. Luo, and Y. Zhang, “Steganalysis of adaptive JPEG steganography using 2d gabor filters,” in IH&MMSec’2015.

[3] M. Boroumand and J. J. Fridrich, “Nonlinear feature normalization in steganalysis,” in IH&MMSec 2017.

Note: M. Chen, M. Boroumand, and J. J. Fridrich, “Deep learning regressors for quantitative steganalysis,” in EI’2018 MWSF, is more efficient.

slide-16
SLIDE 16

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Experimental protocol

Outline

Introduction Pooled steganalysis architecture Experimental protocol Results Conclusions and perspectives

slide-17
SLIDE 17

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Experimental protocol

Alice: Batch spreading strategies

Alice

Embedding

Bob

Bag of cover images Bag of cover/stego images Spreading Strategy S Message m

  • 1. Greedy strategy: spreading into as few covers as possible.
  • 2. Linear strategy: spreading evenly.
  • 3. Uses-β strategy: spreading evenly across a fraction of covers.
  • 4. IMS strategy: spreading in an unique artificial image.
  • 5. DeLS strategy: spreading at the same deflection coefficient

(MiPod model).

  • 6. DiLS strategy: spreading at the same distortion.
slide-18
SLIDE 18

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Experimental protocol

Eve: Pooling strategies

◮ gclair: Eve (clairvoyant) knows the spreading strategy.

SVM learned on the known strategy s ∈ S.

◮ gdisc: Eve (discriminative) does not know the spreading

  • strategy. SVM learned on all the strategies S.

◮ gmax: Maximum function AND τmax by minimizing Pe over S. ◮ gmean: Average function AND τmin by minimizing Pe over S.

slide-19
SLIDE 19

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Experimental protocol

Bags for the learning and for the test

gclair (clairvoyant) learning:

◮ Choose one bag size b ∈ B = {2, 4, 6, 10, 20, 50, 100, 200}, ◮ Choose one spreading strategies s ∈ S, ◮ Generate 5 000 cover bags and 5 000 stego bags (0.1 bptc).

gclair testing:

◮ Choose the same bag size b, ◮ Choose the same spreading strategies s, ◮ Generate 5 000 cover bags and 5 000 stego bags (0.1 bptc).

slide-20
SLIDE 20

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Experimental protocol

Bags for the learning and for the test

gdisc (discriminative) , gmax, and gmean learning:

◮ Choose one bag size b ∈ B = {2, 4, 6, 10, 20, 50, 100, 200}, ◮ Choose all the spreading strategies from S, ◮ Generate 5 000 cover bags and 5 000 stego bags.

833 bags per strategy (0.1 bptc). gdisc (discriminative) , gmax, and gmean testing:

◮ Choose the same bag size b, ◮ Choose one spreading strategies s ∈ S (unknown from Eve), ◮ Generate 5 000 cover bags and 5 000 stego bags (0.1 bptc).

slide-21
SLIDE 21

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Results

Outline

Introduction Pooled steganalysis architecture Experimental protocol Results Conclusions and perspectives

slide-22
SLIDE 22

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Results

Alice: Spreading strategies comparison (Eve clairvoyant)

0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35

2 4 6 1 0 2 0 5 0 1 0 0 2 0 0

DeLS DiLS IMS Linear Greedy Uses Beta0.5

gclair (Clairvoyant)

Figure: Spreading strategies comparison in the clairvoyant case (10 runs).

slide-23
SLIDE 23

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Results

Eve: Pooling function comparisons

0.00 0.02 0.04 0.06 0.08 0.10 0.12 0.14 0.16 0.18 0.20

2 4 6 1 0 2 0 5 0 1 0 0 2 0 0

g clair g disc g mean g max

Pooling functions

Figure: Pooled steganalysis comparison (10 runs).

slide-24
SLIDE 24

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Conclusions and perspectives

Outline

Introduction Pooled steganalysis architecture Experimental protocol Results Conclusions and perspectives

slide-25
SLIDE 25

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Conclusions and perspectives

Conclusions

Up-to-date algorithms:

◮ modern embedding (J-Uniward), ◮ 6 spreading strategies (3 moderns), ◮ modern (generic) pooling architecture.

→ Coherent results with past papers. The take away messages:

◮ For Alice: DeLS is a really interesting spreading strategy. ◮ For Eve: gdisc pooling can improve the detectability

if Eve does not know the spreading strategy.

slide-26
SLIDE 26

Pooled steganalysis in JPEG: how to deal with the spreading strategy? Conclusions and perspectives

To be continued...

Future:

◮ DeLS with a DCT model, ◮ Robustness to the bag size variation

(learn only once with various size),

◮ Robustness to the mismatch in the spreading strategy

(uses a different strategy in the test; Examples in [1]),

◮ Minimize the Pe (for gdisc) differently for each strategy, ◮ Use something more powerful than an SVM, ◮ Extend to deep learning, ◮ Go toward a simulation of a game (GAN philosophy),

[1] X. Liao, J. Yin, “Two Embedding Strategies for Payload Distribution in Multiple Images Steganography”, in ICASSP’2018.