Steganography with Public-KeyCryptography for Videoconference
XXX CNMAC - Set/2007
Fábio Borges de Oliveira
Steganography with Public-Key Cryptography for Videoconference – p.1/26
SteganographySource:
Steganography:
Steganography with Public-Key Cryptography for Videoconference – p.2/26
Why do we need to use it?
1. The enemy could interrupt the message
2. There is the Shor’s quantum algorithm thatcan factor huge numbers quickly O(n3)
3. Someone might find a way to break thecryptosystem
Steganography with Public-Key Cryptography for Videoconference – p.3/26
Symmetric
Ana BethEdna
Secure Channel
Steganography with Public-Key Cryptography for Videoconference – p.4/26
Asymmetric
EdnaAna Beth
Steganography with Public-Key Cryptography for Videoconference – p.5/26
RSA
ϕ = ϕ(pq) = (p − 1)(q − 1)
Choose a so that gcd(a, ϕ) = 1
ab ≡ 1 mod ϕ.
xab ≡ x mod pq ∀x ∈ Z.
Steganography with Public-Key Cryptography for Videoconference – p.6/26
Diffie-HellmanAlice chooses k with gcd(k, pq) = 1 and sendsthe values of k and pq. Then, Alice chooses a r,computes kr and sends the result to Bob whilekeeping r secret. At the same moment Bobchooses s, computes ks and sends the result toAlice while keeping s secret.So, both form the candidate exponent
a = (kr)s = (ks)r.
To verify if a is a valid RSA exponent, Alicecomputes gcd(a, ϕ) = 1. If a is not valid theyrepeat the process.
Steganography with Public-Key Cryptography for Videoconference – p.7/26
Key agreement
Diffie-Hellman
ElGamal
Menezes-VanstoneDiscrete Logarithmic Problem
Steganography with Public-Key Cryptography for Videoconference – p.8/26
Steganography and Public-key
Steganography using public-key cryptography
cannot use a static media, like an image, but it
requires a data stream, like a dialog.
Steganography with Public-Key Cryptography for Videoconference – p.9/26
Videoconference
We have the option to use the sound or thevideo
We chose the ITU-T H263 - video codecprotocol
An H263 video stream contains I-frame,P-frame and B-frame
Hiding in a sequence of JPEG
Steganography with Public-Key Cryptography for Videoconference – p.10/26
Spatial domain
For every 8 bits.
Steganography with Public-Key Cryptography for Videoconference – p.11/26
Spatial domain
Bit position: 12345678
Steganography with Public-Key Cryptography for Videoconference – p.11/26
Spatial domain
Bit position: 12345678
Steganography with Public-Key Cryptography for Videoconference – p.11/26
Spatial domain
Bit position: 12345678
Steganography with Public-Key Cryptography for Videoconference – p.11/26
Spatial domain
Bit position: 12345678
Steganography with Public-Key Cryptography for Videoconference – p.11/26
Spatial domain
Bit position: 12345678
Steganography with Public-Key Cryptography for Videoconference – p.11/26
Spatial domain
Bit position: 12345678
Steganography with Public-Key Cryptography for Videoconference – p.11/26
Spatial domain
Bit position: 12345678
Steganography with Public-Key Cryptography for Videoconference – p.11/26
Spatial domain
Bit position: 12345678
Steganography with Public-Key Cryptography for Videoconference – p.11/26
Visual attack
Steganography with Public-Key Cryptography for Videoconference – p.12/26
Steganographic scheme in JPEG
Steganography
Block 8
x8
JPEG
Entropy EncoderQuantizerDCT
DequantizerInverse DCT Entropy Decoder
Image
Input
Output
Steganography with Public-Key Cryptography for Videoconference – p.13/26
Discrete Cosine Transform (DCT)
F [m,n] =C(m)
2
C(n)
2
7∑
x=0
7∑
y=0
P [x, y] cos α cos β,
α =(2x + 1)mπ
16,
β =(2y + 1)nπ
16
C(k) =
{
1√2
for k = 0,
1 for all other values of k.
Steganography with Public-Key Cryptography for Videoconference – p.14/26
The quantization
F ′[m,n] =F [m,n]
Q[m,n]
Steganography with Public-Key Cryptography for Videoconference – p.15/26
Pixel matrix P
P =
0 0 0 200 200 0 0 0
0 0 200 200 200 200 0 0
0 200 200 200 200 200 200 0
200 200 200 200 200 200 200 200
200 200 200 200 200 200 200 200
0 200 200 200 200 200 200 0
0 0 200 200 200 200 0 0
0 0 0 200 200 0 0 0
Steganography with Public-Key Cryptography for Videoconference – p.16/26
Quantization matrix Q
Q =
6 11 16 21 26 31 36 41
11 16 21 26 31 36 41 46
16 21 26 31 36 41 46 51
21 26 31 36 41 46 51 56
26 31 36 41 46 51 56 61
31 36 41 46 51 56 61 66
36 41 46 51 56 61 66 71
41 46 51 56 61 66 71 76
Steganography with Public-Key Cryptography for Videoconference – p.17/26
Consider the matrices
A that has not suffered steganography
B that has changed in every second LSB ofcoefficients AC, whose modulus is greaterthan two
C that has changed only the second LSB ofF ′[0, 2]
D that has changed the LSB of AC, whosemodulus is greater than one
Steganography with Public-Key Cryptography for Videoconference – p.18/26
Euclidian distance
|P − A| = 35.60898762
|P − B| = 200.2698180
|P − C| = 48.98979486
|P − D| = 106.5833008
Steganography with Public-Key Cryptography for Videoconference – p.19/26
Matrix A without steganography
Steganography with Public-Key Cryptography for Videoconference – p.20/26
Matrix B with aggressive settings
Steganography with Public-Key Cryptography for Videoconference – p.21/26
Matrix C no aggressive settings
Steganography with Public-Key Cryptography for Videoconference – p.22/26
Matrix D with aggressive settings
Steganography with Public-Key Cryptography for Videoconference – p.23/26
The protocol
1. the position of the sequence of bits previouslyagreement to establish communication in avideoconference,
2. steganography more secure,
3. Diffie-Hellman key agreement,
4. RSA to exchange an irrational numbergenerator,
5. strong cryptography based on irrationalnumbers.
Steganography with Public-Key Cryptography for Videoconference – p.24/26
Conclusion
We have introduced a model forsteganocryptography
First of all we revised the RSA, Diffie-Hellmanand JPEG’s compression
Our contribution is showing the viability toembed in others LSB
It brings an extra-layer of security
Steganography with Public-Key Cryptography for Videoconference – p.25/26
Last Slide
Thank you.
Any suggestions will be welcome.
www.lncc.br/borgesFábio Borges de Oliveira
Steganography with Public-Key Cryptography for Videoconference – p.26/26