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:
Using Spring @ResponseStatus to Set HTTP Status Code
Java Program to Perform the Shaker Sort
Java Program to Find Whether a Path Exists Between 2 Given Nodes
Java Program to Implement Stein GCD Algorithm
Pagination and Sorting using Spring Data JPA
Vòng lặp for, while, do-while trong Java
Custom Thread Pools In Java 8 Parallel Streams
Xây dựng ứng dụng Client-Server với Socket trong Java
Java Program to Implement Find all Forward Edges in a Graph
Check if a String is a Palindrome in Java
Spring WebClient Requests with Parameters
Dynamic Proxies in Java
Using Custom Banners in Spring Boot
Kiểu dữ liệu Ngày Giờ (Date Time) trong java
Updating your Password
Java InputStream to String
Show Hibernate/JPA SQL Statements from Spring Boot
Cơ chế Upcasting và Downcasting trong java
HttpClient 4 Cookbook
Hướng dẫn Java Design Pattern – Decorator
Default Password Encoder in Spring Security 5
A Guide to LinkedHashMap in Java
Recommended Package Structure of a Spring Boot Project
Java Program to Implement Hash Tables
Chương trình Java đầu tiên
Java Program to Implement Direct Addressing Tables
Java Optional as Return Type
Hướng dẫn Java Design Pattern – Memento
Hướng dẫn Java Design Pattern – Template Method
Iterating over Enum Values in Java
“Stream has already been operated upon or closed” Exception in Java
Spring Boot - Hystrix