\documentclass[11pt,twoside]{article}\makeatletter

\IfFileExists{xcolor.sty}%
  {\RequirePackage{xcolor}}%
  {\RequirePackage{color}}
\usepackage{colortbl}
\usepackage{wrapfig}
\usepackage{ifxetex}
\ifxetex
  \usepackage{fontspec}
  \usepackage{xunicode}
  \catcode`⃥=\active \def⃥{\textbackslash}
  \catcode`❴=\active \def❴{\{}
  \catcode`❵=\active \def❵{\}}
  \def\textJapanese{\fontspec{Noto Sans CJK JP}}
  \def\textChinese{\fontspec{Noto Sans CJK SC}}
  \def\textKorean{\fontspec{Noto Sans CJK KR}}
  \setmonofont{DejaVu Sans Mono}
  
\else
  \IfFileExists{utf8x.def}%
   {\usepackage[utf8x]{inputenc}
      \PrerenderUnicode{–}
    }%
   {\usepackage[utf8]{inputenc}}
  \usepackage[english]{babel}
  \usepackage[T1]{fontenc}
  \usepackage{float}
  \usepackage[]{ucs}
  \uc@dclc{8421}{default}{\textbackslash }
  \uc@dclc{10100}{default}{\{}
  \uc@dclc{10101}{default}{\}}
  \uc@dclc{8491}{default}{\AA{}}
  \uc@dclc{8239}{default}{\,}
  \uc@dclc{20154}{default}{ }
  \uc@dclc{10148}{default}{>}
  \def\textschwa{\rotatebox{-90}{e}}
  \def\textJapanese{}
  \def\textChinese{}
  \IfFileExists{tipa.sty}{\usepackage{tipa}}{}
\fi
\def\exampleFont{\ttfamily\small}
\DeclareTextSymbol{\textpi}{OML}{25}
\usepackage{relsize}
\RequirePackage{array}
\def\@testpach{\@chclass
 \ifnum \@lastchclass=6 \@ne \@chnum \@ne \else
  \ifnum \@lastchclass=7 5 \else
   \ifnum \@lastchclass=8 \tw@ \else
    \ifnum \@lastchclass=9 \thr@@
   \else \z@
   \ifnum \@lastchclass = 10 \else
   \edef\@nextchar{\expandafter\string\@nextchar}%
   \@chnum
   \if \@nextchar c\z@ \else
    \if \@nextchar l\@ne \else
     \if \@nextchar r\tw@ \else
   \z@ \@chclass
   \if\@nextchar |\@ne \else
    \if \@nextchar !6 \else
     \if \@nextchar @7 \else
      \if \@nextchar (8 \else
       \if \@nextchar )9 \else
  10
  \@chnum
  \if \@nextchar m\thr@@\else
   \if \@nextchar p4 \else
    \if \@nextchar b5 \else
   \z@ \@chclass \z@ \@preamerr \z@ \fi \fi \fi \fi
   \fi \fi  \fi  \fi  \fi  \fi  \fi \fi \fi \fi \fi \fi}
\gdef\arraybackslash{\let\\=\@arraycr}
\def\@textsubscript#1{{\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\def\abbr{}
\def\corr{}
\def\expan{}
\def\gap{}
\def\orig{}
\def\reg{}
\def\ref{}
\def\sic{}
\def\persName{}\def\name{}
\def\placeName{}
\def\orgName{}
\def\textcal#1{{\fontspec{Lucida Calligraphy}#1}}
\def\textgothic#1{{\fontspec{Lucida Blackletter}#1}}
\def\textlarge#1{{\large #1}}
\def\textoverbar#1{\ensuremath{\overline{#1}}}
\def\textquoted#1{‘#1’}
\def\textsmall#1{{\small #1}}
\def\textsubscript#1{\@textsubscript{\selectfont#1}}
\def\textxi{\ensuremath{\xi}}
\def\titlem{\itshape}
\newenvironment{biblfree}{}{\ifvmode\par\fi }
\newenvironment{bibl}{}{}
\newenvironment{byline}{\vskip6pt\itshape\fontsize{16pt}{18pt}\selectfont}{\par }
\newenvironment{citbibl}{}{\ifvmode\par\fi }
\newenvironment{docAuthor}{\ifvmode\vskip4pt\fontsize{16pt}{18pt}\selectfont\fi\itshape}{\ifvmode\par\fi }
\newenvironment{docDate}{}{\ifvmode\par\fi }
\newenvironment{docImprint}{\vskip 6pt}{\ifvmode\par\fi }
\newenvironment{docTitle}{\vskip6pt\bfseries\fontsize{22pt}{25pt}\selectfont}{\par }
\newenvironment{msHead}{\vskip 6pt}{\par}
\newenvironment{msItem}{\vskip 6pt}{\par}
\newenvironment{rubric}{}{}
\newenvironment{titlePart}{}{\par }

\newcolumntype{L}[1]{){\raggedright\arraybackslash}p{#1}}
\newcolumntype{C}[1]{){\centering\arraybackslash}p{#1}}
\newcolumntype{R}[1]{){\raggedleft\arraybackslash}p{#1}}
\newcolumntype{P}[1]{){\arraybackslash}p{#1}}
\newcolumntype{B}[1]{){\arraybackslash}b{#1}}
\newcolumntype{M}[1]{){\arraybackslash}m{#1}}
\definecolor{label}{gray}{0.75}
\def\unusedattribute#1{\sout{\textcolor{label}{#1}}}
\DeclareRobustCommand*{\xref}{\hyper@normalise\xref@}
\def\xref@#1#2{\hyper@linkurl{#2}{#1}}
\begingroup
\catcode`\_=\active
\gdef_#1{\ensuremath{\sb{\mathrm{#1}}}}
\endgroup
\mathcode`\_=\string"8000
\catcode`\_=12\relax

\usepackage[a4paper,twoside,lmargin=1in,rmargin=1in,tmargin=1in,bmargin=1in,marginparwidth=0.75in]{geometry}
\usepackage{framed}

\definecolor{shadecolor}{gray}{0.95}
\usepackage{longtable}
\usepackage[normalem]{ulem}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{marginnote}

\renewcommand{\@cite}[1]{#1}


\renewcommand*{\marginfont}{\itshape\footnotesize}

\def\Gin@extensions{.pdf,.png,.jpg,.mps,.tif}

  \pagestyle{fancy}

\usepackage[pdftitle={Optimal Rules Identification for a Random Number Generator Using Cellular Learning Automata},
 pdfauthor={}]{hyperref}
\hyperbaseurl{}

	 \paperwidth210mm
	 \paperheight297mm
              
\def\@pnumwidth{1.55em}
\def\@tocrmarg {2.55em}
\def\@dotsep{4.5}
\setcounter{tocdepth}{3}
\clubpenalty=8000
\emergencystretch 3em
\hbadness=4000
\hyphenpenalty=400
\pretolerance=750
\tolerance=2000
\vbadness=4000
\widowpenalty=10000

\renewcommand\section{\@startsection {section}{1}{\z@}%
     {-1.75ex \@plus -0.5ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large\bfseries}}
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
     {-1.75ex\@plus -0.5ex \@minus- .2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
     {-1.5ex\@plus -0.35ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\large}}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
     {-1ex \@plus-0.35ex \@minus -0.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\normalsize}}
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
     {1.5ex \@plus1ex \@minus .2ex}%
     {-1em}%
     {\reset@font\normalsize\bfseries}}


