Cryptography Reference
In-Depth Information
6.3 Visual Cryptography Scheme Using the Polarization
of Light
In this section, we will introduce XOR-based visual cryptography scheme.
They are constructed using basis matrices and the secret image is recovered
by an XOR certain number of shares. We will show how to construct (2;n),
(n;n), and (k;n) XOR-based visual cryptography schemes as follows.
6.3.1 (2,n) Scheme
In this section, we show how to construct a (2;n) XOR-based visual cryp-
tography scheme. The (2;n) scheme is equivalent to binary error-correcting
codes. By a (m;n;d) code, that is, a binary code of length m consists of n
words and a minimum Hamming distance of at least d.
Theorem 1 [17] Let m, l and h be positive integers such that l < h m.
The three following statements are equivalent.
(i) A [(2;n); m;m;l] VC scheme exists.
(ii) A [(2;n); m;h;l] VC scheme exists.
(iii) A binary (m;n;ml) code exists.
Proof: It is clear that (i) implies (ii).
In order to show that (ii) implies (iii), let S = (C 0 ;C 1 ) be a [(2;n); m;h;l]
VC scheme. Take a matrix A 1 2 C 1 and let C consist of the rows from A 1 . As
S is a [(2;n); m;h;l] VC scheme, the Hamming distance between two words
from C is at least ml. Consequently, C is a (m;n;ml) code. Finally, to
show (iii) implies (i), let C be a binary (m;n;ml) code. For c 2 C, let A(c)
denote the nm matrix for which each row equals c. Moreover, let B be an
nm matrix containing each word from C as a row, and for 0 i n1, let
B(i) be the matrix obtained by a cyclic shift of the rows of B over i positions.
We claim that (C 0 ;C 1 ) = (fA(c)jc 2 Cg;fB(0);B(1); ;B(n 1)g) is a
[(2;n); m;m;l] scheme. It is clear that both collections contain n matrices,
and that in each row, each word from C occurs in one matrix from C 0 and
in one matrix from C 1 , showing the indistinguishability. The sum of any two
rows from a matrix in C 0 equals 0. Finally, the Hamming distance between
any two rows of a matrix from C 1 is at least ml, showing that the XOR of
these two rows contains at most m(ml) = l zeros.
An example is given as follows.
Example 1 Let C be a binary (3; 3; 2) code containing words 100; 010 and
001. Construct C 0 and C 1 as follows:
8
<
2
3
2
3
2
3
9
=
1
0
0
0
1
0
0
0
1
4
5 ;
4
5 ;
4
5
C 0 =
1
0
0
0
1
0
0
0
1
;
:
;
1
0
0
0
1
0
0
0
1
 
 
Search WWH ::




Custom Search