AES: The AES algorithm is one of the best algorithms used in data encryption, and it is used in
many applications such as integrated encryption system, email, and online data storage services,
(see [8,9])
RSA: It is one of the most prominent algorithms used in general encryption, and is widely used to
protect electronic communications, (see [10])
DES: The DES algorithm is a traditional encryption algorithm known for its security, but it is
considered simple compared to the security standards used nowadays, (see [11])
Blowfish: A good encryption algorithm that can be used easily, and has a security level similar to
the popular AES encryption algorithm, (see [12]).
In this paper, we present a novel approach to text encryption and decryption algorithms. The basis
of our algorithm is to divide the text into small blocks, specifically 2 × 1 matrices. Each block is
treated as a separate unit of encryption, allowing us to random key for every block. To further
enhance security, we also create a key matrix for each block, which depends on the length of the
block and the block number. In addition to these block-specific keys and matrices, two fixed square
matrices are used throughout the encryption process, adding an extra layer of complexity and
robustness to the system.
The encryption process involves transforming each using its unique block key, the corresponding
key matrix, and the fixed square matrices. This results in encrypted blocks that are highly secure
and difficult to decipher without the correct keys. By using different key for each block, our method
ensures that even if a single block is compromised, the security of the remaining blocks is not
affected.
Decryption, the reverse of encryption, is an equally important aspect of any cryptographic system.
In our algorithm, the decryption process uses the same block key generated during encryption. To
retrieve the plaintext, we employ a specially constructed matrix formed by multiplying the key
matrix with a fixed square matrix and adding it to the identity matrix. This ensures an accurate and
efficient recovery of the plaintext from the encrypted blocks.
Our approach combines the use of randomness, block-based encryption, and matrix operations to
provide a secure and flexible encryption method. By encrypting each block individually and
introducing randomness into the key generation process, we achieve a high degree of security. The
use of mathematical operations on matrices provides a strong framework for encryption and
decryption while keeping the algorithm conceptually straightforward.
This research aims to demonstrate the effectiveness of matrix-based cryptography and its potential
for securing data in various applications. Our algorithm is particularly useful for scenarios where
customized and adaptable encryption methods are required. It offers a novel perspective on
designing encryption system, paving the way for further exploration and innovation in the field of
cryptography.
2. The proposed encryption algorithm
In this paper, we present a new encryption and decryption algorithms, We put the message
we want to encrypt in a matrix 𝐸 of size 2 × 𝑚 adding 0 = 𝑛 + 26 for space between two words
and end of the message, we divide the message matrix 𝐸 of size 2 × 𝑚 into block matrices named
𝐸𝑗 , (𝑗 = 1, 2, … , m) of size 2 × 1. The main idea of method is the encryption of each message
matrix with different keys.
2
Now, we will give a definition for choosing 𝑛.The number of the block matrixes 𝐸𝑗 , (𝑗 =
1, 2, … , m) is denoted by 𝑚. According to 𝑚, we choose the number 𝑛 as follows (see [13]),
𝑚 , 𝑚≤3
𝑛={ 𝑚 .
[| |] , 𝑚>3
2
Now, we explain the encryption method. Suppose that the matrices 𝐸𝑗 , 𝐾𝑗 , 𝐶𝑗 , A, B , S, I,
(𝑗 = 1, 2, … , 𝑚) are of the forms:
𝑗 𝑗 𝑗
𝑒 𝑔1 1 −1 1 0 𝑐
𝐸𝑗 = ( 1𝑗 ) , 𝐾𝑗 = ( 𝑗
), 𝐴=( ), 𝐵=( ), 𝐶𝑗 = ( 1𝑗 )
𝑒2 𝑔2 −1 1 −2 1 𝑐2
1 1 1 0 (𝑗 = 1, 2, … , 𝑚).
𝑆=( ), 𝐼=( ),
−1 −1 0 1
Now, we define alphabets table according to mod 29 (This table can be expanded to the used
characters in the message text).
Table (1) : character table
A B 𝐶 𝐷 𝐸 𝐹 𝐺 𝐻 𝐼 𝐽
𝑛 𝑛+1 𝑛+2 𝑛+3 𝑛+4 𝑛+5 𝑛+6 𝑛+7 𝑛+8 𝑛+9
𝐾 𝐿 𝑀 𝑁 𝑂 𝑃 𝑄 𝑅 𝑆 𝑇
𝑛 + 10 𝑛 + 11 𝑛 + 12 𝑛 + 13 𝑛 + 14 𝑛 + 15 𝑛 + 16 𝑛 + 17 𝑛 + 18 𝑛 + 19
𝑈 𝑉 𝑊 𝑋 𝑌 𝑍 0 , !
𝑛 + 20 𝑛 + 21 𝑛 + 22 𝑛 + 23 𝑛 + 24 𝑛 + 25 𝑛 + 26 𝑛 + 27 𝑛 + 28
Now, we explain a new encryption and decryption algorithms.
Encryption Algorithm.
𝑗
𝑒
Step 1. Dived message matrix 𝐸 into blocks 𝐸𝑗 = ( 1𝑗 ) , 𝑗 = 1, 2, … , 𝑚.
𝑒2
Step 2. Choose 𝑛.
𝑗 𝑗
Step 3. Determine the elements 𝑒1 , 𝑒2 , 𝑗 = 1, 2, … , 𝑚.
Step 4. Determine the encryption keys 𝑥𝑗 , 𝑗 = 1, 2, … , 𝑚.
𝑗 𝑗
𝑘1 𝑒1
Step 5. Compute 𝐾𝑗 = ( 𝑗
)=( 𝑗 𝑗
) , 𝑗 = 1, 2, … , 𝑚.
𝑘2 2𝑒1 + 𝑒2
Step 6. Compute the cipher text,
𝐶𝑗 = (−𝑥𝑗 𝐴 ± 𝐵)𝐾𝑗 ,
where
𝑗
1 −1 1 0 𝑐
𝐴=( ), 𝐵=( ), 𝐶𝑗 = ( 1𝑗 ) , 𝑗 = 1, 2, … , 𝑚.
−1 1 −2 1 𝑐2
𝑗
𝑐
Step 7. Construct the matrices 𝐶 = ( 1𝑗 ) .
𝑐2 𝑗∈{1,2,…,𝑚}
3
Step 8. End of algorithm.
Decryption Algorithm.
𝑗
𝑐
Step 1. Dived the cipher message matrix 𝐶 into blocks ( 1𝑗 ) , 𝑗 = 1, 2, … , 𝑚.
𝑐2
Step 2. Compute the decryption text,
𝐸𝑗 = (−𝑥𝑗 𝑆 ± 𝐼)𝐶𝑗 ,
where
𝑗 𝑗
𝑢1 1 1 𝑐
𝐸𝑗 = ( 𝑗
), 𝑆=( ), 𝐶𝑗 = ( 1𝑗 ) , 𝑗 = 1, 2, … , 𝑚.
𝑣2 −1 −1 𝑐2
𝑗
𝑒
Step 3. Construct the matries 𝐸 = ( 1𝑗 ) .
𝑒2 𝑗∈{1,2,…,𝑚}
Step 4. End of algorithm.
3. Example of the Encryption and Decryption Process
To help explain how our algorithm works, we will show step-by-step examples of the encryption
and decryption processes.
Example 3.1. encrypted the messages text:
“I REALLY CANNOT BELIEVE WE DID THAT!”
the messages matrix 𝐸 is:
𝐼 𝑅 𝐴 𝐿 𝛾 𝐴 𝑁 𝑇 𝐵 𝐿 𝐸 𝐸 𝑊 𝛾 𝐼 𝛾 𝐻 𝑇
𝐸=( )
𝛾 𝐸 𝐿 𝑌 𝐶 𝑁 𝑂 𝛾 𝐸 𝐼 𝑉 𝛾 𝐸 𝐷 𝐷 𝑇 𝐴 !
Encryption Algorithm.
Step 1. To encrypted the messages text, we divide the message matrix into blocks
𝑗
𝑒1
𝐸𝑗 = ( 𝑗 ) , 𝑗 = 1, 2, … , 18.
𝑒2
Hence,
𝐼 𝑅 𝐴
𝐸1 = ( ) , 𝐸2 = ( ) , 𝐸3 = ( ),
𝛾 𝐸 𝐿
𝐿 𝛾 𝐴
𝐸4 = ( ) , 𝐸5 = ( ) , 𝐸6 = ( ),
𝑌 𝐶 𝑁
𝑁 𝑇 𝐵
𝐸7 = ( ) , 𝐸8 = ( ) , 𝐸9 = ( ),
𝑂 𝛾 𝐸
𝐿 𝐸 𝐸
𝐸10 = ( ) , 𝐸11 = ( ) , 𝐸12 = ( ),
𝐼 𝑉 𝛾
𝑊 𝛾 𝐼
𝐸13 = ( ) , 𝐸14 = ( ) , 𝐸15 = ( ),
𝐸 𝐷 𝐷
𝛾 𝐻 𝑇
𝐸16 = ( ) , 𝐸17 = ( ) , 𝐸18 = ( ).
𝑇 𝐴 !
Step 2. To choose 𝑛, we compute 𝑎, Since the number of the blocks 𝐸𝑗 , 𝑗 = 1, 2, … , 18 is 18 >
3, so we choose 𝑛 = 9, thus the “character table” for the message as follows:
4
Table (2)
𝐼 𝛾 𝑅 𝐸 𝐴 𝐿 𝐿 𝑌 𝛾
17 6 26 13 9 20 20 4 6
𝐶 𝐴 𝑁 𝑁 𝑂 𝑇 𝛾 𝐵 𝐸
11 9 22 22 23 28 6 10 13
𝐿 𝐼 𝐸 𝑉 𝐸 𝛾 𝑊 𝐸 𝛾
20 17 13 1 13 6 2 13 6
𝐷 𝐼 𝐷 𝛾 𝑇 𝐻 𝐴 𝑇 !
12 17 12 6 28 16 9 28 7
Step 3. The elements of the blocks 𝐸𝑗 , 𝑗 = 1, 2, … , 18 as follows:
Table (3)
𝑒11 17 𝑒110 20 𝑒21 6 𝑒210 17
2 11 2
𝑒1 26 𝑒1 13 𝑒2 13 𝑒211 1
3 12 3
𝑒1 9 𝑒1 13 𝑒2 20 𝑒212 6
4 13 4
𝑒1 20 𝑒1 2 𝑒2 4 𝑒213 13
14
𝑒15 6 𝑒1 6 𝑒25 11 𝑒214 12
𝑒16 9 𝑒115 17 𝑒26 22 𝑒215 12
7 16 7
𝑒1 22 𝑒1 6 𝑒2 23 𝑒216 28
8 17 8
𝑒1 28 𝑒1 16 𝑒2 6 𝑒217 9
9 18 9
𝑒1 10 𝑒1 28 𝑒1 13 𝑒218 7
Step 4. We determine the encryption keys 𝑥𝑗 , 𝑗 = 1, 2, … , 18.
Table (4)
𝑗 𝑥𝑗 𝑗 𝑥𝑗
1 3 10 −2
2 −1 11 1951
3 6 12 2023
4 10 13 −4
5 2 14 8
6 −13 15 12
7 40 16 5
8 2020 17 −6
9 −5 18 33
𝑗 𝑗
𝑘1 𝑒1
Step 5. Compute 𝐾𝑗 = ( 𝑗
)=( 𝑗 𝑗
) , 𝑗 = 1, 2, … , 18.
𝑘2 2𝑒1 + 𝑒2
Table (5)
𝑘11 17 𝑘110 20 𝑘21 40 𝑘210 57
𝑘12 26 𝑘111 13 𝑘22 65 𝑘211 27
5
𝑘13 9 𝑘112 13 𝑘23 38 𝑘212 32
𝑘14 20 𝑘113 2 𝑘24 44 𝑘213 17
𝑘15 6 𝑘114 6 𝑘25 23 𝑘214 24
𝑘16 9 𝑘115 17 𝑘26 40 𝑘215 46
𝑘17 22 𝑘116 6 𝑘27 67 𝑘216 40
𝑘18 28 𝑘117 16 𝑘28 62 𝑘217 41
𝑘19 10 𝑘118 28 𝑘29 33 𝑘218 63
Step 6. Compute the cipher text,
𝐶𝑗 = (−𝑥𝑗 𝐴 ± 𝐵)𝐾𝑗 ,
where
𝑗
1 −1 1 0 𝑐
𝐴=( ), 𝐵=( ), 𝐶𝑗 = ( 1𝑗 ) , 𝑗 = 1, 2, … , 18.
−1 1 −2 1 𝑐2
−3 3 1 0 17 52
𝐶1 = (( )−( )) ( ) = ( ),
3 −3 −2 1 40 −75
1 −1 1 0 26 −65
𝐶2 = (( )−( )) ( ) = ( ),
−1 1 −2 1 65 26
−6 6 1 0 9 165
𝐶3 = (( )−( )) ( ) = ( ),
6 −6 −2 1 38 −194
−10 10 1 0 20 220
𝐶4 = (( )−( )) ( ) = ( ),
10 −10 −2 1 44 −244
−2 2 1 0 6 28
𝐶5 = (( )−( )) ( ) = ( ),
2 −2 −2 1 23 −45
13 −13 1 0 9 −412
𝐶6 = (( )−( )) ( ) = ( ),
−13 13 −2 1 40 381
−40 40 1 0 22 1778
𝐶7 = (( )−( )) ( ) = ( ),
40 −40 −2 1 67 −1823
−2020 2020 1 0 28 68652
𝐶8 = (( )−( )) ( ) = ( ),
2020 −2020 −2 1 62 −68686
5 −5 1 0 10 −125
𝐶9 = (( )−( )) ( ) = ( ),
−5 5 −2 1 33 102
2 −2 1 0 20 −94
𝐶10 = (( )−( )) ( ) = ( ),
−2 2 −2 1 57 57
−1951 1951 1 0 13 27301
𝐶11 = (( )−( )) ( ) = ( ),
1951 −1951 −2 1 27 −27315
−2023 2023 1 0 13 38424
𝐶12 = (( )−( )) ( ) = ( ),
2023 −2023 −2 1 32 −38443
4 −4 1 0 2 −62
𝐶13 = (( )−( )) ( ) = ( ),
−4 4 −2 1 17 47
−8 8 1 0 6 138
𝐶14 = (( )−( )) ( ) = ( ),
8 −8 −2 1 24 −156
6
−12 12 1 0 17 331
𝐶15 = (( )−( )) ( ) = ( ),
12 −12 −2 1 46 −360
−5 5 1 0 6 164
𝐶16 = (( )−( )) ( ) = ( ),
5 −5 −2 1 40 −198
6 −6 1 0 16 −166
𝐶17 = (( )−( )) ( ) = ( ),
−6 6 −2 1 41 141
−33 33 1 0 28 1127
𝐶18 = (( )−( )) ( ) = ( ).
33 −33 −2 1 63 −1162
Decryption Algorithm.
Step 1. Compute the decryption text,
𝐸𝑗 = (−𝑥𝑗 𝑆 ± 𝐼)𝐶𝑗 ,
where
𝑗 𝑗
𝑢 1 1 𝑐
𝐸𝑗 = ( 1𝑗 ) , 𝑆=( ), 𝐶𝑗 = ( 1𝑗 ) , 𝑗 = 1, 2, … , 18.
𝑣2 −1 −1 𝑐2
−3 −3 1 0 52 17
𝐸1 = (( )−( )) ( ) = ( ),
3 3 0 1 −75 6
1 1 1 0 −65 26
𝐸2 = (( )−( )) ( ) = ( ),
−1 −1 0 1 26 13
−6 −6 1 0 165 9
𝐸3 = (( )−( )) ( ) = ( ),
6 6 0 1 −194 20
−10 −10 1 0 220 20
𝐸4 = (( )−( )) ( ) = ( ),
10 10 0 1 −224 4
−2 −2 1 0 28 6
𝐸5 = (( )−( )) ( ) = ( ),
2 2 0 1 −45 11
13 13 1 0 −412 9
𝐸6 = (( )−( )) ( ) = ( ),
−13 −13 0 1 381 22
−40 −40 1 0 1778 22
𝐸7 = (( )−( )) ( ) = ( ),
40 40 0 1 −1823 23
−2020 −2020 1 0 68652 28
𝐸8 = (( )−( )) ( ) = ( ),
2020 2020 0 1 −68686 6
5 5 1 0 −125 10
𝐸9 = (( )−( )) ( ) = ( ),
−5 −5 0 1 102 13
2 2 1 0 −94 20
𝐸10 = (( )−( )) ( ) = ( ),
−2 −2 0 1 57 17
−1951 −1951 1 0 27301 13
𝐸11 = (( )−( )) ( ) = ( ),
1951 1951 0 1 −27315 1
−2023 −2023 1 0 38424 13
𝐸12 = (( )−( )) ( ) = ( ),
2023 2023 0 1 −38443 6
7
4 4 1 0 −62 2
𝐸13 = (( )−( )) ( ) = ( ),
−4 −4 0 1 47 13
−8 −8 1 0 138 6
𝐸14 = (( )−( )) ( ) = ( ),
8 8 0 1 −156 12
−12 −12 1 0 331 17
𝐸15 = (( )−( )) ( ) = ( ),
12 12 0 1 −360 12
−5 −5 1 0 164 6
𝐸16 = (( )−( )) ( ) = ( ),
5 5 0 1 −198 28
6 6 1 0 −166 16
𝐸17 = (( )−( )) ( ) = ( ),
−6 −6 0 1 144 9
−33 −33 1 0 1127 28
𝐸18 = (( )−( )) ( ) = ( ).
33 33 0 1 −1162 7
𝑗
𝑒
Step 2. Construct the matrices 𝐸 = ( 1𝑗 ) ,
𝑒2 𝑗∈{1,2,…,18}
thus
𝐼 𝑅 𝐴 𝐿 𝛾 𝐴 𝑁 𝑇 𝐵 𝐿 𝐸 𝐸 𝑊 𝛾 𝐼 𝛾 𝐻 𝑇
𝐸=( )
𝛾 𝐸 𝐿 𝑌 𝐶 𝑁 𝑂 𝛾 𝐸 𝐼 𝑉 𝛾 𝐸 𝐷 𝐷 𝑇 𝐴 !
from table (2).
Example 3.2. encrypted the messages text:
“CIPHER”
the messages matrix 𝐸 is:
𝐶 𝑃 𝐸
𝐸=( )
𝐼 𝐻 𝑅
Encryption Algorithm.
Step 1. To encrypted the messages text, we divide the message matrix into blocks
𝑗
𝑒
𝐸𝑗 = ( 1𝑗 ) , 𝑗 = 1, 2, 3.
𝑒2
Hence,
𝐶 𝑃 𝐸
𝐸1 = ( ) , 𝐸2 = ( ) , 𝐸3 = ( ),
𝐼 𝐻 𝑅
Step 2. To choose 𝑛, we compute 𝑎, Since the number of the blocks 𝐴𝑗 , 𝑗 = 1, 2, 3 is 3 ≤ 3, so
we choose 𝑛 = 3, thus the “character table” for the message as follows:
Table (6)
𝐶 𝐼 𝑃
5 11 18
𝐻 𝐸 𝑅
10 7 20
Table (2)
Step 3. The elements of the blocks 𝐸𝑗 , 𝑗 = 1, 2, 3 as follows:
Table (7)
8
𝑒11 5
𝑒21 11
𝑒12 18
𝑒22 10
𝑒13 7
𝑒23 20
Step 4. We determine the encryption keys 𝑥𝑗 , 𝑗 = 1, 2, 3.
Table (8)
𝑗 𝑥𝑗
1 5
2 3
3 −125
𝑗 𝑗
𝑘1 𝑢1
Step 5. Compute 𝐾𝑗 = ( 𝑗
)=( 𝑗 𝑗
) , 𝑗 = 1, 2, 3.
𝑘2 2𝑢1 + 𝑣2
Table (9)
𝑘11 5
1 21
𝑘2
2 18
𝑘1
2 46
𝑘2
3 7
𝑘1
3 34
𝑘2
Step 6. Compute the cipher text,
𝐶𝑗 = (−𝑥𝑗 𝐴 ± 𝐵)𝐾𝑗 ,
where
𝑗
1 −1 1 0 𝑐
𝐴=( ), 𝐵=( ), 𝐶𝑗 = ( 1𝑗 ) , 𝑗 = 1, 2, 3.
−1 1 −2 1 𝑐2
−5 5 1 0 5 85
𝐶1 = (( )+( )) ( ) = ( ),
5 −5 −2 1 21 −69
−3 3 1 0 18 102
𝐶2 = (( )+( )) ( ) = ( ),
3 −3 −2 1 46 −74
125 −125 1 0 7 3395
𝐶3 = (( )+( )) ( ) = ( ).
−125 125 −2 1 34 −3368
Decryption Algorithm.
Step 1. Compute the decryption text,
𝐸𝑗 = (−𝑥𝑗 𝑆 ± 𝐼)𝐶𝑗 ,
where
9
𝑗 𝑗
𝑒 1 1 𝑐1
𝐸𝑗 = ( 1𝑗 ) , 𝑆=( ), 𝐶𝑗 = ( 𝑗 ) , 𝑗 = 1, 2, 3.
𝑒2 −1 −1 𝑐2
−5 −5 1 0 85 5
𝐸1 = (( )+( )) ( ) = ( ),
5 5 0 1 −69 11
−3 −3 1 0 102 18
𝐸2 = (( )+( )) ( ) = ( ),
3 3 0 1 −74 10
125 125 1 0 3395 7
𝐸3 = (( )+( )) ( ) = ( ).
−125 −125 0 1 −3368 20
𝑗
𝑒
Step 2. Construct the matrices 𝐸 = ( 1𝑗 )
𝑒2 𝑗∈{1,2,3}
thus
𝐶 𝑃 𝐸
𝐸=( ).
𝐼 𝐻 𝑅
from table (6).
4. Conclusion
In this research, we introduced a new encryption and decryption algorithm (SOA algorithm) that
enhances security by using a unique random key for each block of text and combining it with
computational methods, key matrices from the blocks, and fixed square matrices. This approach
ensures that each block is encrypted differently, making it harder for attackers to break the
encryption. The results show that our algorithm is effective in securing text data while
maintaining a structured process for encryption and decryption. This makes it a strong candidate
for applications requiring high security and reliability. Future work can explore optimizing the
algorithm for larger datasets and testing it against more advanced cryptographic attacks to further
validate its strength.
References.
[1] Hellman, M. (1976). New directions in cryptography. IEEE transactions on Information
Theory, 22(6), 644-654.
[2] William Kretschmer, Luowen Qian, Makrand Sinha, and Avishay Tal (2023). Quantum
Cryptography in Algorithmica. In Proceedings of the 55th Annual ACM Symposium on
Theory of Computing (STOC 2023). Association for Computing Machinery, New York,
NY, USA, 1589–1602. [Link]
[3] Ibrahim, D.R., Teh, J.S. & Abdullah, R. (2021). An overview of visual cryptography
techniques. Multimed Tools Appl 80, 31927–31952.
[Link]
[4] Whitfield Diffie and Martin E. Hellman. (2022). New Directions in Cryptography.
Democratizing Cryptography: The Work of Whitfield Diffie and Martin Hellman (1st
10
ed.). Association for Computing Machinery, New York, NY, USA, 365–390.
[Link]
[5] Silva, C., Cunha, V.A., Barraca, J.P. et al. (2024). Analysis of the Cryptographic
Algorithms in IoT Communications. Inf Syst Front 26, 1243–1260.
[Link]
[6] Rivest, R.L., Shamir, A., & Adleman, L.M. (1978). “A method for obtaining digital
signatures and public-key cryptosystems” Communications of the ACM, 21, 120-126.
[7] Singh, G. (2013). A study of encryption algorithms (RSA, DES, 3DES and AES) for
information security. International Journal of Computer Applications, 67(19).
[8] Abdullah, A. M. (2017). Advanced encryption standard (AES) algorithm to encrypt and
decrypt data. Cryptography and Network Security, 16(1), 11.
[9] Sanchez-Avila, C., & Sanchez-Reillol, R. (2001, October). The Rijndael block cipher
(AES proposal): a comparison with DES. In Proceedings IEEE 35th Annual 2001
international carnahan conference on security technology (Cat. No. 01CH37186) (pp.
229-234). IEEE.
[10] Xin Zhou and Xiaofei Tang, (2011). "Research and implementation of RSA
algorithm for encryption and decryption," Proceedings of 2011 6th International Forum
on Strategic Technology, Harbin, Heilongjiang, pp. 1118-1121.
doi: 10.1109/IFOST.2011.6021216.
[11] Han, S. J., Oh, H. S., & Park, J. (1996, September). The improved data encryption
standard (DES) algorithm. In Proceedings of ISSSTA'95 International Symposium on
Spread Spectrum Techniques and Applications (Vol. 3, pp. 1310-1314). IEEE.
[12] Schneier, B. (1993, December). Description of a new variable-length key, 64-bit
block cipher (Blowfish). In International Workshop on Fast Software Encryption (pp.
191-204). Berlin, Heidelberg: Springer Berlin Heidelberg.
[13] Abo irzayzah, S., & Al Bolati, T., (2023), Coding and Decoding Algorithms Using
Jacobsthal and Jacobsthal-Lucas numbers., Alqala Journal, 20, 19-28.
11