\def\l@section#1#2{\addpenalty{\@secpenalty} \addvspace{1.0em plus 1pt}
 \@tempdima 1.5em \begingroup
 \parindent \z@ \rightskip \@pnumwidth 
 \parfillskip -\@pnumwidth 
 \bfseries \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}\par
 \endgroup}
\def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
\def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
\def\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
\def\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
\@ifundefined{c@section}{\newcounter{section}}{}
\@ifundefined{c@chapter}{\newcounter{chapter}}{}
\newif\if@mainmatter 
\@mainmattertrue
\def\chaptername{Chapter}
\def\frontmatter{%
  \pagenumbering{roman}
  \def\thechapter{\@roman\c@chapter}
  \def\theHchapter{\roman{chapter}}
  \def\thesection{\@roman\c@section}
  \def\theHsection{\roman{section}}
  \def\@chapapp{}%
}
\def\mainmatter{%
  \cleardoublepage
  \def\thechapter{\@arabic\c@chapter}
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \pagenumbering{arabic}
  \setcounter{secnumdepth}{6}
  \def\@chapapp{\chaptername}%
  \def\theHchapter{\arabic{chapter}}
  \def\thesection{\@arabic\c@section}
  \def\theHsection{\arabic{section}}
}
\def\backmatter{%
  \cleardoublepage
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \setcounter{secnumdepth}{2}
  \def\@chapapp{\appendixname}%
  \def\thechapter{\@Alph\c@chapter}
  \def\theHchapter{\Alph{chapter}}
  \appendix
}
\newenvironment{bibitemlist}[1]{%
   \list{\@biblabel{\@arabic\c@enumiv}}%
       {\settowidth\labelwidth{\@biblabel{#1}}%
        \leftmargin\labelwidth
        \advance\leftmargin\labelsep
        \@openbib@code
        \usecounter{enumiv}%
        \let\p@enumiv\@empty
        \renewcommand\theenumiv{\@arabic\c@enumiv}%
	}%
  \sloppy
  \clubpenalty4000
  \@clubpenalty \clubpenalty
  \widowpenalty4000%
  \sfcode`\.\@m}%
  {\def\@noitemerr
    {\@latex@warning{Empty `bibitemlist' environment}}%
    \endlist}

\def\tableofcontents{\section*{\contentsname}\@starttoc{toc}}
\parskip0pt
\parindent1em
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\newenvironment{reflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemsep}{0pt}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\itshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{sansreflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\itemsep}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\upshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{specHead}[2]%
 {\vspace{20pt}\hrule\vspace{10pt}%
  \phantomsection\label{#1}\markright{#2}%

  \pdfbookmark[2]{#2}{#1}%
  \hspace{-0.75in}{\bfseries\fontsize{16pt}{18pt}\selectfont#2}%
  }{}
      \def\TheFullDate{2012-05-15 (revised: 15 May 2012)}
\def\TheID{\makeatother }
\def\TheDate{2012-05-15}
\title{Optimal Rules Identification for a Random Number Generator Using Cellular Learning Automata}
\author{}\makeatletter 
\makeatletter
\newcommand*{\cleartoleftpage}{%
  \clearpage
    \if@twoside
    \ifodd\c@page
      \hbox{}\newpage
      \if@twocolumn
        \hbox{}\newpage
      \fi
    \fi
  \fi
}
\makeatother
\makeatletter
\thispagestyle{empty}
\markright{\@title}\markboth{\@title}{\@author}
\renewcommand\small{\@setfontsize\small{9pt}{11pt}\abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus2\p@
\belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
\def\@listi{\leftmargin\leftmargini
               \topsep 2\p@ plus1\p@ minus1\p@
               \parsep 2\p@ plus\p@ minus\p@
               \itemsep 1pt}
}
\makeatother
\fvset{frame=single,numberblanklines=false,xleftmargin=5mm,xrightmargin=5mm}
\fancyhf{} 
\setlength{\headheight}{14pt}
\fancyhead[LE]{\bfseries\leftmark} 
\fancyhead[RO]{\bfseries\rightmark} 
\fancyfoot[RO]{}
\fancyfoot[CO]{\thepage}
\fancyfoot[LO]{\TheID}
\fancyfoot[LE]{}
\fancyfoot[CE]{\thepage}
\fancyfoot[RE]{\TheID}
\hypersetup{citebordercolor=0.75 0.75 0.75,linkbordercolor=0.75 0.75 0.75,urlbordercolor=0.75 0.75 0.75,bookmarksnumbered=true}
\fancypagestyle{plain}{\fancyhead{}\renewcommand{\headrulewidth}{0pt}}

\date{}
\usepackage{authblk}

\providecommand{\keywords}[1]
{
\footnotesize
  \textbf{\textit{Index terms---}} #1
}

\usepackage{graphicx,xcolor}
\definecolor{GJBlue}{HTML}{273B81}
\definecolor{GJLightBlue}{HTML}{0A9DD9}
\definecolor{GJMediumGrey}{HTML}{6D6E70}
\definecolor{GJLightGrey}{HTML}{929497} 

\renewenvironment{abstract}{%
   \setlength{\parindent}{0pt}\raggedright
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
   \textcolor{GJBlue}{\large\bfseries\abstractname\space}
}{%   
   \vskip8pt
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
}

\usepackage[absolute,overlay]{textpos}

\makeatother 
      \usepackage{lineno}
      \linenumbers
      
\begin{document}

             \author[1]{Dr. Atefeh Ghalambor  Dezfuly}

             \author[2]{Saeed  Setayeshi}

             \author[3]{Mohammad  Mosleh}

             \affil[1]{  Islamic Azad University}

\renewcommand\Authands{ and }

\date{\small \em Received: 13 April 2012 Accepted: 3 May 2012 Published: 15 May 2012}

\maketitle


\begin{abstract}
        


The cryptography is known as one of most essential ways for protecting information against threats. Among all encryption algorithms, stream ciphering can be indicated as a sample of swift ways for this purpose, in which, a generator is applied to produce a sequence of bits as the key stream. Although this sequence is seems to be random, severely, it contains a pattern that repeats periodically. Linear Feedback Shift Registers and cellular automata have been used as pseudo-random number generator. Some challenges such as error propagation and pattern dependability have motivated the designers to use CA for this purpose. The most important issue in using cellular automata includes determining an optimal set of rules for cells. This paper focuses on selecting optimal rules set for such this generator with using an open cellular learning automata, which is a cellular automata with learning capability and interacts with local and global environments.

\end{abstract}


\keywords{Cryptography; Symmetric encryption; stream ciphering; Learning Cellular Automata; local environment; global environment.}

\begin{textblock*}{18cm}(1cm,1cm) % {block width} (coords) 
\textcolor{GJBlue}{\LARGE Global Journals \LaTeX\ JournalKaleidoscope\texttrademark}
\end{textblock*}

\begin{textblock*}{18cm}(1.4cm,1.5cm) % {block width} (coords) 
\textcolor{GJBlue}{\footnotesize \\ Artificial Intelligence formulated this projection for compatibility purposes from the original article published at Global Journals. However, this technology is currently in beta. \emph{Therefore, kindly ignore odd layouts, missed formulae, text, tables, or figures.}}
\end{textblock*}


\let\tabcellsep& 	 	 		 
\section[{Introduction}]{Introduction}\par
ased on applications, such as data storing, transferring and processing, the information can be threatened in several way. In each threat, dependent to the threat agent, the information may be changed and lose their credibility, or be stolen and lose their confidentiality, only. The cryptography has been considered as an approach to protecting information, in both cases, and in different conditions, can help to preserving data credibility and confidentiality. Generally, this approach includes transforming a plain-text into a ciphered-text. In this way, a determined function and a specific key are used, and the common purpose is establishing a secure communication between a sender A and a receiver B over an insecure communication channel \hyperref[b0]{[1]}. Regarding key type viewpoint, the encryption algorithms are divided into two broad classes: symmetric and asymmetric algorithms. In the first class, both a communication parties use a common secret key for both encryption and decryption process; whereas in second ones, each of communication parties has its private secret key and also a public key. Asymmetric-key algorithms provide stronger securities compared to symmetric ones; however, because of massive numeral computation for increasing the security of these algorithms, they have lower speeds compared to the first class algorithms \hyperref[b1]{[2]}.\par
The symmetric algorithms are divided into Block ciphering and Stream ciphering algorithms, themselves. In both ones, using an efficient tool for adding the randomness in the key or ciphered text is considered, as a basis. So, the Cellular Automata (CA) as a complex parallel processing model has been used in both these mentioned algorithms. The CA can be used for increasing encryption and decryption security and speed, via its parallel operation nature and its pseudorandom output \hyperref[b2]{[3,}\hyperref[b3]{4]}. However, the main problem in using CA for cryptography includes selecting a rule set for cells that provides security requirements, optimally. In this paper, using a Learning Cellular Automata (LCA), as an extended model of CA, has been considered for selecting an optimal rule set for a key generator based on CA that can be used in stream ciphering.\par
For the purpose of this paper, it has been organized as follows: section 2 introduces stream ciphering. In section 3, key generating will be focused and after introducing CA as a common key generator, using it for this purpose will be reviewed. Also, the Learning Cellular Automata (LCA) as the basis of proposed model will be introduced. Then, section 4 presents the proposed model for identifying optimal rules that must be used in CA-based random number generator. Section 5 has been designated for reporting experiments results and finally, section 6 includes conclusion. 
\section[{II.}]{II.} 
\section[{Stream ciphering}]{Stream ciphering}\par
In a block ciphering system, the plain text is divided into several blocks with a specific size, and each block is transformed to a ciphered block, independently. However, the stream ciphering process transforms each plain text bit to a cipher bit, per a time instance \hyperref[b4]{[5]}. A stream ciphering system includes a pseudo random bit sequence generator and a function box. The generator produces a bit stream that is considered as a key sequence and is combined with the plain text in a bitwise manner, and generates a cipher bit. This combination is done by a function box which often is an XOR-operator.\par
The performance of an encryption system depends on randomness degree of key stream, used in encryption. So the key generator plays an important role in this way. Among different key generators, the random number generators based on Linear Feedback Shift Register (LFSR) and Cellular Automata (CA) have been known as prevalent ones.\par
An LFSR includes a shift register together with a set of XOR operators which combine the feedbacks extracted from the register cells. This model is defined by an n-degree polynomial which specifies the operators and feedbacks arrangements \hyperref[b1]{[2]}. A sample of these generators has been shown in fig.  {\ref 1}. Fig.  {\ref 1}: A typical sample of LFSR In some systems, a combination of LFSRs has been utilized for increasing the randomness of generated sequence. This requires applying nonlinear combination functions. The researches have indicated that utilizing linear CA provides an operation similar to LFSR \hyperref[b14]{[15,}\hyperref[b15]{16,}\hyperref[b16]{17,}\hyperref[b17]{18]}. In the other word, CA structures can be used in key producing, as a replacement for LFSR. Some experiments results have shown that CA is proper for producing random features in digital circuits and automatic control systems \hyperref[b16]{[17]}. A desirable facet of CAs refers to independency between the sequence of generated bits and the states of neighbor cells. In this case, CA can be preferred compared to LFSR for stream ciphering. On the other hand, the main advantage of CA is that several generators designed as nonlinear combinations of LFSRs, when designing with CA, preserve linearity \hyperref[b20]{[20]}.\par
These mentioned advantages have been considered as the reasons to applying the CA as a Pseudo-Random sequence generator (PRSG). Really, the CA has an outstanding role in this area and is considered as an important tool for generating random sequences \hyperref[b2]{[3,}\hyperref[b5]{6,}\hyperref[b6]{7,}\hyperref[b7]{8]}. 
\section[{III.}]{III.} 
\section[{Key generation a) Cellular Automata (CA)}]{Key generation a) Cellular Automata (CA)}\par
The concept of CA was introduced by Von Neumann and Ulam at 1950s, for the first time, and was considered by Wolfram, more extensively. The simple structure of CA has attracted the researchers in several different areas, such as implementing the computing tools and modeling the natural systems \hyperref[b8]{[9]}. Each CA includes a set of simple elements called cells that each has a finite set of states, and interacts with its adjacent cells (neighborhood), locally. The next state of each specific cell is determined with a rule that is a function of current states of that cell and its neighbors. Fig.  {\ref 2} shows some samples of neighborhood patterns \hyperref[b9]{[10]}. Regarding a k-cell neighborhood, P=2k neighborhood patterns and thus 2P possible rules can be defined. Fig.  {\ref 3} shows schematic diagrams for some possible rules operations, assuming k=3. What is important in applying CA as a PRSG is selecting the rule set governing the cells such that the generated sequence provides a desirable level of randomness. Wolfram, for the first time, applied an uniform CA with k=3 neighborhood for encryption, at 1986. He used Rule 30 for all cells. His proposed model operated as a pseudo-random key stream generator for using in stream ciphering \hyperref[b17]{[18,}\hyperref[b21]{21]}. Afterward, other researchers showed that when using non-uniform CA, a higher level randomness is provided. For example, Habutsu et al. and Gutowitz and Nandi et al. used nonuniform CA with Rule 90 and Rule 150 for mentioned purpose and indicated that their generated key stream have a better quality than Wolfram's one \hyperref[b22]{[22,}\hyperref[b23]{23]}.\par
Tomassini and Perrenoud proposed a linear CA with k=3 and the rule set \{90,105,150,165\} \hyperref[b24]{[24]}. They used an evolutionary method called cell programming for searching optimal rules. This method is an evolutionary computational approach similar to diffusion model in parallel genetic algorithms. The entropy of generated sequence was used as a quality criterion for rules \hyperref[b24]{[24]}.\par
This paper has focused on using the learning capability of a Learning Cellular Automata for selecting a set of optimal rules for using in a CA-based PRSG. c) Learning Cellular Automata (LCA)\par
The Learning Automata (LA) as another model of automata includes a finite automata which interacts with an environment. The automata have a finite set of actions that each can be selected with a specific selection probability. Such this model operates in two phases: Training phase and Testing phase. In the first one, some probabilities are assigned to automata actions, such that all of them sum to one. Then, in each step, the automata select an action randomly and based on probabilities. The environment receives the selected action and responses to it with a desirability or undesirability of selected action, by sending back a response to it. Then, by considering the received response, the automata reward the selected action or penalize it. Rewarding an action implies an increase in action selection probability for next steps and penalizing it includes decreasing this probability. The training phase continues until the probability of a special action approaches to one and thus is determined as optimal action \hyperref[b11]{[12,}\hyperref[b12]{13]}. A sample of LA interacting with an environment has been shown in fig.  {\ref 5}  \hyperref[b13]{[14]}. Fig.  {\ref 5}: An LA interacting with an environment A set of LAs that in addition to interacting with the environment, have local interactions between themselves, form a Learning Cellular Automata (LCA). In such this structure, the desirability of selected action by each learning cell, is determined based on the states or selected actions by that cell and its neighbors. Updating all LAs is performed simultaneously; thus, the LCA has a parallel nature. A sample LCA has been shown in fig. \hyperref[fig_2]{6}, in which, each cell LAi selects an action denoted by Ai and the corresponding environment return a response denoted by Bi.  
\section[{IV. The proposed model}]{IV. The proposed model}\par
The proposed method in this paper focuses on finding a configuration of rules governing on the cells of a CA that operates as a PRSG. In this way, an LCA with two types of environment has been considered.\par
Each cell of LCA interacts with a local environment and all cells have interactions with a global environment, simultaneously.\par
The proposed method can be explained in two stages. In the first one, by considering a uniform CA with k-cell neighborhood, selecting M best rules among all possible rules is regarded. In order to do this, two empty vectors named best\textunderscore rules and best\textunderscore cnt are defined to hold the best rules indices and their correspond statistics. Then M different configurations are imposed to the CA, one by one. By imposing each configuration ci, as the initial state of the CA, during 2P stages (P=2K, in which, K is the size of neighborhood), all possible rules are assigned to the CA cells, one after another. By assigning each rule Rj to all cells of the CA, N sequences with the length l, are generated during the CA operation. Then, the entropy values are calculated for all sequences, using the method described in \hyperref[b10]{[11]} and based on Eq. ( \hyperref[formula_0]{4}).\par
()\textbf{4}\par
The max, min and average entropy values for each rule assigned to CA are stored in three vectors, separately. When the entropy values for all rules were calculated, the rules with maximum values in three mentioned vectors are selected. If these three rules are same, and not be found in best\textunderscore rules vector, the rule is added to the mentioned vector and its correspond counter is set to one in best\textunderscore cnt. If the rule exists in the best\textunderscore rules, already, its counter is increased by one.\par
This process is performed for M times and finally two mentioned vectors will contain best rules and the counters which indicate the number of times that each rule has been identified as the best rule. Among all best\textunderscore rules members, m ones with top counter values are selected to be used for the next stage. This process has been shown in fig.  {\ref 7}   This stage includes an initial phase in which a probability value is assigned to each action, initially. Then, in the training phase, all cells of LCA select actions, simultaneously. The selected action by each cell is considered as its rule, and all cells will generate llength sequences with using that rules and through l operation step. The generated sequences by each cell and its neighbor cells (its r-1 left and right cells) are passed to the local environment and the entropy values will be calculated for these sequences. Then, by considering an r-cell neighborhood for evaluating the quality of generated sequences, each local environment compares the calculated entropy values and if this entropy is maximum value among all r entropy values, returns a response as zero or returns one, otherwise.\par
Each learning cell rewards its selected action, if receive a zero as the local environment response; otherwise, it penalizes the selected action. After imposing rewards or penalties by all cells, all generated sequences are passed to the global environment.\par
This environment calculates all entropy values and the max, min and mean values for them. These values are compared with their previous values and if an improvement is detected, a response as 0 will be passed back to each LA.\par
In this case, each cell will impose a reward to its selected action. The training phase will be continue as described, until the actions probabilities in all cells reach a steady state. A flowchart describing each LA operation interacting with environments has been shown in fig. \hyperref[fig_5]{9}.  
\section[{Experiments results}]{Experiments results}\par
For evaluating the proposed model, a CA with the size N=50 and a neighborhood size, k=3, was considered and by applying 100 different initial configurations, m=10 top rules among 256 possible rules were selected (based on l=100 bits length sequences). A bar diagram for best rules found during these 100 configuration imposing has been shown in fig. \hyperref[fig_6]{10}. The 10 selected rules were assigned as the actions of each cells in a LCA with N=32 cells and initial probability values as 0.1 were considered for them. The initial configuration of LCA states was determined by a N=32 bits vector. Also, the neighborhood size considered for next state calculation in each cell was selected as k=3. Afterward, multiple experiments were done.\par
In the first one, the effect of learning neighborhood on the entropy values has been considered. For this purpose, after entering the training phase, each cell selects an action randomly and based on exist probabilities and then, all cells start generating pseudo-random sequences. The local environments, by considering r as the neighborhood size in evaluating each cell performance, calculates entropy values and produces a response as zero or one for each cell. Then the global environment, regarding all entropy values returns a response. This experiment was performed for r=3 and r=5 and its results have been reported in table \hyperref[b0]{(1)}. 
\section[{Table 1: The effect of Learning Neighborhood on entropy values}]{Table 1: The effect of Learning Neighborhood on entropy values}\par
In the second experiment, the effect of learning neighborhood on the number of required train steps has been regarded.\par
In order to this, the above experiment has been repeated for 10 different initial configurations and for r=3 and r=5. The results have been reported in Table \hyperref[b1]{(2)}.  
\section[{Conclusion}]{Conclusion}\par
The proposed model in this paper, has considered a LCA for determining optimal rules used by a pseudo-random key stream generator based on CA. On this way, parallel operation by LCA cells has a significant effect on optimal rules determination speed. Also, the number of training steps, considerably, affects the convergence ratio in cells. For evaluating the key stream generated by proposed model, a set of standard tests (FIPS-140-2) have been applied that evaluate its randomness property. A 20000-bit stream produced by proposed model has passed all tests defined in mentioned standard. Also, the obtained results for proposed model, in compare with previous models have been summarized in table \hyperref[b4]{(5)}.\begin{figure}[htbp]
\noindent\textbf{23}\includegraphics[]{image-2.png}
\caption{\label{fig_0}Fig. 2 :Fig. 3 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{4}\includegraphics[]{image-3.png}
\caption{\label{fig_1}Fig. 4 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{6}\includegraphics[]{image-4.png}
\caption{\label{fig_2}Fig. 6 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{}\includegraphics[]{image-5.png}
\caption{\label{fig_3}}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{720128}\includegraphics[]{image-6.png}
\caption{\label{fig_4}Fig. 7 : 2012 AprilFig. 8 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{9}\includegraphics[]{image-7.png}
\caption{\label{fig_5}Fig. 9 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{10}\includegraphics[]{image-8.png}
\caption{\label{fig_6}Fig. 10 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{2} \par 
\begin{longtable}{}
\end{longtable} \par
 
\caption{\label{tab_0}Table 2 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{3} \par 
\begin{longtable}{}
\end{longtable} \par
 
\caption{\label{tab_1}Table 3 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{4} \par 
\begin{longtable}{}
\end{longtable} \par
 
\caption{\label{tab_2}Table 4 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{5} \par 
\begin{longtable}{P{0.85\textwidth}}
2012\\
April\\
62\end{longtable} \par
 
\caption{\label{tab_3}Table 5 :}\end{figure}
 			\footnote{© 2012 Global Journals Inc. (US)} 			\footnote{© 2012 Global Journals Inc. (US) Global Journal of Computer Science and Technology Volume XII Issue VIII Version I} 		 		\backmatter  			  				\begin{bibitemlist}{1}
\bibitem[Cho et al. ()]{b18}\label{b18} 	 		\textit{},  		 			S Cho 		,  		 			C Un-Sook 		,  		 			H Yoon-Hee 		.  	 	 		\textit{Computing Phase Shifts of Maximum-Length}  		2004. 90 p. 150.  	 
\bibitem[Beigy and Meybodi ()]{b11}\label{b11} 	 		‘A Mathematical Framework for Cellular Learning Automata’.  		 			H Beigy 		,  		 			M R Meybodi 		.  	 	 		\textit{Advanced in Complex Systems,to Appear},  				2004. 7 p. .  	 
\bibitem[Wolfram ()]{b21}\label{b21} 	 		\textit{A new kind of science},  		 			S Wolfram 		.  		2002. Champaign, IL: Wolfram Media. 52 p. .  	 
\bibitem[Habutsu ()]{b23}\label{b23} 	 		‘A Secret Key Cryptography By Iterating Chaotic Map’.  		 			T Habutsu 		.  	 	 		\textit{Proc. of Eurocrypt\textunderscore 91},  				 (of Eurocrypt\textunderscore 91)  		1991. p. .  	 
\bibitem[Bardell ()]{b5}\label{b5} 	 		‘Analysis of Cellular Automata used as Pseudo-Random Pattern Generators’.  		 			P H Bardell 		.  	 	 		\textit{International Test Conference},  				1990. p. .  	 
\bibitem[Schneier ()]{b0}\label{b0} 	 		\textit{Applied cryptography, Second Edition},  		 			B Schneier 		.  		1996. John Wiley and sons.  	 
\bibitem[Bao ()]{b14}\label{b14} 	 		 			F Bao 		.  	 	 		\textit{Crytanalysis of a New Cellular Automata Cryptosystem, 8th Australasian Conference on Information Security and Privacy-ACISP},  		Lecture Notes in Computer Science  		2003. Springer Verlag. p. .  	 
\bibitem[Seredynski et al. ()]{b2}\label{b2} 	 		\textit{Cellular automata computations and secret key cryptography},  		 			F Seredynski 		,  		 			P Bouvry 		,  		 			A Zomaya 		.  		2004.  	 	 (Published by Elsevier B.V) 
\bibitem[Cellular Automata Sequences ()]{b19}\label{b19} 	 	 	 		\textit{Cellular Automata Sequences},  		Lecture Notes on Computer Science  		2004. Springer Verlag. 3305 p. .  	 	 (Proc. of ACRI) 
\bibitem[Wolfram ()]{b17}\label{b17} 	 		‘Cryptography with Cellular Automata, Advances in Cryptology-CRYPTO'85’.  		 			S Wolfram 		.  	 	 		Lecture Notes in Computer Science  		1994. Springer Verlag. 218 p. .  	 
\bibitem[Szaban et al. (2006)]{b10}\label{b10} 	 		\textit{Evolving Collective Behavior of Cellular Automata for Cryptography},  		 			M Szaban 		,  		 			F Seredynski 		,  		 			P ; Bouvry 		,  		 			Ieee Melecon 		.  		2006. May 16-19. Benalmadena (Malaga), Spain.  	 
\bibitem[Ganguly et al. ()]{b9}\label{b9} 	 		 			N Ganguly 		,  		 			B Sikdar 		,  		 			A Deutsch 		,  		 			G Canright 		,  		 			P Chaudhuri 		.  		\textit{A Survey on Cellular Automata},  				 (Dresden, Germany)  		2003.  		 			Centre for High Performance Computing, Dresden University of Technology 		 	 
\bibitem[Golomb ()]{b3}\label{b3} 	 		 			S Golomb 		.  		\textit{Shift-Register Sequences},  				1982. Aegean Press.  	 	 (revised edition) 
\bibitem[Lai and Saskatchewan (2000)]{b1}\label{b1} 	 		\textit{High-Speed Cellular Automata based block cipher and fault tolerant public key cryptosystems, Thesis, computer science},  		 			C Lai 		,  		 			R Saskatchewan 		.  		Aug 2000. Regina ,Canada.  	 
\bibitem[Kumpati et al. (1974)]{b13}\label{b13} 	 		‘Learning Automata A Survey’.  		 			S Kumpati 		,  		 			K S Narendra 		,  		 			M A L Thathachar 		.  	 	 		\textit{IEEE Transactions on Systems, Man, And Cybernetics}  		July 1974.  (4) .  	 
\bibitem[Narendra and Thathachar ()]{b12}\label{b12} 	 		\textit{Learning Automata: An Introduction},  		 			K S Narendra 		,  		 			M A L Thathachar 		.  		1989. Prentice Hall.  	 
\bibitem[F´uster-Sabater and Caballero-Gil (2006)]{b4}\label{b4} 	 		\textit{On the Use of Cellular Automata in Symmetric Cryptography},  		 			A F´uster-Sabater 		,  		 			P Caballero-Gil 		.  		Sept 2006. Springer. 93 p. .  	 
\bibitem[Tomassini and Perrenoud ()]{b24}\label{b24} 	 		‘Stream Cipher With One And Two Dimensional Cellular Automata’.  		 			M Tomassini 		,  		 			M Perrenoud 		.  	 	 		\textit{LNCS}  		M. Schoenauer et al. (ed.)  		2000. 1917. Springer. p. .  	 	 (Eds.) Parallel Problem Solving from Nature -PPSN VI) 
\bibitem[Fúster-Sabater and Caballero-Gil ()]{b7}\label{b7} 	 		‘Synthesis of Cryptographic Interleaved Sequences by Means of Linear Cellular Automata’.  		 			A Fúster-Sabater 		,  		 			P Caballero-Gil 		.  	 	 		\textit{Applied Mathematics Letters}  		2009. 22  (10)  p. .  	 
\bibitem[Serra et al. ()]{b20}\label{b20} 	 		‘The Analysis of One dimensional Linear Cellular Automata and Their Aliasing Properties’.  		 			M Serra 		,  		 			T Slater 		,  		 			J Muzio 		,  		 			D M Miller 		.  	 	 		\textit{IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems}  		1990. 9  (7)  p. .  	 
\bibitem[Neumann (ed.) ()]{b8}\label{b8} 	 		\textit{The Theory of Self Reproducing Automata},  		 			J V Neumann 		.  		A. W. Burks (ed.)  		1966. Urbana and London: Univ. of Illinois Press.  	 
\bibitem[Nandi et al. ()]{b16}\label{b16} 	 		‘Theory and Applications of Cellular Automata in Cryptography’.  		 			S Nandi 		,  		 			B K Kar 		,  		 			P P Chaudhuri 		.  	 	 		\textit{IEEE Transactions on Computers}  		1994. 43 p. .  	 
\bibitem[Blackburn et al. ()]{b15}\label{b15} 	 		‘Theory and Applications of Cellular Automata in Cryptography’.  		 			S Blackburn 		,  		 			S Merphy 		,  		 			K Paterson 		.  	 	 		\textit{IEEE Transactions on Computers}  		1997. 46 p. .  	 
\bibitem[Kari ()]{b6}\label{b6} 	 		‘Theory of cellular automata: A survey’.  		 			J Kari 		.  	 	 		\textit{Theoretical Computer Science}  		2005. 334  (3)  p. .  	 
\bibitem[Diaz Len et al. ()]{b22}\label{b22} 	 		\textit{Wolfram Cellular Automata And Their Cryptographic Use As Pseudorandom Bits Generators, Memoria Samuel Solorzano Barruso Foundation (Spain) and Ministerio de Ciencia y Tecnologia (Spain) under grant},  		 			R Diaz Len 		,  		 			A Hernandez Encinas 		,  		 			L Hernandez Encinas 		,  		 			S Hoya White 		,  		 			A Martin Del Rey 		,  		 			G Rodriguez 		,  		 			I Visus Ruiz 		.  		2001. p. .  	 
\end{bibitemlist}
 			 		 	 
\end{document}
