%%%\section{Random Number Generator: Theories and Classification} 
%
\textit{Single N-Dimention}
In 2004 [9] Guan et al. proposed a one dimensional CA where the rule in each cell changes dynamically based upon the states of the cells within a new neighborhood of three cells. Dubbed “Self-Programmable Cellular Automata” (SPCA), the rules are switched between 90/165 or 150/105 and they can be easily implemented with XOR gates. Certain combinations of rules and neighborhoods were shown to produce maximal length sequences with good quality random numbers.

In 2006 Leonidas Kotoulas and al, The proposed 1-d CA is based on the real time clock sequence and used for stream cipher. The authors show that by using rules based computer times sequence as year, months to seconds can generate initial state and the length of CA cells. the initial state configuration and simultaneously the length of CA cells the product of all the above numbers, namely day, month, year, hour, min and seconds was calculated. The execution time was decided to be t = x(60 - x). The first rule arises from the product of minutes by seconds. The second rule is the number of minutes divided by the number of seconds multiplied by a constant.

Where In 2009 Ding Jun and al, implement an efficient PRNG based on the classical CA with 32 cells using rule 30 is reported and prove a high PRNG performance. 

In 2010 Ioana Dogaru and Radu Dogaru, create an automatic software tool based on Algebraic Normal Form (ANF) representation to generate an RTL code of any hybrid CA depending on ID rules. the results show by using ANF representation  $y = [K_{0} xor K_{1}(U_{1}) xor K_{2}(U_{2}) xor K_{3}(U_{3}) xor K_{4}(U_{1}*U_{2}) xor ... K_{7}(U_{1}*U_{2}*U_{3})] xor mask$ with ID=101 and 3 neighbor are identical to Matlab results.

\textit{Combined N-Dimention}
In 2003 Tkacik proposed a hardware random number generator implemented on a custom IC which combines the outputs of a CA with an LFSR. A hybrid 90/150 rules an 37 bit CA was combined with a 43-bit LFSR. This maximal length configuration combined 32 bits from the CA and LFSR to produce a maximal length RNG. It was found that the LFSR and CA must be clocked at different frequencies to create a sequence of numbers that can pass all the DIEHARD tests. Then, in 2012 Juan C.Cerda and al, notice in Tkcide [2003] the combination must be clocked at different frequency to pass all NIST test, and present another combination PRNG using HCA using 90/150 and LFSR to solve this problem. The trick is XORing the last bit of HCA with the last bit of LSFR to generate 1-bit per clock cycle, and they found the best combination for a high quality of PRNG is 37-bit LFSR with 16-bit CA. then 2012, they compare they preview work LFSR/HCA with a SPCA 2004 that use 90/156 rules, and they find that even SPCA fail in one statistic test but give a better throughput than the LFSR/HCA

In 2007 Petre Anghelescu and al, propose a combination of two logic combinational circuit of Hybrid HCA where PRNG and block cipher for an encryption system, and the first HCA-1 use two rules 90/150 as a real-time key stream generator and the second HCA-1 use 51/153/195 rules. To select witch rules will be used by the block cipher HCA-2, the PRNG or HCA-1 generate an encrypting rules to switch the rules and that provide each cell has is own rules. 

In 2013 Lakshman Raut and David H. K. Hoe, show us another stream cipher design and combination of CA and LFSR but they introduce NLFSR block based on A2U2 design to resist more for a various forms of cryptanalysis, such as correlation attacks and algebraic attacks. Where CA and NFSR are both has feedback for each other and use a LFSR counter as input random, then the key bit stream will pass to a mixer mechanism to increase the complexity for decryption. 

In 2014, Dogaru Ioana and Dogaru Radu. introduce a comparison o two implementation of HCA as PRNG to maximize efficiency/throughput, where the first is a basic 63-bit HCA and the second is a chain of HCA(2 HCA) and they demonstrate a high ration of frequency/ares and cryptography by using a chain of HCA instead of single HCA.