## 2 Our Proposed Methods
### Image Encryption  
This stego image encryption process ciphers the stego image to protect secret messages and avoid the image from unauthorized user access. The image encryption contains the following four steps:  
* **Step 1**: Obtaining an image feature \(h\). We calculate the feature of a stego HDR RGBE image \((h)\) in Equation (9): \[h=\frac{\sum_{i=1}^{4\times H\times V}b_{i}}{255\times 4\times H\times V}\] (9) where \(b_{i}\) represents the \(i\)-th byte data of the image. The parameter \(h\) is considered as a part of the secret encryption key, where its range is within [0, 1]. * **Step 2:** Generating a pseudo-random sequence. In this step, we produce a pseudo-random sequence from the 2D-SLMM [33]. As shown in Equation (10): \[\left\{ \begin{array}{c}x_{i+1}=\alpha(\sin(\pi y_{i})+\beta)x_{i}(1-x_{i})\\ y_{i+1}=\alpha(\sin(\pi x_{i+1})+\beta)y_{i}(1-y_{i})\end{array} \right.\] (10)  
The range of the control parameters, \(\alpha\) and \(\beta\), is \(0\leq\alpha\leq 1\) and \(0\leq\beta\leq 3\), respectively. When the parameter \(\beta\) is close to 3, 2D-SLMM shows good hyperchaotic performance. In this study, we select \((\alpha,\ \beta)=(1,\ 3)\). The trajectories of the 2D-SLMM map are shown in Figure 3, which provides a wider chaotic range, better ergodicity, and hyperchaotic properties than existing chaotic maps. In addition, we set the initial value \((x_{0},\ y_{0})=(x_{K}\times h,\ y_{K}\times h)\), where \((x_{K},y_{K})\) represents a part of the secret encryption key. Note that the initial value is related to the feature of an image derived from Step 1, indicating that the initial values dynamically depend on the stego HDR RGBE image to be processed, thereby increasing the security of image encryption. Given \(\alpha\), \(\beta\), and \((x_{0},\ y_{0})\), we generate \(q+4\times H\times V\) number of pseudo-random sequence, \(\mathbf{R}=\left\{R_{0},R_{1},\ldots,R_{q},R_{q+1},\ldots,R_{q+4\times H\times V-1 }\right\}\), where \(q\) is the number of elements in the sequences to be discarded in order to eliminate the transient effects. Note that each element \(R_{i}\) is produced by first computing \(x_{i}\times y_{i}\) and then representing the values as the IEEE double-precision floating-point format (IEEE Standard for Floating-Point Arithmetic, IEEE 754) [34], followed by extracting the least significant 8 bits to form an integer between 0 and 255. * **Step 3:** Pixel bit-level permutation and diffusion. We adopt a secret encryption key, \(k_{e}\), to perform bit-level permutation, which shuffles both the pixel contents (32 bits) and the pixel positions in the stego HDR RGBE image. We adopt a random permutation scheme [35] with an encryption key to generate pseudo-random numbers to accomplish the bit-level permutation. We take an 8-bit pixel as an example. Let \(\left\{\pi\right\}=\left\{1,\ 2,\ 3,\ 4,\ 5,\ 6,\ 7,\ 8\right\}\) represent the index of position in a pixel, and \(\left\{D\right\}=\left\{0,\ 1,\ 0,\ 1,\ 1,\ 0,\ 1,\ 1\right\}\) denote the corresponding bits, which represent the decimal value 91. Thus, the first three bits, for example, can be referred to by \(\pi[1]=0,\ \pi[2]=1\), and \(\pi[3]=0\), etc. When utilizing the random permutation scheme, we execute 7 iterations. At the \(i\)-th iteration, we generate a \((9-i)\)-ary random number \(k\). Then, we exchange the current last index with the index \(k\). The process continues 7 times until we shuffle the indices in \(\left\{\pi\right\}\) completely. Table 2 shows an example of the index permutation, where the shaded color indicates indices that have been shuffled. In the first round (\(i=1\)), we generate an 8-ary random number \(k=3_{8}\), and then exchange the 3 rd index, 3, and the last index, which is 8, thus producing \(\{\pi\}=\{1,\ 2,\ 8,\ 4,\ 5,\ 6,\ 7,\ 3\}\). In the second iteration (\(i=2\)), we generate a 7-ary random number, say \(k=4_{7}\); we exchange the 4 th index, 4, and the last index, which is 7, thus leading to \(\{\pi\}=\{1,\ 2,\ 8,\ 7,\ 5,\ 6,\ 4,\ 3\}\).