Optical Cryptosystems. Naveen K. Nishchal
Чтение книги онлайн.

Читать онлайн книгу Optical Cryptosystems - Naveen K. Nishchal страница 13

Название: Optical Cryptosystems

Автор: Naveen K. Nishchal

Издательство: Ingram

Жанр: Отраслевые издания

Серия:

isbn: 9780750322201

isbn:

СКАЧАТЬ 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].

      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]

      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.

      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.

       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.% This function requires two inputs: the entity to be fractional% Fourier transformed and the order of transformation.

      % 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 Fractional Fourier transform with fractional order 0.25A=PT.*phase_mask1;A=frt(A,0.25);%Second Fractional Fourier transform with fractional order 0.45B=A.*phase_mask2;B=frt(B,0.45);%ciphertextfigure;imagesc(abs(B));colormap(gray);title(’encrypted image’);%%%%%decryptionD=frt(frt(B,−0.45).*conj(phase_mask2),−0.25);figure;imagesc(abs(D));colormap(gray);title(’decrypted image’);

       IV. Gyrator transform

      functionqt=gyrator(q,a)% Matlab code for fast algorithm of discrete gyrator transform%qis an input signal and a is rotation angle% Direct DGT[M,N]=size(q);mm=((0:M−1)-(M)/2)/sqrt(M);nn=((0:N−1)-(N)/2)/sqrt(N);[x,y]=meshgrid(nn,fliplr(mm));[u,v]=meshgrid(mm,fliplr(nn));p1=exp(−2*j*pi*x.*y*tan(a/2));p2=fftshift(exp(−2*j*pi*u.*v*sin(a)));qt=p1.*(ifft2(fft2(p1.*q).*p2));end

СКАЧАТЬ