6 research outputs found
FPGA Based Random Number Generation for Cryptographic Applications
Random numbers are useful for a variety of purposes, such as generating data encryption keys,simulating and modeling complex phenomena and for selecting random samples from larger data sets. They have also been used aesthetically, for example in literature and music, and are of course ever popular for games and gambling. When discussing single numbers, a random number is one that is drawn from a set of possible values, each of which is equally probable, i.e.,
a uniform distribution. When discussing a sequence of random numbers, each number drawn must be statistically independent of the others. Random numbers are generated by various methods. The two types of generators used for
random number generation are pseudo random number generator (PRNG) and true random number generator (TRNG). The numbers generated are random because no polynomial – time
algorithm can describe the relation amongst the different numbers of the sequence. Numbers generated by true random number generator (TRNG) or cryptographically secure
pseudo random number generator (CSPRNG). The sources of randomness in TRNG are physical phenomena like lightning, radioactive decay, thermal noise etc. The source of randomness in CSPRNG is the algorithm on which it is based.
In this project, the random numbers generated for cryptographic applications were generated by using the Blum Blum Shub generator, the CSPRBG. It was implemented on a FPGA platform using VHDL programming language and the simulation was done and tested on the Xilinx ISE 10.1i
Finite Fields: Theory and Applications
Finite fields are the focal point of many interesting geometric, algorithmic and combinatorial problems. The workshop was devoted to progress on these questions, with an eye also on the important applications of finite field techniques in cryptography, error correcting codes, and random number generation