Optical Cryptosystems. Naveen K. Nishchal
that uses a discrete set of wavelet scales and transformation to process signals. WT has been used in analyzing and processing optical signals due to its scaling and shift parameters. Its application in image compression is well established. Therefore, there is an inherent capability of combining WT not only in securing information but in compressing the secured data. This helps communicate the secured data through conventional communication channels. The optical implementation of the WT for 2D objects has been reported. Considering 1D representation, a mother wavelet h(x) is a finite-duration window function that can generate a family of daughter wavelets by varying scale a and shift b.
ha,b(x)=1ahx−ba(2.32)
The mother wavelet should satisfy the admissibility conditions that it must be oscillatory, have fast decay to zero, and integrate to zero. WT is defined as an inner product between a signal and a set of wavelets as
wf(a,b)=∫−∞∞ha,b*(x)f(x)dx(2.33)
where * denotes the complex conjugate and wf(a,b) is considered as a function of spatial shift b for each fixed scale a that displays the information f(x) at various resolution levels.
Further, the scaling factor of WT and fractional orders of FRT has been combined, which is called fractional WT (FWT). This scheme has been used for image encryption. The FWT is a linear transformation without introducing any cross-term interference [29, 30]. It combines the virtues of the WT as well as the FRT and possesses multi-resolution features. The concept behind this transform is extracting the fractional spectrum of the signal via FRT operation followed by WT operation of the fractional spectrum. This concept of FWT has also been applied to optical information security applications. The fractional orders of FRT and scaling factors of wavelets serve as the additional keys to the cryptosystem. If these keys are chosen randomly then the unauthorized people cannot retrieve the actual input data. So the information can be well protected.
The use of WT in information security is more suitable while particularly securing multispectral data [31, 32]. In which, images collected through different sensors at different wavelengths are received. Such multi-spectral images need to be fused (merging of different frequency sub-bands) first and then secured. The multispectral data received from satellites and airborne sensors are becoming increasingly available for analysis for various applications such as remote sensing. Fusion techniques play an important role in processing all such multispectral data. This technique maximizes the information of the fused image and thus improves the image content. If such fusion schemes can be applied for information security application, then the degrees of freedom may be greatly enhanced. Combining the concept of wavelets with GT, gyrator wavelet transform (GWT) has also been reported, which finds applications in image encryption and compression [33, 34].
2.2.6 Encryption using cosine transform
The discrete cosine transform (DCT) expresses a finite sequence of data points in terms of cosine functions at different frequencies. Since fewer cosine functions are required to approximate a typical signal, DCT finds application in data/image compression. This property attracted the use of DCT and discrete fractional cosine transform in image encryption applications. The 2D DCT of an image f(x,y) of size M × N is defined as [35]
B(ξ,η)=2LKγ(ξ)γ(η)∑u=0L−1∑v=0K−1A(u,v)cos(2u+1)ξπ2Lcos(2v+1)ηπ2K(2.34)
The corresponding inverse DCT is expressed as
A(u,v)=2LK∑ξ=0L−1∑η=0K−1γ(ξ)γ(η)B(ξ,η)cos(2u+1)ξπ2Lcos(2v+1)ηπ2K(2.35)
γ(ξ)=12forξ=01forξ=1,2,…,L−1,γ(η)=12forη=01forη=1,2,…,K−1(2.36)
The discrete fractional cosine transform has a similar relationship with the discrete FRT. In this case, fractional order is an added property to the encryption scheme.
2.2.7 Encryption using fractional Mellin transform
Mellin transform is closely related to the Laplace and Fourier transforms and exhibits a certain invariance to object magnification. Considering 1D form, the Mellin transform of a function f(x) is defined by [4]
M(s)=∫0∞f(x)xs−1dx(2.37)
where, in the most general case, s is a complex variable. Considering the complex variable s = i2πfX and substituting x = e−ξ, the Mellin transform is expressed as
M(i2πfX)=∫−∞∞f(e−ξ)e−i2πfXξdξ(2.38)
Equation (2.34) represents the Fourier transform of the function f(e−ξ). The Mellin transform can be implemented with an optical Fourier transforming system. The most important property of this transform is that its magnitude is independent of scale-size changes in the input. This property has attracted the use of the Mellin transform to image processing applications including image encryption [36]. Similar to the concept of FRT, fractional Mellin transform has also been used in developing a nonlinear encryption scheme to survive the conventional attacks. Also, extending the properties of FRT, fractional Hartley transform has been proposed for image encryption [37]. In all the cases, the basic DRPE framework has been combined with other optically implementable transforms to enhance the level of security. The attributes of transforms provide attractive features in security applications.
MATLAB codes
I. Fourier transform domain encryption
%Double Random Phase encoding (DRPE)%PT is the plaintext%Phase_mask1 and Phase_mask2 are the two random phase masks to be used as the keys.PT=imread(’D:\Program\images\godisgreat.bmp’);%reading the image to be encryptedPT=double(PT(:,:,1));PT=PT./max(max(PT));figure;imagesc(abs(PT));colormap(gray);title(’original input image’);%defining the two random phase masks for the two keys[M,N]=size(PT);phase_values1=rand(M);phase_values2=rand(M);phase_mask1=exp(j*2*pi*phase_values1);%First Keyphase_mask2=exp(j*2*pi*phase_values2);%Second Key%%%%%Encryption%First Fourier transformA=PT.*phase_mask1;A=frt2(A);%Second Fourier transformB=A.*phase_mask2;B=fft2(B);%ciphertextfigure;imagesc(abs(B));colormap(gray);title(’encrypted image’);
%%%%%decryptionD=ifft2(ifft2(B).*conj(phase_mask2));figure;imagesc(abs(D));colormap(gray);title(’decrypted image’);
II. Fractional Fourier transform
function[X]=frt(obj,p)% MATLAB code for fractional Fourier transform% obj is the input subjected to fractional Fourier transform% p is the order of fractional Fourier transformN=size(obj);%p=0.5;n=N(1);[mx,my]=meshgrid(-n/2:1:n/2-1);% Action of first lensL1=exp(-j*(pi/n)*tan(p*pi/4)*(mx.*mx+my.*my));A=obj.*L1;% Free space propagationAf=fft2(A);L2=exp(-j*(pi/n)*sin(p*pi/2)*(mx.*mx+my.*my));B=Af.*L2;C=ifft2(B);% Action of second lensL3=exp(-j*(pi/n)*tan(p*pi/4)*(mx.*mx+my.*my));D=C.*L3;%Multiplication by a phase factorpf=exp(-j*(pi/n))./sqrt(abs(sin(p*pi/2)));X=D.*pf;
III. Fractional Fourier transform domain encryption
% Double Random Phase encoding (DRPE) in fractional Fourier domain% The code uses the functionfrtto perform the fractional Fourier transform.%