This is a java program generate pseudo-random numbers using Naor-Reingold Pseudo-Random function. Let p and l be prime numbers with l |p-1. Select an element g in Fp of multiplicative order l. Then for each n-dimensional vector a = (a1, …, an). Fa(x) = g^(a1^x1 * a2^x2 …).
Here is the source code of the Java Program to Implement Naor-Reingold Pseudo Random Function. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a java program to generate a random numbers using Naor-Reingold Psedurandom Function
import java.util.Random;
public class Naor_Reingold
{
public static void main(String args[])
{
int p=7, l=3, g=2, n=4, x;
int []a = {1,2,2,1};
int []bin = new int[4];
Random random = new Random();
System.out.println("The Random numbers are: ");
for(int i=0; i<10; i++)
{
x = random.nextInt(17);
for(int j=3; j>=0; j--)
{
bin[j] = x%2;
x/=2;
}
int mul = 1;
for(int k=0; k<4; k++)
mul *= Math.pow(a[k], bin[k]);
System.out.println(Math.pow(g, mul));
}
}
}
Output:
$ javac Naor_Reingold.java $ java Naor_Reingold The Random numbers are: 2.0 4.0 2.0 2.0 2.0 16.0 4.0 16.0 16.0 4.0
Related posts:
Introduction to Spliterator in Java
Base64 encoding và decoding trong Java 8
Java Program to Implement the MD5 Algorithm
Spring Boot - Exception Handling
Java Program to Perform Deletion in a BST
Java Program to Find Hamiltonian Cycle in an UnWeighted Graph
HttpClient 4 – Send Custom Cookie
Constructor Injection in Spring with Lombok
“Stream has already been operated upon or closed” Exception in Java
Java Program to Implement Strassen Algorithm
Tạo ứng dụng Java RESTful Client với thư viện Retrofit
Java Program to Implement Coppersmith Freivald’s Algorithm
REST Web service: Upload và Download file với Jersey 2.x
Java Program to Implement LinkedHashMap API
Phương thức tham chiếu trong Java 8 – Method References
Java Program to Implement Shoelace Algorithm
HttpClient 4 Cookbook
Spring Boot - Apache Kafka
What is Thread-Safety and How to Achieve it?
Java Program to Test Using DFS Whether a Directed Graph is Strongly Connected or Not
Chương trình Java đầu tiên
Java Program to Find Maximum Element in an Array using Binary Search
Java Program to Find Inverse of a Matrix
Spring Security Logout
Java Program to Implement Bloom Filter
So sánh HashSet, LinkedHashSet và TreeSet trong Java
An Intro to Spring Cloud Contract
Feign – Tạo ứng dụng Java RESTful Client
Spring WebClient Filters
Guide to java.util.concurrent.Future
A Guide to @RepeatedTest in Junit 5
Java Program to Implement Self Balancing Binary Search Tree