# A Novel and Robust Hybrid Blockchain and Steganography Scheme
## 3 Methodology and Proposed Method
### Proposed Ozyavas-Takaoglu-Ajlouni (OTA) Algorithm
#### 3.3.1 OTA-Steganography Algorithm  
In the proposed OTA-steganography algorithm, the multimedia selected as covers are stored on a private server. The URLs of these multimedia are referred to and stored in the blocks in the OTA-chain. This way, when the cover multimedia is sent using the public channel, various unintentional distortions in the cover multimedia can be detected and corrected. Because the OTA-steganography algorithm does not hide any data in the cover multimedia image, it cannot be detected by any steganalysis method. Therefore, it differs from conventional steganography and has its own novel structure. The plaintext data is divided into 2,3,4, etc., number of bits depending on the chunk size to be used. Whatever the choice of division, a sequential search for plaintext data bit patterns will be performed in the cover multimedia file for matching bit pieces. Once the algorithm finds a match, the matching pieces starting bit number, or index, in the cover multimedia is saved. The search continues for remaining plaintext data bit pieces from where the last successful search in the cover multimedia ended. If a search for a piece of the plaintext reaches the end of the cover multimedia before it finds the matching bit pattern, the search continues at the beginning of the cover multimedia file, hence making the process cyclic. When all bit patterns in the plaintext data in the cover multimedia file are found, the algorithm places the saved indices in an array. The array containing the indices is called the \"address array\" in the rest of the discussion. This array is divided into 1 kilobyte (kB) arrays, and each 1 kB of stego-data corresponds to 1 transaction in the OTA-chain. In Figure 2, the architecture of the OTA-steganography algorithm is shared. Figure 2: Architecture of OTA Steganography. The probability of not finding a bit pattern of length n in a cover multimedia of length m where m > n is computed using Markov chains. The details of different length bit patterns, cover multimedia length, and their probabilities are shown in Table 1. Eight-bit divisions of the message are well suited because 1 kB of data requires 1 kB of address array, which is the size of a transaction in the private blockchain. It can be seen in Table 1 that the probability of not finding any 8-bit pattern in a small size cover multimedia is extremely small. That is, the probability of finding any 8-bit pattern in cover multimedia of size above 256 bytes is almost 100%. While the OTA-steganography algorithm processes the cover multimedia, indices of 2, 3, and 4 bit pieces of the plaintext data are saved for performance comparison. Using bigger chunks will result in a shorter address array, but it will take more search time for the address array creation. Stego-data, the address array in this case, obtained from the OTA-steganography algorithm is encrypted using the One-Time-Pad (OTP) algorithm [2]. The OTP key can be shared using any method because the OTA-chain does not pose a risk if the key is in the hands of undesirable parties in the public channel because it is in a private OTA blockchain. Even though the proposed system is designed for small-sized messages, data bigger than the cover multimedia file can be transformed into an address array because of the cyclic nature of the algorithm. Figure 2 illustrates the block diagram of the OTA-steganography algorithm. The proposed OTA-steganography algorithm achieves an almost unlimited payload capacity by using a single cover multimedia with its precise marking and indexing technique. The pseudocode of the OTA-steganography algorithm is represented in Algorithm 1. A refers to the cover multimedia, B refers to the secret data, and C refers to the address arrays. Ciphered Secret Data (CSD) is the encrypted form of the most optimal C arrays obtained as a result of applying the OTA algorithm on secret data.