Input: Colored Secret Image (Image) of size N × M a Private Key K1

Output: Key share of size N × M

Steps:

1. Halftone the colored secret image (Image) using a dithering technique (Img).

2. Split (Img) into three layers R,G, and B, where:

3. Generate one layer Random share (mask share) with the same size as the secret image (see Figure 1 and Figure 2).

, do the following:

According to the private key K1, generate randomly a value either 0 or 1 and store it in the first pixel in the mask block (Maskij). The other pixel (Maski+1j) is filled with the complement value of the first pixel (Maskij). This step will make the mask a half black- and-white block.

The values for each block will be:

4. Generate a key share (share 2) according to the following steps:

For all halftone image layers of the secret image (ImgR, ImgG, ImgB) do the following:

a), do the following:

According to the value of first pixel in each block (ImgRij):

i) If ImgRij = 0, set the complement of the corresponding mask block values to the corresponding position of Share 2R block (Share 2Rij, Share 2Ri+1j)

ii) If ImgRij = 1, set the same values of the corresponding mask block to the corresponding position of Share 2R block (Share 2Rij, Share 2Ri+1j)

b) Repeat step (a) for ImgG and ImgB, then store the outcomes in Share 2G and Share 2B respectively.