# VortexSpin: Random Number Generation Library

VortexSpin is a free code library for generating cryptographically-secure, 64-bit, truly-random integers with a hybrid TRNG system that guarantees non-deterministic randomness captured from quantum-level entropy.

## Reference

### Request

VortexSpin accepts the following optional arguments.

output_numbers_count is the amount of random numbers to generate. The minimum value is 1. The default value is 1.

output_number_digits_minimum_count is the minimum amount of digits in each random number with left-padded zeros. The default value is 1.

output_number_letter_case is the letter case of each generated random number if the value of output_number_radix is greater than 10. The default value is lower.

output_number_prefix is the prefix of each generated random number. The default value is empty.

output_number_radix is the number base of each generated random number. The maximum value is 36 and the minimum value is 2. The default value is 10.

output_number_range_maximum is the largest generated random number allowed. If the value of output_number_signedness is signed, the maximum value is 9223372036854775807 and the minimum value is -9223372036854775807. If the value of output_number_signedness is unsigned, the maximum value is 18446744073709551615 and the minimum value is 1. The default value is either 9223372036854775807 or 18446744073709551615 based on the output_number_signedness.

output_number_range_minimum is the smallest generated random number allowed. If the value of output_number_signedness is signed, the maximum value is 9223372036854775806 and the minimum value is -9223372036854775808. If the value of output_number_signedness is unsigned, the maximum value is 18446744073709551614 and the minimum value is 0. The default value is either -9223372036854775808 or 0 based on the output_number_signedness.

The value of output_number_range_maximum must be greater than the value of output_number_range_minimum.

output_number_signedness is the signedness of each generated random number. The value is either signed or unsigned. The default value is signed.

output_number_suffix is the suffix of each generated random number. The default value is empty.

### Response

Each response contains the following field.

output_numbers is the array of output_numbers_count number results, each as a formatted string.

The return value data type is an integer.

It returns a status code that corresponds with a status described in the following list.

```
0 Successful.
1 The output_numbers_count value must be a number.
2 The output_number_digits_minimum_count value must be a number.
3 The output_number_letter_case value must be either lower or upper.
4 The output_number_prefix value must be a string.
5 The output_number_radix value must be a number.
6 The output_number_radix value must be greater than or equal to 2.
7 The output_number_radix value must be less than or equal to 32.
8 The output_number_signedness value must be either signed or unsigned.
9 The output_number_range_maximum value must be greater than or equal to -9223372036854775807 when the output_number_signedness value is signed.
10 The output_number_range_maximum value must be less than or equal to 9223372036854775807 when the output_number_signedness value is signed.
11 The output_number_range_maximum value must be greater than or equal to 1 when the output_number_signedness value is unsigned.
12 The output_number_range_maximum value must be less than or equal to 18446744073709551615 when the output_number_signedness value is unsigned.
13 The output_number_range_maximum value must be greater than or equal to -9223372036854775808 when the output_number_signedness value is signed.
14 The output_number_range_minimum value must be less than or equal to 9223372036854775806 when the output_number_signedness value is signed.
15 The output_number_range_minimum value must be greater than or equal to 0 when the output_number_signedness value is unsigned.
16 The output_number_range_minimum value must be less than or equal to 18446744073709551614 when the output_number_signedness value is unsigned.
17 The output_number_range_maximum value must be greater than the output_number_range_minimum value.
18 The output_number_suffix value must be a string.
19 Server error.
```

## Explanation

In quantum computing, the probability of capturing a result of either 0 or 1 after collapsing a superpositioned qubit is calculated with deterministic mathematical formulas.

These formulas depend on tangible quantum wave functions, which leverage entropic oscillations from external physical interactions.

The result is considered to be a reliable and scientifically-proven source of true randomness, which led to the creation of quantum random number generators (QRNGs).

VortexSpin is capable of generating the same level of single-bit quantum entropy by combining classical and quantum computing methodologies.

It uses a computationally-expensive sequence of simulated qubit collapsing algorithms that rely on temporal mechanics to generate 64-bit, random binary numbers.

Time is clearly-defined as a simple measurement within the constraints of classical computing and physics.

Time changes at a constant, linear interval with a huge amount of precision relative to the third dimension.

Itâ€™s impossible for the VortexSpin system to capture non-random, predetermined bits due to the verified temporal precision of the system clock on each VortexSpin device far exceeding the fastest processing time of repeating computations between each random bit capture.

VortexSpin is an efficient and error-resistant alternative to extracting classical bits of quantum randomness from collapsed qubits.

## Requirements

- PHP 7.4+ with the BC Math extension.
- High resolution system clock with nanosecond precision.

## Updates

- July 9th, 2024: The PHP version of VortexSpin is released.

## Consulting

Send a message containing an introduction to your specification for development and let Eightomic evolve your proprietary product with a custom-tailored, next-level solution.

## Sponsor

Eightomic is supported by GhostProxies, a free open proxy IP address history lookup service with a paid API to help block cyber attacks and reduce fraud with less false positives.