## 3 Building Elements
### Generation of the Permutation and Schedule Key  
The permutation generation is the following:  
1. The integer \(C_{3}\) of Equation (17) is replaced by the value \(C^{2}\). Then, it is operated \((0.012315)C_{3}e\); where, as before, the constant \(e=2.7182\cdots\). From this result, we will only take the bits from the decimal point to the right.
2. The bit string after the decimal point is divided into 8-bit blocks, that is, in bytes. In addition, the number of pixels of the image is \(l\). We proceed as follows: building a string with the first three bytes, that is, taking bytes number 0, 1, and 2. In this way, let be \(c_{0}\), the associated integer to this string. Then, the calculation \(D_{0}=c_{0}\) mod. \(l\) is performed. For obtaining \(D_{1}\), a byte shift to the right is performed. Now, bytes 1, 2, and 3 are selected to make a new string. As before, this 24-bit string has another associated integer called \(c_{1}\). Subsequently, the calculation \(D_{1}=c_{1}\) mod \(l-1\) is performed. In general, to calculate \(D_{i}\), the procedure is to compute \(D_{i}=c_{i}\) mod. \(l-i\). It is important to remember that for obtaining \(c_{i}\), \(i\)-shifts of one byte are made to the right of the decimal point.  
Once the \(D_{i}\) has been calculated for \(i=0,1,\cdots,l-2\), it is possible to use the algorithm indicated in Section 3 to permute the \(l\) pixels of the image. Let us denote this permutation as \(P\).  
On the other hand, the round keys procedure is the following:  
The value of \(C_{3}\) in Equation (17) is replaced by \(C^{2}\). Then, the \((0.012315)C_{3}e\) operation is computed; as before, the constant \(e=2.7182\cdots\). Henceforth from the product, the bits to the right of the decimal point are taken. To generate the first key, a string of bits is selected whose length is equal to the image bits size; in this case, for \(512\times 512\) pixels. The present work proposes this chain as \(k_{1}\), the first round key. In this way, to generate the other round keys, for example, the \(i\)-th round key, the process is similar. Apply \(i-1\) shifts of one byte after the decimal point; from there to the right, a string takes the number of bytes equal to the size of the image. Finally, the resulting string would be the key \(k_{i}\).  
At this point, the authors consider it pertinent to show the hexadecimal values used in this research: \(p_{1}\), \(p_{2}\), \(k\), \(p^{*}\), and \(\alpha\).  
\(p_{1}\) = e13e0 ceb0f0798 be0a5d5f8 ad448524b7c1 fe933440f  
6 fa2923f440 ce749a9290927d1a3 eeb44 abe41258 be7 cf2 ef  
17b715a2 be5a6a542 eb9 ea6a7 da039d4 dab  
\(p_{2}\) = 9 dffc7e2f4 ed8 acf7 dac5 ad69c88b44e5a36f47a567  
7 eb29e7d71b1e6566652 eb490a46360931402c050671245  
bc5 ca9c95 dee3b14f3b4121d46b31c95a9 ef29  
\(k\) = 1734  
Similarly, the prime \(p^{*}\) and generator \(\alpha\) are shown:  
\(p^{*}\) = 3 ad9 dc2 ec1c5e61c2449c2e8907 bac8233b13 fe221  
41d9 cf989 ba34b0c387 bf2058b247c3 bc9 fca3f3 daaefa49  
728b2d976a47b3769 ca2101744 cab23355e3a949c0f6262  
bcde56 dea2 bbc969f03 fa2558f871b0a7e05492761057 ef6  
70723a849 dafce51c62187c5f1 da8 dc523382 cbee124d12e  
ebfe510 ad1c1d41c675 ad59  
\(\alpha\) = 326 ff52 fdb98 aaf27594369b807e538921805f86e563  
712c7616 cb432 ea6 ae480e772 dbc521782508 af64e67573  
17 ab6818d598 ed168c14 ed2952c7 db0042980b277b6949  
fa475f53c8a7b2387344 eb64b770909f4c2 ec68e3f8 eda66  
05912f872566c02c0e06953b5b24e23c119d135068 fa5c3  
960 fa59e55f7b1a04 afd2450  
The values \(a_{A},a_{B}\) can be chosen randomly or fixed for a period in each communication between the sender and the receiver.