Introduction
Fundamentals
Lorenz–Haken laser chaotic system
The lifting scheme
The proposed image encryption scheme
Encryption algorithm
Generation of initial values of chaotic system
Preprocessing strategy based on the lifting scheme (PSLS)
Block-based cross-component permutation based on index vectors (BCPIV)
Multi stochastic diffusion based on random sequences (MSDRS)
Decryption algorithm
Simulation results and performance analyses
Image | Size (h × w × c) | Image | Size (h × w × c) |
---|---|---|---|
Lena | 256 × 256 × 3 | Sailboat | 256 × 256 × 3 |
Baboon | 256 × 256 × 3 | Peppers | 256 × 256 × 3 |
Key space
Quality metrics analysis
Image | Component | MSE | PSNR (dB) | Image | Component | MSE | PSNR (dB) |
---|---|---|---|---|---|---|---|
Lena | R | 10,652 | 7.8566 | Sailboat | R | 7239 | 9.5339 |
G | 9032 | 8.5729 | G | 11,343 | 7.5834 | ||
B | 7059 | 9.6436 | B | 11,404 | 7.5603 | ||
Baboon | R | 8383 | 8.8967 | Peppers | R | 1975 | 9.1136 |
G | 7409 | 9.4330 | G | 11,183 | 7.6452 | ||
B | 9154 | 8.5149 | B | 11,102 | 7.6768 | ||
Ref. [23] | R | 10,697 | 7.8378 | Ref. [35] | R | 7927 | 9.1395 |
G | 8968 | 8.6035 | G | 7307 | 9.4931 | ||
B | 7042 | 9.6540 | B | 9712 | 8.2573 |
Histogram analysis
Image | Plaintext images | Ciphertext image | ||||
---|---|---|---|---|---|---|
R | G | B | R | G | B | |
Lena | 6.4731e+04 | 2.9669e+04 | 9.1621e+04 | 260.0784 | 271.2471 | 278.6824 |
Peppers | 5.6977e+04 | 5.4691e+04 | 1.0462e+05 | 269.0039 | 279.8824 | 280.3294 |
Baboon | 2.8194e+04 | 4.2050e+04 | 2.5960e+04 | 280.9412 | 284.6510 | 253.1373 |
Sailboat | 5.3726e+04 | 3.5834e+04 | 9.1551e+04 | 215.2157 | 256.8863 | 215.3412 |
4.1.01 | 1.6962e+05 | 1.5857e+05 | 1.5866e+05 | 253.8745 | 254.8314 | 260.0549 |
4.1.02 | 2.1119e+05 | 3.3918e+05 | 2.9077e+05 | 253.6627 | 233.3490 | 250.1020 |
4.1.03 | 7.9393e+05 | 8.6434e+05 | 6.2281e+05 | 268.0000 | 246.9098 | 252.6196 |
4.1.04 | 6.7232e+04 | 6.4687e+04 | 1.1349e+05 | 274.4235 | 276.1412 | 277.8902 |
4.1.05 | 2.5959e+05 | 3.0033e+05 | 3.9558e+05 | 249.3725 | 242.2118 | 270.1176 |
4.1.06 | 8.1690e+04 | 5.7233e+04 | 1.3033e+05 | 267.2157 | 255.7647 | 266.8627 |
4.1.07 | 7.9309e+05 | 5.0363e+05 | 1.6874e+05 | 241.6078 | 279.9843 | 268.8627 |
4.1.08 | 5.3961e+05 | 3.5062e+05 | 1.3027e+05 | 246.0314 | 254.5569 | 244.0706 |
Image | \(x_{test}^{2}\) | \(x_{256,0.05}^{2}\) | Result | ||
---|---|---|---|---|---|
R | G | B | |||
Lena | 259.0625 | 270.1875 | 277.5938 | 293 | Pass |
Peppers | 267.9531 | 278.7891 | 279.2344 | 293 | Pass |
Baboon | 279.8438 | 283.5391 | 252.1484 | 293 | Pass |
Sailboat | 214.3750 | 255.8828 | 214.5000 | 293 | Pass |
4.1.01 | 252.8828 | 253.8359 | 259.0391 | 293 | Pass |
4.1.02 | 252.6719 | 232.4375 | 249.1250 | 293 | Pass |
4.1.03 | 266.9531 | 245.9453 | 251.6328 | 293 | Pass |
4.1.04 | 273.3516 | 275.0625 | 276.8047 | 293 | Pass |
4.1.05 | 248.3984 | 241.2656 | 269.0625 | 293 | Pass |
4.1.06 | 266.1719 | 254.7656 | 265.8203 | 293 | Pass |
4.1.07 | 240.6641 | 278.8906 | 267.8125 | 293 | Pass |
4.1.08 | 245.0703 | 253.5625 | 243.1172 | 293 | Pass |
Correlation analysis of adjacent pixels
Image | Horizontal | Vertical | Diagonal | |
---|---|---|---|---|
Plaintext images (Lena) | R | 0.9760 | 0.9535 | 0.9281 |
G | 0.9687 | 0.9376 | 0.9089 | |
B | 0.9516 | 0.9217 | 0.9006 | |
Ciphertext image (Lena) | R | − 0.0008 | − 0.0004 | − 0.0073 |
G | 0.0009 | 0.0025 | − 0.0046 | |
B | − 0.0012 | − 0.0018 | 0.0001 | |
Ciphertext image (Baboon) | R | − 0.0006 | 0.0014 | 0.0029 |
G | 0.0022 | − 0.0017 | 0.0007 | |
B | 0.0058 | 0.0051 | − 0.0009 | |
Ciphertext image (Sailboat) | R | − 0.0042 | 0.0010 | 0.0045 |
G | 0.0007 | − 0.0062 | 0.0024 | |
B | 0.0036 | − 0.0003 | − 0.0038 | |
Ciphertext image (Peppers) | R | − 0.0039 | − 0.0068 | 0.0051 |
G | − 0.0039 | − 0.0008 | 0.0005 | |
B | 0.0043 | − 0.0007 | 0.0021 | |
Ref. [17] | R | 0.0137 | − 0.0237 | 0.0109 |
G | − 0.0246 | − 0.0170 | − 0.0133 | |
B | − 0.0137 | 0.0023 | − 0.0013 | |
Ref. [18] | R | − 0.0047 | 0.0028 | − 0.0043 |
G | − 0.0023 | − 0.0060 | − 0.0069 | |
B | − 0.0038 | − 0.0057 | − 0.0112 | |
Ref. [24] | R | 0.0083 | − 0.0054 | − 0.0010 |
G | 0.0049 | 0.0100 | 0.0124 | |
B | − 0.0017 | 0.0095 | − 0.0042 | |
Ref. [30] | R | − 0.0141 | − 0.0036 | 0.0006 |
G | − 0.0091 | − 0.0074 | 0.0037 | |
B | − 0.0094 | − 0.0282 | − 0.0049 |
Information entropy analysis
Image | Red | Green | Blue |
---|---|---|---|
Lena | 7.2509 | 7.5906 | 6.9284 |
Baboon | 7.6160 | 7.3754 | 7.6804 |
Sailboat | 7.2673 | 7.6263 | 7.2006 |
Peppers | 7.3063 | 7.5557 | 7.0912 |
Enc_Lena | 7.9969 | 7.9973 | 7.9972 |
Enc_Baboon | 7.9973 | 7.9965 | 7.9967 |
Enc_Sailboat | 7.9976 | 7.9972 | 7.9976 |
Enc_Peppers | 7.9972 | 7.9974 | 7.9972 |
Ref. [17] | 7.9892 | 7.9898 | 7.9899 |
Ref. [18] | 7.9973 | 7.9965 | 7.9969 |
Ref. [24] | 7.9972 | 7.9972 | 7.9975 |
Ref. [30] | 7.9973 | 7.9970 | 7.9972 |
Key sensitivity analysis
The encryption key sensitivity analysis
Key | NPCR (%) | |||
---|---|---|---|---|
Lena | Baboon | Sailboat | Peppers | |
K1(t1′ = t1 + Δ) | 99.57 | 99.62 | 99.64 | 99.59 |
K2(t2′ = t2 + Δ) | 99.59 | 99.62 | 99.64 | 99.59 |
K3(t3′ = t3 + Δ) | 99.64 | 99.60 | 99.62 | 99.57 |
K4(t4′ = t4 + Δ) | 99.63 | 99.58 | 99.58 | 99.61 |
The decryption key sensitivity analysis
Key | NPCR (%) | |||
---|---|---|---|---|
Lena | Baboon | Sailboat | Peppers | |
K1(t1′ = t1 + Δ) | 99.59 | 99.59 | 99.59 | 99.61 |
K2(t2′ = t2 + Δ) | 99.64 | 99.59 | 99.57 | 99.64 |
K3(t3′ = t3 + Δ) | 99.59 | 99.55 | 99.65 | 99.60 |
K4(t4′ = t4 + Δ) | 99.59 | 99.61 | 99.61 | 99.61 |
Noise attack analysis
Noise type | Noise intensity | PSNR (dB) |
---|---|---|
SPN | 0.00001 | 61.5080 |
0.00003 | 43.1644 | |
0.00005 | 41.5922 | |
0.00007 | 40.3752 | |
SN | 0.00001 | 19.8482 |
0.00003 | 17.2376 | |
0.00005 | 16.3590 | |
0.00007 | 15.7123 | |
GN | 0.00001 | 16.9962 |
0.00003 | 15.1184 | |
0.00005 | 14.2924 | |
0.00007 | 13.8054 |
Cropping attack analysis
Running time
Images | Lena | Baboon | Sailboat | Peppers | Average |
---|---|---|---|---|---|
Encryption | 1.7715 s | 1.7836 s | 1.7229 s | 1.7310 s | 1.7523 s |
Decryption | 1.5159 s | 1.5403 s | 1.5075 s | 1.4754 s | 1.5098 s |
Differential attack analysis
Image | NPCR (%) | UACI (%) | |
---|---|---|---|
Ciphertext image (Lena) | R | 99.64 | 33.55 |
G | 99.62 | 33.43 | |
B | 99.62 | 33.44 | |
Ciphertext image (Baboon) | R | 99.59 | 33.52 |
G | 99.59 | 33.25 | |
B | 99.62 | 33.36 | |
Ciphertext image (Sailboat) | R | 99.56 | 33.52 |
G | 99.63 | 33.49 | |
B | 99.57 | 33.42 | |
Ciphertext image (Peppers) | R | 99.62 | 33.54 |
G | 99.57 | 33.65 | |
B | 99.61 | 33.36 |
Classical attack analysis
NIST test
Number | Statistical test | x | y | z | Pass/Fail |
---|---|---|---|---|---|
P value | P value | P value | |||
1 | Frequency | 0.350485 | 0.739918 | 0.911413 | Pass |
2 | Block frequency | 0.739918 | 0.122325 | 0.350485 | Pass |
3 | Cumulative sums | 0.911413 | 0.534146 | 0.739918 | Pass |
4 | Runs | 0.739918 | 0.350485 | 0.534146 | Pass |
5 | Longest run | 0.739918 | 0.534146 | 0.534146 | Pass |
6 | Rank | 0.911413 | 0.213309 | 0.350485 | Pass |
7 | FFT | 0.350485 | 0.213309 | 0.534146 | Pass |
8 | Non-overlapping template | 0.534146 | 0.534146 | 0.350485 | Pass |
9 | Overlapping template | 0.739918 | 0.534146 | 0.122325 | Pass |
10 | Universal | 0.625716 | 0.161025 | 0.431301 | Pass |
11 | Approximate entropy | 0.911413 | 0.739918 | 0.350485 | Pass |
12 | Random excursions | 0.739210 | 0.345419 | 0.123169 | Pass |
13 | Random excursions Variant | 0.446049 | 0.259659 | 0.040016 | Pass |
14 | Serial | 0.213309 | 0.739918 | 0.350485 | Pass |
15 | Linear complexity | 0.739918 | 0.911413 | 0.991468 | Pass |
Number | Statistical test | Lena | Peppers | Sailboat | Pass/Fail |
---|---|---|---|---|---|
P value | P value | P value | |||
1 | Frequency | 0.162606 | 0.906060 | 0.909852 | Pass |
2 | Block frequency | 0.017912 | 0.437274 | 0.131644 | Pass |
3 | Cumulative sums | 0.213309 | 0.534146 | 0.577721 | Pass |
4 | Runs | 0.275709 | 0.066882 | 0.685442 | Pass |
5 | Longest run | 0.834308 | 0.637119 | 0.056513 | Pass |
6 | Rank | 0.275709 | 0.350485 | 0.378119 | Pass |
7 | FFT | 0.739918 | 0.637119 | 0.852559 | Pass |
8 | Non-overlapping template | 0.833562 | 0.090936 | 0.883000 | Pass |
9 | Overlapping template | 0.350485 | 0.025193 | 0.012041 | Pass |
10 | Universal | 0.159092 | 0.711317 | 0.829665 | Pass |
11 | Approximate entropy | 0.739918 | 0.534146 | 0.211803 | Pass |
12 | Random excursions | 0.372069 | 0.103181 | 0.892352 | Pass |
13 | Random excursions Variant | 0.294020 | 0.298914 | 0.948317 | Pass |
14 | Serial | 0.739918 | 0.637119 | 0.178024 | Pass |
15 | Linear complexity | 0.350485 | 0.534146 | 0.814771 | Pass |
Comparative analysis
Algorithm | Correlation coefficients | Information entropy | NPCR (%) | UACI (%) | MSE | PSNR (dB) | |||
---|---|---|---|---|---|---|---|---|---|
H | V | D | |||||||
Ours | R | − 0.0008 | − 0.0004 | − 0.0073 | 7.9969 | 99.64 | 33.55 | 0 | + ∞ |
G | 0.0009 | 0.0025 | − 0.0046 | 7.9973 | 99.62 | 33.43 | 0 | + ∞ | |
B | − 0.0012 | 0.0018 | 0.0001 | 7.9972 | 99.62 | 33.44 | 0 | + ∞ | |
Ref. [19] | R | − 0.0266 | − 0.0303 | − 0.0031 | 7.9972 | 99.62 | 32.98 | 15.398 | 36.256 |
G | 0.0163 | − 0.0169 | 0.0242 | 7.9976 | 99.63 | 30.41 | 10.716 | 37.047 | |
B | − 0.0462 | − 0.0469 | − 0.0046 | 7.9971 | 99.6 | 27.7 | 5.717 | 39.433 | |
Ref. [23] | R | 0.0021 | 0.0061 | 0.0012 | 7.9974 | – | – | – | – |
G | 0.0055 | − 0.0053 | − 0.0007 | 7.9973 | – | – | – | – | |
B | 0.0035 | − 0.001 | − 0.001 | 7.997 | – | – | – | – | |
Ref. [24] | R | 0.0083 | − 0.001 | − 0.001 | 7.9972 | 99.61 | 33.56 | 0 | + ∞ |
G | 0.0049 | 0.0124 | 0.0124 | 7.9972 | 99.67 | 33.45 | 0 | + ∞ | |
B | 0.0095 | − 0.0042 | − 0.0042 | 7.9975 | 99.61 | 33.51 | 0 | + ∞ | |
Ref. [25] | R | 0.0004 | 0.0062 | 0.0062 | 7.9972 | 99.61 | 33.44 | – | – |
G | − 0.0018 | 0.0067 | 0.0067 | 7.9966 | 99.62 | 33.48 | – | – | |
B | 0.0026 | 0.0044 | 0.0044 | 7.9968 | 99.6 | 33.45 | – | – |