
BOKHARI 256 has designed using the feature of some well-known stream ciphers like FRUIT, LIZARD, SOBER and Grain 128 to improve the performance. In this paper, we have proposed software-based synchronous lightweight stream ciphers, BOKHARI 256, mainly aimed for resource-constrained devices such as Radio Frequency Identification Devices (RFID) Tags, Wireless Sensor Node (WSN) and devices with limited processing capabilities, memory, power resources and the limited computational unit, insufficient wireless bandwidth and low ability to communicate and other general-purpose devices such as credit card, smart card, Personal Digital Assistant (PDA), etc. In the recent past, a few lightweight stream ciphers have been implemented for real applications. It is pertinent to note that the implementation of such reliable cryptographic primitives is extremely complicated in practice that requires small processing capacity, low volume, low area, and low power consumption. Developing a software-based synchronous stream cipher is reduced to building a pseudo-random sequence generator with specified cryptographic properties. Symmetric key cryptography is the most commonly used primitive and stream cipher, in particular, meets the requirement of such algorithms.

Therefore, a need has been felt for the design of a dedicated hardware for random number generator that generates one random number per cycle so that text-to speech conversion is done in real time.

For parametric speech synthesis application, a random number generator is required to produce noise samples. Most C libraries have a pair of library routines for initializing, and then generating random numbers. Random number generator is required extensively by many applications like cryptography, simulation, numerical analysis, text-to-speech etc. This paper discusses in detail the hardware implementation of several RNGs and their characteristics. FPGAs make it possible to implement complex systems, such as numerical calculations, genetic programs, simulation algorithms etc., at hardware level. Although a majority of random number generators have been implemented in software level, increasing demand exists for hardware implementation due to the advent of faster and high density Field Programmable Gate Arrays (FPGA). True random number generators are slow and expensive for many applications while pseudo random number generators (RNG) suffice for most applications.

Random numbers are used in a wide variety of applications.
