US20020099746A1  Tsequence apparatus and method for general deterministic polynomialtime primality testing and composite factoring  Google Patents
Tsequence apparatus and method for general deterministic polynomialtime primality testing and composite factoring Download PDFInfo
 Publication number
 US20020099746A1 US20020099746A1 US09559142 US55914200A US2002099746A1 US 20020099746 A1 US20020099746 A1 US 20020099746A1 US 09559142 US09559142 US 09559142 US 55914200 A US55914200 A US 55914200A US 2002099746 A1 US2002099746 A1 US 2002099746A1
 Authority
 US
 Grant status
 Application
 Patent type
 Prior art keywords
 prime
 mod
 number
 type
 primality
 Prior art date
 Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
 Abandoned
Links
Images
Classifications

 G—PHYSICS
 G06—COMPUTING; CALCULATING; COUNTING
 G06F—ELECTRICAL DIGITAL DATA PROCESSING
 G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
 G06F7/60—Methods or arrangements for performing computations using a digital nondenominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and nondenominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
 G06F7/72—Methods or arrangements for performing computations using a digital nondenominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and nondenominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic

 G—PHYSICS
 G06—COMPUTING; CALCULATING; COUNTING
 G06F—ELECTRICAL DIGITAL DATA PROCESSING
 G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
 G06F7/58—Random or pseudorandom number generators
 G06F7/582—Pseudorandom number generators
 G06F7/586—Pseudorandom number generators using an integer algorithm, e.g. using linear congruential method

 H—ELECTRICITY
 H04—ELECTRIC COMMUNICATION TECHNIQUE
 H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
 H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
 H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communication the encryption apparatus using shift registers or memories for blockwise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
 H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
 H04L9/0656—Pseudorandom key sequence combined elementforelement with data sequence, e.g. onetimepad [OTP] or Vernam's cipher
 H04L9/0662—Pseudorandom key sequence combined elementforelement with data sequence, e.g. onetimepad [OTP] or Vernam's cipher with particular pseudorandom sequence generator

 H—ELECTRICITY
 H04—ELECTRIC COMMUNICATION TECHNIQUE
 H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
 H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
 H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
 H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or publickey parameters
 H04L9/3033—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or publickey parameters details relating to pseudoprime or prime number generation, e.g. primality test

 G—PHYSICS
 G06—COMPUTING; CALCULATING; COUNTING
 G06F—ELECTRICAL DIGITAL DATA PROCESSING
 G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
 G06F2207/72—Indexing scheme relating to groups G06F7/72  G06F7/729
 G06F2207/7204—Prime number generation or prime number testing
Abstract
Using a new mathematical technique called the Tsequence, the inventor has discovered a powerful primality testing method that meets all four conditions above. A similar approach can be applied to perform fast factoring for numerous special cases, a method that can, in all liklihood, be extended to the general case, making possible a general and fast factoring algorithm. (Researchers heretofore have been able to factor only in subexponential time, never in polynomial time.) The same Tsequence can be used to construct a prime number formula (long sought after but never achieved) and a good random number generator. The former can be used to generate infinitely many prime numbers of any size efficiently, and the latter can generate nonperiodic and absolutely chaotic random numbers. These aft numbers are widely used in all areas of industrial and scientific simulations. In general, the Tsequence can be used to handle efficiently the fundamental problems concerning prime numbers (which include primality testing, factoring, prime number formula, infinitepattern prime problem, etc.).
Description
 [0001]1. Field of the Invention
 [0002]The present invention relates to prime and composite number computing and applications of the same, e.g., in the area of data security.
 [0003]2. State of the Art
 [0004]Prime numbers (2, 3, 5, 7, 11, 13, . . ., those positive integers divisible only by themselves or 1) are the most fundamental building blocks of math, and with the invention of the public key ciphers (RSA, El Gamal and the like), they now form the backbone of computer security. Basically there are two problems related to the use of prime numbers in these fields, namely primality testing and factoring. The primality testing problem is about testing and determining whether a given arbitrary positive integer is a prime number or a composite (nonprime) number. For a composite number, the factoring problem requires determining the composite number's prime factors. Practicality demands that these two problems have to be solved in polynomial time (computations being proportional to the number of digits and therefore fast), not exponential time (computations being proportional to the size of the numbers themselves and therefore too slow).
 [0005]Traditionally, to decide whether a small integer is prime or composite, one can try to factor it with the smaller primes, but this trial division is too tedious for numbers greater than, say, 40 digits. Previously, experts have only been able to test for general primality up to about 2000 digits with certainty in a week of standard PC computational time. Several other faster methods have been devised to test larger integers, but they too fall short of expectations.
 [0006]Presently over the Internet, recordsize prime numbers over 10,000 or 100,000 digits are frequently found and published by researchers, but they are confined to special forms only (e.g., the most famous being the LucasLehmer test for Mersenne numbers of the form 2^{M}1). If given an arbitrary number, however, these researchers cannot test it in polynomial time. The stringent demands of several important ciphers require testing and generating large prime number of arbitrary forms and sizes.
 [0007]There are four conditions in solving these problems:
 [0008]1. Polynomialtime algorithm: the algorithm's speed needs to be proportional to a small power of the number of digits of that integer, e.g. d^{3}, instead of subexponential or exponential time, e.g., 2 ^{d}.
 [0009]2. 100% generality, i.e., the primality or factors of any arbitrary number can be determined.
 [0010]3. Provability, i.e., it can be shown to work in all cases mathematically and no counterexamples can be found.
 [0011]4. Deterministic in nature, i.e., the algorithm can determine the primality of a number with certainty and not with statistical probability.
 [0012]Present techniques are unable to satisfy all four of these conditions simultaneously.
 [0013]Using a new mathematical technique called the Tsequence, the inventor has discovered a powerful primality testing method that meets all four conditions above. A similar approach can be applied to perform fast factoring for numerous special cases, a method that can, in all liklihood, be extended to the general case, making possible a general and fast factoring algorithm. (Researchers heretofore have been able to factor only in subexponential time, never in polynomial time.) The same Tsequence can be used to construct a prime number formula (long sought after but never achieved) and a good random number generator. The former can be used to generate infinitely many prime numbers of any size efficiently, and the latter can generate nonperiodic and absolutely chaotic random numbers. These numbers are widely used in all areas of industrial and scientific simulations. In general, the Tsequence can be used to handle efficiently the fundamental problems concerning prime numbers (which include primality testing, factoring, prime number formula, infinitepattern prime problem, etc.).
 [0014]Whereas previously experts have only been able to test for general primality up to about 2000 digits with certainty in a week of standard PC computational time, now with this new approach it takes only eight seconds, by comparison. On a fast computer, numbers up to a million or more digits can also be tested for primality. All other techniques become impracticable beyond 2000 or so digits for general primality testing. This new approach enables mathematicians and computer scientists to test as well as generate prime numbers of any size or form to be used in mathematical research and computer cryptography.
 [0015]The present invention may be further understood from the following description in conjunction with the appended drawing. In the drawing:
 [0016][0016]FIG. 1 is a block diagram of a prime number computing system; and
 [0017][0017]FIG. 2 is a flowchart illustrating a primality testing algorithm.
 [0018]TSequences: Definition.
 [0019]
 [0020]where the subscript denotes the nth term while the superscript denotes the order l. Therefore the zeroth term is always 2 and the first term is always l; i.e., l=3 is the first Tsequence, the successive terms of which are given by
${T}_{0}^{3}=2,{T}_{1}^{3}=3,{T}_{2}^{3}=7,{T}_{3}^{3}=18,\dots \ue89e\text{\hspace{1em}},{T}_{n+1}^{3}=3\xb7{T}_{n}^{3}{T}_{n1}^{3}.$ ${T}_{n}^{4}$  [0021]
 [0022]
 [0023]where n_{1≧n} _{2 }and n =n_{1}+n_{2}. From this can be derived the following convenient identities:
$\begin{array}{cc}{T}_{2\ue89en+1}^{l}={T}_{n}^{l}\xb7{T}_{n+1}^{l}{T}_{1}^{l}={T}_{n}^{l}\xb7{T}_{n+1}^{l}l\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{odd}\ue89e\text{\hspace{1em}}\ue89e\mathrm{nth}\ue89e\text{\hspace{1em}}\ue89e\mathrm{terms}\right)& \left(1\right)\\ {T}_{2\ue89en}^{l}={T}_{n}^{l}\xb7{T}_{n}^{l}{T}_{0}^{l}={\left({T}_{n}^{l}\right)}^{2}2\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{even}\ue89e\text{\hspace{1em}}\ue89e\mathrm{nth}\ue89e\text{\hspace{1em}}\ue89e\mathrm{terms}\right)& \left(2\right)\end{array}$  [0024]The T terms can grow exponentially large, but with the above identities as well as modulo arithmetic and a type of binary decomposition method described below, testing a given integer for primality is straightforward.
 [0025]A numerical example serves to illustrate this approach. E.g., for n=31 and l=3, binary decomposition is first performed (other forms of decomposition are feasible but are less practical):
$\begin{array}{c}{T}_{31}^{3}={T}_{16}^{3}\xb7{T}_{15}^{3}3\\ {T}_{16}^{3}={\left({T}_{8}^{3}\right)}^{2}2\\ {T}_{15}^{3}={T}_{8}^{3}\xb7{T}_{7}^{3}3\\ {T}_{8}^{3}={\left({T}_{4}^{3}\right)}^{2}2\\ {T}_{7}^{3}={T}_{4}^{3}\xb7{T}_{3}^{3}3\\ {T}_{4}^{3}={\left({T}_{2}^{3}\right)}^{2}2\\ {T}_{3}^{3}={T}_{2}^{3}\xb7{T}_{1}^{3}3\\ {T}_{2}^{3}={\left({T}_{1}^{3}\right)}^{2}2\end{array}$  [0026]
 [0027]
 [0028]
 [0029]
 [0030]
 [0031]
 [0032]
 [0033]or 2, is always subtracted. The fundamental identify allows all these decompositions to be performed. Modulo arithmetic with respect to n and recursive substitutions are then carried out using the fact that, always,
${T}_{0}^{l}=2\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{T}_{1}^{l}=l;$  [0034]
 [0035]in this example.
 [0036]
 [0037]and so on, with the residues always modulo 31:
$\uparrow \begin{array}{c}{T}_{31}^{3}={T}_{16}^{3}\xb7{T}_{15}^{3}3=3\xb723=3\\ {T}_{16}^{3}={\left({T}_{8}^{3}\right)}^{2}2={6}^{2}2=3\\ {T}_{15}^{3}={T}_{8}^{3}\xb7{T}_{7}^{3}3=6\xb763=2\\ {T}_{8}^{3}={\left({T}_{4}^{3}\right)}^{2}2={16}^{2}2=6\\ {T}_{7}^{3}={T}_{4}^{3}\xb7{T}_{3}^{3}3=16\xb7183=6\\ {T}_{4}^{3}={\left({T}_{2}^{3}\right)}^{2}2={7}^{2}2=16\\ {T}_{3}^{3}={T}_{2}^{3}\xb7{T}_{1}^{3}3=7\xb733=18\\ {T}_{2}^{3}={\left({T}_{1}^{3}\right)}^{2}2={3}^{2}2=7\end{array}\hspace{1em}$  [0038]Therefore it can be determined that in this example the 31st term of T^{3 }(mod 31) gives a residue of 3. Of course the residue of any term of T^{l }(mod n) can be readily computed whenever needed.
 [0039]There are numerous intriguing properties of Tsequences, one of which is expressed as
${T}_{n}^{l}={\left(\frac{l+\sqrt{{l}^{2}4}}{2}\right)}^{n}+{\left(\frac{l+\sqrt{{l}^{2}4}}{2}\right)}^{n},\mathrm{or}\ue89e\text{\hspace{1em}}\ue89e\mathrm{equivalently}$ ${T}_{n}^{l}=\sum _{k=0}^{\left[\frac{n}{2}\right]}\ue89e\text{\hspace{1em}}\ue89e{\left(1\right)}^{k}\ue89e\frac{n\ue8a0\left(nk1\right)!}{k!\ue89e\left(n2\ue89ek\right)!}\ue89e{\left(l\right)}^{n2\ue89ek}.$  [0040]
 [0041]
 [0042]
 [0043]
 [0044](mod 30).
 [0045]By using these Tsequences in connection with the primes p, another important and useful property in primality testing and factoring can be derived, the socalled periods k(p) consisting of two types, p+1 and p−1. The former is called the +l type and the latter the −l type. What is meant by this terminology can be illustrated by the following numerical examples:
 [0046]Take l=3 and p=7. Compute every term of T^{3 }successively modulo 7; that is, every T^{3 }term is divided by 7 to give the respective residues, until the residues repeat themselves. Thus using R as the residue and l always equal to 3, one obtains for the modulo of prime p =7: R_{0}=2, R_{1}=3, R_{2}=0, R_{3}=4, R_{4}=5, R_{5 }=4, R_{6}=0, R_{7}=3, R_{8}=2, . . . The next residue with 2 appears at the eighth term R_{8 }=2, thus the period k(7)=8. Note that this period divides exactly into p +1, that is, k(p)p+1→k(7) =8. Thus the prime 7 is said to be of the +l type in T^{3 }sequence.
 [0047]Again take l=4 and p=11. The residues of each T^{4 }term, modulo 11, are: R_{0}=2, R_{1}=4, R_{2}=3, R_{3}=8, R_{4}=7, R_{5}=9, R_{6}=7, R_{7}=8, R_{8}=3, R_{9}=4, R_{10}=2, . . . The next residue of 2 appears at the 10th term R_{10}=2, hence the period k(11)=10. This period of 10 divides exactly into p−1, that is, k(p)(p−1)→1011−1. Thus the prime 11 is said to be of −l type in T^{4 }sequence.
 [0048]There are no other possible patterns for prime modulo. (The l type for composites will be shown in the following section describing the primality testing algorithm.) In essence, this unique characteristic of the Tsequences enables the primality of any positive integer to be determined, since only those numbers that are genuine primes can satisfy for appropriate l values both
 T _{p−l} ^{30 l}≡l^{2}−2, T ^{+l}≡l and T _{p−1} ^{−l}≡2, T _{p} ^{−l}≡l (all mod p) .
 [0049]Furthermore, this characteristic can also be used to do general polynomial time factoring of composites.
 [0050]Computing Using TSequences
 [0051]Referring now to FIG. 1, a block diagram is shown of a computing system, e.g., a prime number computing system, in which Tsequences are used. The computing system includes one or more processors, randomaccess memory, readonly (nonvolative) memory, and an I/O subsystem. The computing system is intended to be representative of all classes of computing systems, large and small, local or distributed. Within memory is stored a routine for generating Tsequence terms. The results of this routine are used by one or more other routines, e.g., a routine for primality testing, a routine for factoring, a prime number generator, a random number generator, etc. These routines find wide application, especially in data security, e.g., securely encrypting data or, by the opposite token, breaking a given encryption. The operation of various ones of these routines will now be described.
 [0052]Primality Testing
 [0053]Given any positive integer n, the T^{3 }sequence may be used to perform primality testing (any other T^{l }sequence will do but T^{3 }is convenient for use here). Using binary decomposition and the abovementioned methods, the residues are computed
${R}_{n1}^{3}={T}_{n1}^{3}\ue8a0\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89en\right)\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{R}_{n}^{3}={T}_{n}^{3}\ue8a0\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89en\right).$  [0054]
 [0055]Any n which does not give such residues can immediately be declared composite.
 [0056]As will be explained below, it can be seen readily that any n with the last digit 1 or 9 will be of the −l type in T^{3}, whereas any n with the last digit 3 or 7 will be of the +l type in T^{3}.
 [0057]A fast and general method to determine the l type of n in T^{l }(to be used in proving and determining the genuine primality of n) is as follows. Given the values of any n and l, divide n by the determinant 2l^{2}−8 and obtain the small residue r, that is n≡r (mod 2l^{2}31 8). It can be shown that the l type of n is the same as that of r. Since r is so small, direct computation of its residues in T^{l }will readily give the l type, knowing that by definition the l type is + when
${R}_{r1}^{l}=\text{\hspace{1em}}\ue89e{l}^{2}1\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{R}_{r}^{l}=l$  [0058]
 [0059](both mod r).
 [0060]Note a few facts about the relationships between r and l:
 [0061]1. The l type is always − whenever r=l.
 [0062]2. The small residue r must be coprime to the determinant, that is (r, 2l^{2}−8)=1. This means that whenever r is not coprime to 2l^{2}−8, that particular l value is not used.
 [0063]3. Besides r being coprime to the determinant, r needs to be greater than the value of l. Otherwise that particular l value is not used.
 [0064]4. The period k(r) must be greater than 2. When the period is 1 or 2, that l value is not to be used.
 [0065]
 [0066]
 [0067]
 [0068]that particular l value will be used.
 [0069]6. The +l type and the −l type occur in equal proportion among all n and T^{l}. It can be shown that one l with +l type and another l with −l type can readily be found for any n.
 [0070]For example, when n=31, l=3 observe that r=1 since 31 =1 (mod 2·3^{2}−8=10). It is then known from the facts above that 31 is of −l type in T^{3}. On the other hand, when n=37, l=3 observe that r=7 since 37=7 (mod 2·3^{2}−8=10). The quantities
${R}_{71}^{3}=7\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{R}_{7}^{3}=3$  [0071](both mod 7) are then computed, from which it appears that 7 is of +l type in T^{3}. Hence 37 is also of +l type in T^{3}.
 [0072]
 [0073](both mod 7). This shows that 7 is of +l type in T^{4 }and thus 31 must also be of +l type in T^{4}. On the other hand, when n=37, l=4 observe that r=13 since 37=13 (mod). Similar direct computations give
${R}_{131}^{4}=2\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{R}_{13}^{4}=4$  [0074](both mod 13). This shows that 13 is −l of type in T^{4 }and thus 37 must also be of −l type in T^{4}. It is seen then that 31 and 37 are of opposite l type in T^{3 }and T^{4}.
 [0075]Note that these small r residue computations can be skipped and the n residues computed directly for primality testing and ltype decisions whenever r is indeterminate. The whole algorithm will still be in polynomial time owing to binary decomposition, which ensures that it is in polynomial time. The complexity is of the order of (log_{2}n)^{3}.
 [0076]Referring now to FIG. 2, a fast primality testing routine consists of the following three steps:
 [0077]STEP A: For any given positive integer n, first use l=3. From the above, determine the l type of n in T^{3}, −l type for last digit 1 or 9, +l type for last digit 3 or 7. Then compute the two residues
${R}_{n1}^{3}={T}_{n1}^{3}\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89en\right)\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{R}_{n}^{3}={T}_{n}^{3}\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89en\right).$  [0078]If either R_{n−1} ^{3}≠2 or 7 (=l^{2}−2) and/or R_{n} ^{3}≠3, then n can be declared to be composite and the routine stops here.
 [0079]Note that all composites which are not genuine primes or pseudoprimes or proper cofactors of T^{3 }will be detected and sieved away in this STEP A.
 [0080]
 [0081](mod n)then proceed to STEP B below.
 [0082]STEP B: This step performs a “greatest common factor sieving” to sieve away certain pseudoprimes. For example, take a composite n=1729=7 ×13 ×19 and l=4. The number 1729 is a pseudoprime of T^{4 }since
${T}_{1729}^{4}={T}_{865}^{4}\xb7{T}_{864}^{4}{T}_{1}^{4}=914\xb78214=4\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89e1729\right)$ ${T}_{865}^{4}={T}_{433}^{4}\xb7{T}_{432}^{4}{T}_{1}^{4}=641\xb714584=914\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89e1729\right)$  [0083]
 [0084]
 [0085]
 [0086]giving 912. Using the Euclidean algorithm for the greatest common factor (gcd), compute gcd (912, 1729)=19. This shows that 1729 is composite since 19 is one of its factors. (Computing gcd by the Euclidean algorithm is useful in factoring.) In other words, for n to be a candidate for prime, the odd term residue
${R}_{d}^{3}$  [0087]
 [0088]
 [0089]STEP B still misses some pseudoprimes or cofactor composites but when followed by STEP C, all possible exceptions in the form of proper cofactors or pseudoprimes will be sieved away, leaving only the genuine primes.
 [0090]STEP C: Find an l which is of opposite l type to that in STEP A in T^{3}. If in STEP A the l type of n in T^{3 }is−, then in this STEP C, find an l for which the l type of n is + in T^{l }and vice versa. This can be determined readily through the abovementioned computations of small residue r or direct computations of
${T}_{n1}^{l}\equiv 2\ue89e\text{\hspace{1em}}\ue89e\mathrm{or}\ue89e\text{\hspace{1em}}\ue89e{l}^{2}2\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89en\right)\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{T}_{n}^{l}\equiv l\ue8a0\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89en\right)$  [0091]If in STEP A T_{n−1} ^{3}≡2 (mod n) and T_{n} ^{3}≡3 (mod n), that is, −l type, then if for another l in which the l type of n in T^{l }is opposite to that in T^{3 }it holds that T_{n−1} ^{l}≡l^{2}−2 (mod n) and T_{n} ^{l}=l (mod n), that is, +l type, it follows that n must be a genuine prime. If the residues are not as just stated, that n is declared to be composite. It is assured that, when n satisfies these conditions, n must be a genuine prime, because for any composite number, n=P_{1}P_{2 }say, it is impossible to satisfy all + and − divisibility conditions:
 P _{1}−1l n−1, P _{2}−1n−1, P _{1}+1n+1, P _{2}+1n+1.
 [0092]Only a genuine prime p can always satisfy these conditions when n=p. This completes STEP C.
 [0093]A variation of the foregoing algorithm uses the Jacobi to avoid blind trials seeking for opposite l types. In particular, taking JACOBI(l^{2 }−4, n) gives the l type. One strategy is to calculate the l types beginning with l=3 until the lowest values of l having opposite types have been found.
 [0094]Primality Testing—Summary. Following the above method of computation ensures that this primality testing algorithm is 100% general, deterministic, provable and polynomialtime. It runs as follows:
 [0095]The integer n is a genuine prime whenever n satisfies the conditions in these three steps:
 [0096]STEP A:
${T}_{n1}^{3}\equiv 2\ue89e\text{\hspace{1em}}\ue89e\mathrm{or}\ue89e\text{\hspace{1em}}\ue89e7\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89en\right)\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{T}_{n}^{3}\equiv 3\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89en\right)$  [0097]
 [0098]STEP C: T_{n−1} ^{l}≡2 or l^{2}−2 (mod n) and T_{n} ^{l}≡l (mod n) where the l type of n in T^{l }is opposite to that in T^{3 }as in STEP A.
 [0099]Failing to satisfy any one or more of these conditions will render n to be composite.
 [0100]As may be seen from Table 1, the time and memory requirements required to test the primality of integers is very small compared to existing methods, and remains comparatively quite small even when testing primality of integers of unprecedented size.
TABLE 1 450 Mhz PC Time Needed Memory Bits Digits Seconds Minutes Hours Days MB 1,000 300 0.11 4.01 1,260 378 0.22 4.01 1,587 477 0.44 4.01 2,000 601 0.87 4.02 2,520 757 1.74 4.02 3,175 953 3.49 4.03 4,000 1,201 6.98 4.03 5,040 1,513 13.95 4.04 6,350 1,907 27.90 4.05 8,000 2,402 55.81 4.06 10,079 3,027 1.86 4.08 12,699 3,814 3.72 4.10 16,000 4,805 7.44 4.13 20,159 6,054 14.88 4.16 25,398 7,627 29.76 4.20 32,000 9,610 59.53 4.26 40,317 12,107 1.98 4.32 50,797 15,254 3.97 4.41 64,000 19,219 7.94 4.51 80,653 24,215 15.87 4.65 101,594 30,509 1.32 4.81 128,000 38,438 2.65 5.02  [0101]PolynomialTime Factoring Routine
 [0102]A promising and viable factoring method is also based on the Tsequences. This method is unlike any previous method.
 [0103]The Tsequences allow all forms of composites to be factored, without exception, in polynomial time, simply because binary decomposition modulo C is fundamentally polynomial time. So far, mathematicians have only found exponential or subexponential time factoring algorithms for composites less than 200 digits, in general, and no polynomialtime factoring exists for even special forms of composites like the Mersenne numbers 2^{M}−1, etc. A simple extension of the T sequences, however, immediately provides just such a polynomialtime factoring algorithm PTFA) for numerous special form composites with infinite membership.
 [0104]The gist of this PTFA lies in the natural mathematical interrelationships between the composite C=P_{1}P_{2}, periods of its prime factors k(p_{1}) and k(p_{2}), residue r and order l.
 [0105]The periods of the prime factors with respect to l can only take on the patterns p_{1}−1, P_{1}+1 and P_{2}−1,P_{2}+1. Note that one can always flip the l type to change p−1 to p+1 and vice versa by trying several pairs of l values.
 [0106]The first important thing to take advantage of in PTFA is that whenever the period residue r_{p }lies close to p, it can readily be factored. One numerical example will illustrate this:
 [0107]Take C=91(=7×13). The possible periods k(p_{1,2}) of 7 and 13 are, for 7, 7−1=6, 7+1=8, and for 13, 13−1=12, 13+1=14. When C=91 is divided respectively by each of these four k(p_{1,2}) the following period residue r_{p }are obtained: 1, 3, 7, 7, obtained from 91=1 (mod 6), 91=3 (mod 8), 91 =7 (mod 12), 91=7 (mod 14). Note how small the period residue r_{p }for the prime factor 7 with the −l type is, namely only 1. This implies that the factor 7 can be sieved out by taking the greatest common factor this way: gcd(R_{91−1} ^{−l }−2, 91) =7. When l=6, 7 takes on a −l type. So
${T}_{91}^{6}$  [0108]
 [0109]
 [0110]Thus one is able to factor by taking gcd(76−6, 91)=7. Likewise T_{90} ^{6}=72 (mod 91), therefore one can again factor by taking gcd(72−2, 91)=7 as shown above.
 [0111]Whenever the periods p+1 or p−1 [match?] the composite C in either the above straightforward way or a simple function like the cubic polynomial below, factoring can always be performed by taking gcd
$\left({R}_{f\ue8a0\left(C\right)}^{\pm l}\pm 2,C\right)=\mathrm{one}\ue89e\text{\hspace{1em}}\ue89e\mathrm{factor},\mathrm{here},$  [0112]
 [0113]
 [0114]
 [0115](mod C), where m can be any arbitrary term or a function of the composite f(C) to be computed.
 [0116]Again, to illustrate the this point, when +2 is added to 76 (the residue of T_{91 } ^{6 }mod 91), factorization can be performed by taking
$\mathrm{gcd}\ue8a0\left({R}_{91}^{6}+2,91\right)=\mathrm{gcd}\ue8a0\left(76+2,91\right)=13\ue89e\text{\hspace{1em}}\ue89e\mathrm{since}\ue89e\text{\hspace{1em}}\ue89e13+1\ue89e\uf60391\frac{13+1}{2},i.e\ue89e\mathrm{.14}\uf604\ue89e917$  [0117]There are numerous sets of composites that can be factored readily because their factors' periods bear such a simple relationship to C. For example, composites of the form C=p[1+(p+1)(p+2)] can always be factored readily in this way:
 [0118]gcd(R_{c+1} ^{+l}−2, C)=p. For example, take p=11, C=11(1+12×13)=11×157 =1727. By trials, quickly select a particular l for which 11 is of the +l type. When l=5, 11 is indeed of +l type. Thus one can compute (mod 1727)=R_{1728} ^{5}=167 and can factor in this way: gcd(167−2, 1727)=I 11.
 [0119]
 [0120]
 [0121]Obviously, one can easily construct or find infinitely many such composites to factor. In general for C=p[1+m(p+1)] where m is any prime or composite, C can always be factored as follows: gcd(R_{C+1} ^{+l}−2, C)=p. For C=p[1+m(p −1)], simply take gcd(R_{C−1} ^{−l}−2, C)=p.
 [0122]Furthermore, often the period of one prime factor of a composite happens to divide into the other prime factor or factors with a small enough residue, e.g., C=147149=37×41×94. In this example, factoring begins by finding by trial that when C has subtracted from it a small number 2, i.e., 147149−2, it gives
$147147=\frac{41+1}{2}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89e41+1\right)\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e\mathrm{also}\ue89e\text{\hspace{1em}}\ue89e147147=\frac{97+1}{2}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89e97+1\right).$  [0123]
 [0124]Again it is obvious that there are infinitely many such composites. Quite often too, when C is multiplied by a small integer, the period of a certain factor can divide exactly into this product of C by a small integer, allowing for ready factorization, e.g., C=41×67=2747. Multiplying C by the small integer 3 gives 2747×3=82441. Originally, 2747=27 (mod 41−1), and 27 is too large a residue period to readily factor. However, 8241=1 (mod 41−1), and 1 is definitely small enough, leading to gcd
$\left({R}_{3\ue89eC1}^{l}2,C\right)=\mathrm{gcd}\ue8a0\left({R}_{8240}^{l}2,2747\right)=41.$  [0125]This constitutes another infinite set of composites that can be factored in polynomial time through PTFA by a few trials.
 [0126]A powerful and very general PTFA method results from taking the cubic polynomial function of C to factor. It works as follows:
 [0127]f(C)=aC^{3}±bC^{2}±cC^{1}±d where 0 ≦a, b, c, d <4. The method tests all the possible combinations; actually, there are basically just 497 combinations that need to be computed for their respective T_{f(C)} ^{+l }(mod c), because the foregoing expression can be rewritten as f(C)=C(aC^{2}±bC±c)±d, and since c and d will just be integers taken consecutively, the computation lends itself to use of the identity in Tsequences:
${T}_{n+1}^{l}=l\xb7{T}_{n}^{l}{T}_{n1}^{l}.$  [0128]
 [0129]where f(C) stays positive. Two arbitrary examples will illustrate. Take C=641×3469=2223629. Note
mod 640 mod 642 mod 3468 mod 3470 C^{1} 269 383 641 2829 C^{2} 41 313 1657 1421 C^{3} 149 467 929 1749  [0130]Taking a=1, b=+3, c=−1 and d=−3, 641 can be factored out by selecting one l for which 641 is of −l type such as l=3: since 22233629=269 (mod) there results 149+3×41−269−3=(269)^{3}+3(269)^{2}−3 =(2223629)^{3}+3(2223629)^{2}−2223629 −3=f(C). Thus 641 can be factored out as follows: gcd (R_{f(C)} ^{3}−2, C)=641.
 [0131]As another arbitrary example, take C=4567×0837=49492579. Note the fixed relationship between the period residues of each prime factors, particularly when they are the RSA form of two prime composites, e.g., when C=p_{1}(mod p_{2}+1), where p_{2 }is the larger prime and p_{1 }is the smaller prime factor. This is only one of the relationships that have been found. Others abound, such as the 641 residue under mod 3468 above and also the 4567 residue under mod 10836 here.
mod 4566 mod 4568 mod 10836 mod 10838 49492579^{1} 1705 2867 4567 6271 49492579^{2} 3049 1857 9025 5177 49492579^{3} 2437 2299 7867 5157  [0132]Again trials show that when a=3, b=−4, c=−3, d=−4, 45683C^{3}−4C2 −3C−4=f(C). Thus a sieve action is achieved by selecting one l for which 4567 carries +l type, e.g., l=3. Factorization is performed by taking gcd (R _{3C} _{ 3 } _{−4C} _{ 2 } _{3C} _{ 2 } _{−3C−4} ^{3}−2, C)=4567.
 [0133]This formula can be linked to the fundamental Diophantine Equation (p±1)×−R _{p}y=±d where p and R_{p }are related by C=R_{p}(mod p±1). This kind of Diophantine Equation is always solvable, e.g., in the previous example 640×3075−269×73167=+3, giving much theoretical strength to this formula. Also, this method bears a strikingly close relationship to the elliptic curve method. It is general and always polynomial time. No counterexamples have so far been found. Also very effective are the abovementioned small residue factoring sieve as well as a quadratic polynomial factoring sieve not described here. Composites of an arbitrary number of prime factors can be handled and factored too. A 100% complete and efficient PTFA should be based upon such a formula or similar one.
 [0134]In addition to the above methods, other factoring methods have been programmed and tested such as:
 [0135]
 [0136]
 [0137]
 [0138]
 [0139]
 [0140]
 [0141]
 [0142]
 [0143](mod 1−n). Use the residues as “inputs” for one or more layers of Tsequence modulo computation. Then factor by taking gcd
$\left({R}_{l\xb7n\pm {R}_{1\ue89e\dots \ue89e\text{\hspace{1em}}\ue89e4}\pm \text{\hspace{1em}}\ue89e{R}_{1\ue89e\dots \ue89e\text{\hspace{1em}}\ue89e4}\pm \text{\hspace{1em}}\ue89ef}^{\pm l}\pm 2,n\right)=\mathrm{one}\ue89e\text{\hspace{1em}}\ue89e\mathrm{prime}\ue89e\text{\hspace{1em}}\ue89e\mathrm{factor}$  [0144]E.g., take the composite n=2077≡31×67. Let l≡3, l n ≡3×2077≡6231. There result the four Rs:
$\begin{array}{cc}{R}_{2077}^{3}\equiv 719\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89e2077\right)& \left(a\right)\\ {R}_{2077}^{3}\equiv 2796\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89e6231\right)& \left(b\right)\\ {R}_{6231}^{3}\equiv 1190\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89e2077\right)& \left(c\right)\\ {R}_{6231}^{3}\equiv 3267\ue89e\left(\mathrm{mod}\ue89e\text{\hspace{1em}}\ue89e6231\right)& \left(d\right)\end{array}$  [0145]When e=1, f=−1, l=+for 67, e.g., l=3 there results
 1×2077+(3267−719)−1=4624=68×68.
 [0146]Factor by taking gcd(R_{4624} ^{3}−2, 2077) (2682−2, 2077)=67.
 [0147](C) Another method makes use of the recursive period pattern of certain primes, e.g., n=2701=37×73. First compute T_{2701} ^{3}≡1239 (mod 2701), T_{2702} ^{3}≡1749 (mod 2701). Square the larger, even term such as 2702 then subtract 2 (=T_{0}), always (mod n), to compute the next even term. For the odd term such as 2701, to compute the next odd term, multiply the odd term by the larger even term and then subtract l, e.g., (1) 1239 (odd), 1749 (even)=(2) 806 (odd), 1467 (even), where 1239×1749−3=806 (mod 2701) and (1749)^{2}−2=1467 (mod 2701). Carry on these computations recursively until there emerges a repetitive pattern. Then often factoring can be performed by taking the gcd, e.g., gcd(806−3, 270)=73, also gcd(1467−7, 2701)=73.
 [0148](D) Whenever the ratio between the two factors of the composite n is less than 2, one can always factor by adding or subtracting from n by the nearest integer [{square root}{square root over (4n− 4)}], whereupon the residue (mod p±1) is zero or just 1 away from p+1 or p−1, e.g., 37×43=1591 and
$\frac{43}{39}=1.1621<2.$  [0149]Compute [{square root}{square root over (4·1591−4)}]=80 and 1591−80=1511. By finding l such as l=4 where 37 is −l type but not 43, factorization is made possible by taking 1511+1=0 (mod 37−1), i.e., gcd (R_{1591 −[{square root}{square root over (4·1591−4)}]+1}−2,1591)=37. There are again infinite number of composites with this convenient property, or the factors can be made to lie close in size to one another by simply multiplying the composite by a suitable small integer.
 [0150]Factoring—Summary. Tsequences are closely tied in to factoring. There have been described several very promising polynomialtime factoring methods. The cubic polynomial PTFA seems to work the best, but other lines of attack are feasible too.
 [0151]Prime Number Formula. Traditionally, a prime number formula (which has never been found) has always had these requirements:
 [0152]1) It always gives a prime number for each integer input n=1, 2, 3, 4, . . .
 [0153]2) It is constructive, i.e., the formula can always be computed to give prime numbers. For example, Mills' formula p=[hd A^{3} ^{ n }] gives no clue how to compute a precise value for A and is therefore not constructive.
 [0154]
 [0155]is forthright in that it gives the roots readily.
 [0156]On the face of it, these requirements seem natural enough. Seekers of prime number formula have always exerted their best efforts to find a prime number formula that satisfies these three requirements. The continuing failure to find such a prime number formula has caused many researchers to conclude no such formula exists.
 [0157]While it appears doubtful that a prime number formula of this type can be constructed, upon reflection, it may be seen that the third requirement is inconsistent with the very definition of prime numbers, namely that they cannot be divided exactly by any other numbers other than themselves and 1. The implication is that the primality of a positive integer n needs to be determined by a legitimate polynomialtime primality testing algorithm. Whether n is prime or composite cannot be ascertained right away. Rather, n must be tested for primality. A prime number formula which is supposed to generate primes and not composites also needs to obey such a fundamental requirement.
 [0158]Now redefine a prime number formula as one that satisfies the three requirements:
 [0159]1) It always gives a prime number for each integer input n=1, 2, 3, . . .
 [0160]2) It is always constructive.
 [0161]3) It possesses polynomialtime complexity.
 [0162]Since a prime number formula is in essence one version of a primality testing algorithm; whereas the traditional formulation of a prime number formula is an NP problem, the foregoing formulation recast the problem such that NP→P.
 [0163]A new prime number formula of the type described may be arrived at by making use of a revised version of the Fortune Conjecture, i.e., P_{i+1}−P_{1}P_{2}P_{3}. . . Pi is always a prime. This can be shown to be equivalent to the conjecture that the smallest gap between two consecutive primes P_{i+1}, and P_{i }is (lnP_{i}lnlnP_{i})^{2}. If this gap is simplified to ln^{2}P_{i}, then following Euclid's celebrated proof for the infinity of prime numbers, one can easily show that Fortune Conjecture is equivalent to this smallest gap conjecture. The validity of these two conjectures are well substantiated empirically as well as theoretically. It is known that the maximum gap between two consecutive primes must be rounded by the order of lnP_{i}. Any such logarithmic gap will do just fine for the following prime number formula gap or range: g=(lnP_{1} ^{a}P_{2} ^{b}. . . P_{i} ^{x})^{2}. According to Fortune/Smallest Gap Conjecture there is at least one prime between Q and Q+g. The method therefore needs to compute only these sums: Q+P_{i+1}, Q+P_{i+2}, . . . Q+P_{j}, where P_{j }is the largest prime smaller than g. There is at least one prime among these sums, and by applying the primality testing method described previously, the primality of each sum can be determined rapidly. Actually, it is also useful to compute the differences: Q−P_{i+1}, Q−P_{i+2}, . . . Q−P_{j}. It turns out that practically all such differences give not just one but many primes within the range.
 [0164]One numerical example illustrates this formula clearly: Let P_{1}=2, P_{2}=3, P_{3}=5, and a=2, b=1, x=2. Then Q=P_{1} ^{a}P_{2} ^{b}P_{3} ^{x}=22^{2}·3·5^{2=}300, (ln300)^{2}≈32.5. That means there is a need to compute only these numbers 300±7, 300±11, 300±13, 300±17, 300±19, 300±23, 300±29, 300±31. (The numbers 300±1 are not computed here). Among these 16 numbers, the foregoing primality testing algorithm or a similar algorithm enables us to sieve out 11 prime numbers. The conjecture tells us that there are at least two primes. The method obtains 11 out of 16; this is a high yield of primes. In fact, even for big numbers this formula or sieve will still yield large quantities of primes consistently, with an estimated or 36.78% of the sums and differences being prime. One condition which must be observed at all times is that lnP_{1} ^{a}P_{2} ^{b}. . .P_{i} ^{x }must always be smaller than the next prime after P_{i}, that is P_{i+1}.
 [0165]One can also add or subtract a large product with a small product e.g. 2^{2}·3·5^{2}=300 and 2^{2}·3^{2}=36, giving 300+36=336. The smallest gap in this case will be determined by (In 36)^{2}=12.84. Among the differences 336−5=331 is found to be prime, in line with the conjecture. In short the possible number of candidates for primes can always be minimized so that the greatest number of composites is filtered out beforehand.
 [0166]Note that Q +P_{i }can always be arranged in such a way that will best minimize the number of computations needed to sieve out all the primes in any given range. E.g., there is a relatively large gap between 114 and 127. Computing 2·3 ^{2}3^{2}·5 +2^{3}·3 =114 would require computation of 114+5, 7, 11, 13, i.e., four steps too many. Instead, choose 2^{3·3·5=120 }which allows computation of the immediate primes as 120+7=127 and 120−7=113. This gives all primes within that range readily while skipping all the composite candidates simultaneously. In fact, using a few trials and checks beforehand, one can always manage to optimize the yield of primes within the range efficiently. Large primes can then be chunked out much faster and consistently, all the time based on this prime number sieving algorithm.
 [0167]This approach makes it possible to compute a large prime. This formula, along with adding or subtracting suitable sums or differences, will readily generate many other primes around this large prime.
 [0168]Random Number Generator
 [0169]Mathematically a good random number generator (RNG) should be infinitely nonperiodic, such that no generated number can be deduced from any previous number. Of course, statistical tests like the chisquare test can be applied to ensure that all digits are distributed 100% randomly with no bias whatsoever. Admittedly, if only math is concerned, a fixed input will always yield a fixed output. Only physical systems like the quantum mechanical systems can give “dynamically genuine” random numbers. Coupling these two notions together, it is possible to construct a powerful and convenient RNG.
 [0170]First, note the fact that the last digits of all primes, except 2 and 5, can only be 1, 3, 7 and 9. They are distributed absolutely randomly among the infinite set of positive integers. The very definition of prime number demands this, since prime numbers can only be divided exactly by 1 and themselves. Thus by taking the last digits only and ignoring the trivial 2 and 5, from the prime set 3, 7, 11, 13, 17, 19, 23, 29, 31, etc., one obtains the random digits 3, 7, 1, 3, 7, 9, 3, 9, 1, 7, 1, 3, 7, 3, 9, 1, 7, 1, 3, 9, 3, 9, 7 for primes from 3 to 97. These digits form an infinite set, and no digit can be derived from the previous or succeeding ones. Each one of the four digits appears 25% of the time. Above all, they are absolutely nonperiodic.
 [0171]The primenumber formula based on the Tsequence polynomialtime primality testing algorithm provides infinitely many variations of these random prime digits, e.g., take 2×3×5×7×=210. Based on the formula presented previously, add or subtract all the primes between 7<11 and 47<7^{2}, to test each sum or difference for primality. From the seed 210 onward one obtains the sums +1, +11, +13, +17, . . . +47 which give this set of random digits: 1, 3, 7, 9, 3, 9, 1, 1, 7 from 211 to 257. The differences −1, −11, −13, −17, . . . −47 give another set of random digits: 9, 7, 3, 1, 1, 9, 3, 3, 7, 3 from 199 back to 163. Of course, the foregoing primality testing algorithm can be used generate an abundance of large primes such as cannot be generated in any other way.
 [0172]Since the seeds such as 2·3·5 or 2^{2}·3^{2}·5·7, etc. can be varied in infinitely many ways, the set of last prime digits can also be generated and arranged in all sorts of arbitrary ways. The seeds can be added or subtracted in any which way too. Without a complete knowledge of the exact seeds and their mathematical operations, no one can reproduce or deduce this type of random digits of the primes. These random digits of primes behave in just as chaotic fashion as the physical subatomic particles in their distribution. Therefore this method can conveniently generate any length of random digits or numbers desired to use in mathematical research or industrial simulation. This generator of random digits can be implemented easily and efficiently in both hardware and software. Conventional RNGs such as linear or nonlinear feedback shift registers always carry period patterns which are inherent. Nonperiodicity is inherent in the foregoing random prime digit generator.
 [0173]This RNG can also be easily modified into a simple but innovative cipher: a function F_{1}, (such as transposition, shuffling, etc.) that operates on the last prime digit and another function F_{2 }that computes and determines the seeds are both kept secret. F_{2 }is coupled to a simple but chaotic physical system such as dicethrowing, radioactive matter, etc., for the first random input as seeds. The functions F_{2 }and F_{1 }are used to generate a truly random string of digits such as 9, 7, 3, 1, 1, 9, 3, 3, 7, 3, 1, 3, 7, 9, 3, 9, 1, 1, 7. This string of random digits can be used as a onetime pad for encryption. The receiver who is informed only of the starting seeds (from the physical system input) can decrypt the ciphertext to obtain the plaintext since he also possesses F_{1}, and F_{2 }as well as the relevant table of primes like the sender. As long as F_{1 }and F_{2 }are kept secret, no eavesdropper can decrypt the ciphertext. The cipher can even be timed accordingly so that the functions F_{1 }and F_{2 }change according to time changes or context changes. In any event, math theory about primes guarantees that the string of random digits thus generated are absolutely chaotic. No fixed interrelationship can be derived from among themselves.
 [0174]It will be appreciated by those of ordinary skill in the art that the invention can be embodied in other specific forms without departing from the spirit or essential character thereof. The presently disclosed embodiments are therefore considered in all respects to be illustrative and not restrictive. The scope of the invention is indicated by the appended claims rather than the foregoing description, and all changes which come within the meaning and range of equivalents thereof are intended to be embraced therein.
Claims (8)
1. A computerimplemented method, comprising:
determining at least one element of a nonmontonic sequence, the nonmontonic sequence being one of a family of related nonmontonic sequences;
using at least said element, determining at least one property of a number; and
depending on said property, taking an action the effect of which is to enhance or degrade data security within a computer system or network.
2. The method of claim 1 , wherein said property is primality.
3. The method of claim 1 , wherein said number is a composite number, and said property is a factor of said number.
4. The method of claim 1 , wherein said family of related nonmontonic sequences is defined as follows:
5. A prime number generator, comprising:
means for generating candidate numbers by forming at least one of sums and differences of a given number and a series of prime numbers; and
means for deterministically evaluating primality of each of the candidate numbers in polynomial time.
6. The apparatus of claim 5 , wherein said means for deterministically evaluating primality comprises means for determining at least one element of a nonmontonic sequence, the nonmontonic sequence being one of a family of related nonmontonic sequences.
7. The apparatus of claim 6 , wherein said family of related nonmontonic sequences is defined as follows:
8. A random number generator, comprising:
means for determining a seed number;
means for forming at least one of sums and differences of the seed number and a series of prime numbers; and
means for outputting last digits of the series of prime numbers to produce a set of random digits.
Priority Applications (2)
Application Number  Priority Date  Filing Date  Title 

US14558599 true  19990726  19990726  
US09559142 US20020099746A1 (en)  19990726  20000427  Tsequence apparatus and method for general deterministic polynomialtime primality testing and composite factoring 
Applications Claiming Priority (2)
Application Number  Priority Date  Filing Date  Title 

US09559142 US20020099746A1 (en)  19990726  20000427  Tsequence apparatus and method for general deterministic polynomialtime primality testing and composite factoring 
US10306072 US9542158B2 (en)  19990726  20021127  Tsequence apparatus and method for general deterministic polynomialtime primality testing and composite factoring 
Related Child Applications (1)
Application Number  Title  Priority Date  Filing Date 

US10306072 Continuation US9542158B2 (en)  19990726  20021127  Tsequence apparatus and method for general deterministic polynomialtime primality testing and composite factoring 
Publications (1)
Publication Number  Publication Date 

US20020099746A1 true true US20020099746A1 (en)  20020725 
Family
ID=22513747
Family Applications (2)
Application Number  Title  Priority Date  Filing Date 

US09559142 Abandoned US20020099746A1 (en)  19990726  20000427  Tsequence apparatus and method for general deterministic polynomialtime primality testing and composite factoring 
US10306072 Active 20241113 US9542158B2 (en)  19990726  20021127  Tsequence apparatus and method for general deterministic polynomialtime primality testing and composite factoring 
Family Applications After (1)
Application Number  Title  Priority Date  Filing Date 

US10306072 Active 20241113 US9542158B2 (en)  19990726  20021127  Tsequence apparatus and method for general deterministic polynomialtime primality testing and composite factoring 
Country Status (2)
Country  Link 

US (2)  US20020099746A1 (en) 
WO (1)  WO2001008350A1 (en) 
Cited By (41)
Publication number  Priority date  Publication date  Assignee  Title 

WO2004001595A1 (en) *  20020621  20031231  Atmel Corporation  Testing probable prime numbers for cryptographic applications 
US20060034456A1 (en) *  20020201  20060216  Secure Choice Llc  Method and system for performing perfectly secure key exchange and authenticated messaging 
US20080198832A1 (en) *  20070215  20080821  Harris Corporation  Low Level Sequence as an AntiTamper MEchanism 
US20080263119A1 (en) *  20070419  20081023  Harris Corporation  Digital Generation of a Chaotic Numerical Sequence 
US20080294956A1 (en) *  20070522  20081127  Harris Corporation  Encryption Via Induced Unweighted Errors 
US20080294710A1 (en) *  20070522  20081127  Harris Corporation  Extending a Repetition Period of a Random Sequence 
US20080307022A1 (en) *  20070607  20081211  Harris Corporation  Mixed Radix Conversion with a Priori Defined Statistical Artifacts 
US20080304666A1 (en) *  20070607  20081211  Harris Corporation  Spread Spectrum Communications System and Method Utilizing Chaotic Sequence 
US20080307024A1 (en) *  20070607  20081211  Harris Corporation  Mixed Radix Number Generator with Chosen Statistical Artifacts 
US20090034727A1 (en) *  20070801  20090205  Harris Corporation  Chaotic Spread Spectrum Communications System Receiver 
US20090044080A1 (en) *  20070531  20090212  Harris Corporation  Closed Galois Field Combination 
US20090110197A1 (en) *  20071030  20090430  Harris Corporation  Cryptographic system configured for extending a repetition period of a random sequence 
US20090196420A1 (en) *  20080205  20090806  Harris Corporation  Cryptographic system incorporating a digitally generated chaotic numerical sequence 
US20090245327A1 (en) *  20080326  20091001  Harris Corporation  Selective noise cancellation of a spread spectrum signal 
US20090279688A1 (en) *  20080506  20091112  Harris Corporation  Closed galois field cryptographic system 
US20090296860A1 (en) *  20080602  20091203  Harris Corporation  Adaptive correlation 
US20090300088A1 (en) *  20080529  20091203  Harris Corporation  Sine/cosine generator 
WO2009146283A1 (en) *  20080529  20091203  Harris Corporation  Digital generation of a chaotic numerical sequence 
US20090310650A1 (en) *  20080612  20091217  Harris Corporation  Featureless coherent chaotic amplitude modulation 
US20100054228A1 (en) *  20080829  20100304  Harris Corporation  Multitier adhoc network communications 
US20100091700A1 (en) *  20081009  20100415  Harris Corporation  Adhoc network acquisition using chaotic sequence spread waveform 
US20100165828A1 (en) *  20081229  20100701  Harris Corporation  Communications system employing chaotic spreading codes with static offsets 
US20100166041A1 (en) *  20081229  20100701  Harris Corporation  Communications system employing orthogonal chaotic spreading codes 
US20100226497A1 (en) *  20090303  20100909  Harris Corporation  Communications system employing orthogonal chaotic spreading codes 
US20100310072A1 (en) *  20090608  20101209  Harris Corporation  Symbol duration dithering for secured chaotic communications 
US20100309957A1 (en) *  20090608  20101209  Harris Corporation  Continuous time chaos dithering 
US20100316090A1 (en) *  20090610  20101216  Harris Corporation  Discrete time chaos dithering 
US20110002460A1 (en) *  20090701  20110106  Harris Corporation  Highspeed cryptographic system using chaotic sequences 
US20110004792A1 (en) *  20090701  20110106  Harris Corporation  Bit error rate reduction in chaotic communications 
US20110002364A1 (en) *  20090701  20110106  Harris Corporation  Antijam communications having selectively variable peaktoaverage power ratio including a chaotic constant amplitude zero autocorrelation waveform 
US20110019817A1 (en) *  20090722  20110127  Harris Corporation  Permissionbased tdma chaotic communication systems 
US8320557B2 (en)  20080508  20121127  Harris Corporation  Cryptographic system including a mixed radix number generator with chosen statistical artifacts 
US8345725B2 (en)  20100311  20130101  Harris Corporation  Hidden Markov Model detection for spread spectrum waveforms 
US8363700B2 (en)  20090701  20130129  Harris Corporation  Rake receiver for spread spectrum chaotic communications systems 
US8363830B2 (en)  20080207  20130129  Harris Corporation  Cryptographic system configured to perform a mixed radix conversion with a priori defined statistical artifacts 
US8369377B2 (en)  20090722  20130205  Harris Corporation  Adaptive link communications using adaptive chaotic spread waveform 
US8385385B2 (en)  20090701  20130226  Harris Corporation  Permissionbased secure multiple access communication systems 
US20130051552A1 (en) *  20100120  20130228  Héléna Handschuh  Device and method for obtaining a cryptographic key 
US8406352B2 (en)  20090701  20130326  Harris Corporation  Symbol estimation for chaotic spread spectrum signal 
US8428104B2 (en)  20090701  20130423  Harris Corporation  Permissionbased multiple access communications systems 
US20140344319A1 (en) *  20130514  20141120  Daljit Singh Jandu  Algorithm for primality testing based on infinite, symmetric, convergent, continuous, convolution ring group 
Families Citing this family (11)
Publication number  Priority date  Publication date  Assignee  Title 

US7130422B2 (en) *  20010417  20061031  Matsushita Electric Industrial Co., Ltd.  Information security device, prime number generation device, and prime number generation method 
US8229108B2 (en) *  20030815  20120724  Broadcom Corporation  Pseudorandom number generation based on periodic sampling of one or more linear feedback shift registers 
US7562052B2 (en) *  20040607  20090714  Tony Dezonno  Secure customer communication method and system 
WO2007020564A3 (en) *  20050819  20070531  Koninkl Philips Electronics Nv  Circuit arrangement and method for rsa key generation 
US7860918B1 (en)  20060601  20101228  Avaya Inc.  Hierarchical fair scheduling algorithm in a distributed measurement system 
FR2905776B1 (en) *  20060911  20090130  Bigilimwatshi Guy Boyo  Electronic device and / or computer factorization integers. 
DE102006045224A1 (en) *  20060926  20080124  DlDaten Gmbh  Front page inconsistent with disclosure, abstract based on front page. Patent Office notified  User data transfer integrity connection authentication and checking method, involves authenticating and checking between two or more patterns 
US7876690B1 (en)  20070926  20110125  Avaya Inc.  Distributed measurement system configurator tool 
US7552164B1 (en)  20080424  20090623  International Business Machines Corporation  Accelerated prime sieving using architectureoptimized partial prime product table 
FR2946207A1 (en) *  20090528  20101203  Proton World Internat Nv  Protecting a prime number generation algorithm for rsa 
JP2011123356A (en) *  20091211  20110623  Oki Semiconductor Co Ltd  Prime number generating device, prime number generating method, and prime number generating program 
Family Cites Families (16)
Publication number  Priority date  Publication date  Assignee  Title 

US744041A (en)  19010921  19031117  Charles G Burke  Telegraphic code. 
NL279100A (en)  19610530  
DE2658065A1 (en)  19761222  19780706  Ibm Deutschland  cipher machine and decipher 
US4218582A (en)  19771006  19800819  The Board Of Trustees Of The Leland Stanford Junior University  Public key cryptographic apparatus and method 
US4351982A (en)  19801215  19820928  RacalMilgo, Inc.  RSA Publickey data encryption system having large random prime number generating microprocessor or the like 
US4740890A (en)  19831222  19880426  Software Concepts, Inc.  Software protection system with trial period usage code and unlimited use unlocking code both recorded on program storage media 
US4988987A (en)  19851230  19910129  Supra Products, Inc.  Keysafe system with timer/calendar features 
US5058160A (en)  19880429  19911015  ScientificAtlanta, Inc.  Inband controller 
US5351298A (en) *  19910930  19940927  Smith Peter J  Cryptographic communication method and apparatus 
US5703948A (en)  19940214  19971230  Elementrix Technologies Ltd.  Protected communication method and system 
US5787172A (en)  19940224  19980728  The Merdan Group, Inc.  Apparatus and method for establishing a cryptographic link between elements of a system 
US5663896A (en)  19940922  19970902  Intel Corporation  Broadcast key distribution apparatus and method using Chinese Remainder 
US5594797A (en)  19950222  19970114  Nokia Mobile Phones  Variable security level encryption 
US5724428A (en)  19951101  19980303  Rsa Data Security, Inc.  Block encryption algorithm with datadependent rotations 
US5771291A (en)  19951211  19980623  Newton; Farrell  User identification and authentication system using ultra long identification keys and ultra large databases of identification keys for secure remote terminal access to a host computer 
US6219421B1 (en) *  19971024  20010417  Shaul O. Backal  Virtual matrix encryption (VME) and virtual key cryptographic method and apparatus 
Cited By (74)
Publication number  Priority date  Publication date  Assignee  Title 

US20060034456A1 (en) *  20020201  20060216  Secure Choice Llc  Method and system for performing perfectly secure key exchange and authenticated messaging 
US6718536B2 (en) *  20020621  20040406  Atmel Corporation  Computerimplemented method for fast generation and testing of probable prime numbers for cryptographic applications 
WO2004001595A1 (en) *  20020621  20031231  Atmel Corporation  Testing probable prime numbers for cryptographic applications 
KR100938030B1 (en)  20020621  20100121  아트멜 코포레이숀  Method for testing probable prime numbers for cryptographic programs 
US8312551B2 (en)  20070215  20121113  Harris Corporation  Low level sequence as an antitamper Mechanism 
US20080198832A1 (en) *  20070215  20080821  Harris Corporation  Low Level Sequence as an AntiTamper MEchanism 
US7937427B2 (en)  20070419  20110503  Harris Corporation  Digital generation of a chaotic numerical sequence 
WO2008130973A1 (en) *  20070419  20081030  Harris Corporation  Digital generation of a chaotic numerical sequence 
US20080263119A1 (en) *  20070419  20081023  Harris Corporation  Digital Generation of a Chaotic Numerical Sequence 
US20080294956A1 (en) *  20070522  20081127  Harris Corporation  Encryption Via Induced Unweighted Errors 
US20080294710A1 (en) *  20070522  20081127  Harris Corporation  Extending a Repetition Period of a Random Sequence 
US8611530B2 (en)  20070522  20131217  Harris Corporation  Encryption via induced unweighted errors 
US7921145B2 (en)  20070522  20110405  Harris Corporation  Extending a repetition period of a random sequence 
US7995757B2 (en)  20070531  20110809  Harris Corporation  Closed galois field combination 
US20090044080A1 (en) *  20070531  20090212  Harris Corporation  Closed Galois Field Combination 
US20080304666A1 (en) *  20070607  20081211  Harris Corporation  Spread Spectrum Communications System and Method Utilizing Chaotic Sequence 
US7962540B2 (en)  20070607  20110614  Harris Corporation  Mixed radix number generator with chosen statistical artifacts 
US7970809B2 (en)  20070607  20110628  Harris Corporation  Mixed radix conversion with a priori defined statistical artifacts 
US20080307024A1 (en) *  20070607  20081211  Harris Corporation  Mixed Radix Number Generator with Chosen Statistical Artifacts 
US7974413B2 (en)  20070607  20110705  Harris Corporation  Spread spectrum communications system and method utilizing chaotic sequence 
US20080307022A1 (en) *  20070607  20081211  Harris Corporation  Mixed Radix Conversion with a Priori Defined Statistical Artifacts 
US20090034727A1 (en) *  20070801  20090205  Harris Corporation  Chaotic Spread Spectrum Communications System Receiver 
US8005221B2 (en)  20070801  20110823  Harris Corporation  Chaotic spread spectrum communications system receiver 
US7995749B2 (en)  20071030  20110809  Harris Corporation  Cryptographic system configured for extending a repetition period of a random sequence 
US20090110197A1 (en) *  20071030  20090430  Harris Corporation  Cryptographic system configured for extending a repetition period of a random sequence 
US8180055B2 (en)  20080205  20120515  Harris Corporation  Cryptographic system incorporating a digitally generated chaotic numerical sequence 
US20090196420A1 (en) *  20080205  20090806  Harris Corporation  Cryptographic system incorporating a digitally generated chaotic numerical sequence 
US8363830B2 (en)  20080207  20130129  Harris Corporation  Cryptographic system configured to perform a mixed radix conversion with a priori defined statistical artifacts 
US8040937B2 (en)  20080326  20111018  Harris Corporation  Selective noise cancellation of a spread spectrum signal 
US20090245327A1 (en) *  20080326  20091001  Harris Corporation  Selective noise cancellation of a spread spectrum signal 
US20090279688A1 (en) *  20080506  20091112  Harris Corporation  Closed galois field cryptographic system 
US8139764B2 (en)  20080506  20120320  Harris Corporation  Closed galois field cryptographic system 
US8320557B2 (en)  20080508  20121127  Harris Corporation  Cryptographic system including a mixed radix number generator with chosen statistical artifacts 
US20090300088A1 (en) *  20080529  20091203  Harris Corporation  Sine/cosine generator 
WO2009146283A1 (en) *  20080529  20091203  Harris Corporation  Digital generation of a chaotic numerical sequence 
US8200728B2 (en)  20080529  20120612  Harris Corporation  Sine/cosine generator 
US8145692B2 (en)  20080529  20120327  Harris Corporation  Digital generation of an accelerated or decelerated chaotic numerical sequence 
US20090327387A1 (en) *  20080529  20091231  Harris Corporation  Digital generation of an accelerated or decelerated chaotic numerical sequence 
KR101226781B1 (en)  20080529  20130125  해리스 코포레이션  Digital generation of a chaotic numerical sequence 
US20090296860A1 (en) *  20080602  20091203  Harris Corporation  Adaptive correlation 
US8064552B2 (en)  20080602  20111122  Harris Corporation  Adaptive correlation 
US20090310650A1 (en) *  20080612  20091217  Harris Corporation  Featureless coherent chaotic amplitude modulation 
US8068571B2 (en)  20080612  20111129  Harris Corporation  Featureless coherent chaotic amplitude modulation 
US8325702B2 (en)  20080829  20121204  Harris Corporation  Multitier adhoc network in which at least two types of noninterfering waveforms are communicated during a timeslot 
US20100054228A1 (en) *  20080829  20100304  Harris Corporation  Multitier adhoc network communications 
US20100091700A1 (en) *  20081009  20100415  Harris Corporation  Adhoc network acquisition using chaotic sequence spread waveform 
US8165065B2 (en)  20081009  20120424  Harris Corporation  Adhoc network acquisition using chaotic sequence spread waveform 
US20100165828A1 (en) *  20081229  20100701  Harris Corporation  Communications system employing chaotic spreading codes with static offsets 
US8406276B2 (en)  20081229  20130326  Harris Corporation  Communications system employing orthogonal chaotic spreading codes 
US20100166041A1 (en) *  20081229  20100701  Harris Corporation  Communications system employing orthogonal chaotic spreading codes 
US8351484B2 (en)  20081229  20130108  Harris Corporation  Communications system employing chaotic spreading codes with static offsets 
US8457077B2 (en)  20090303  20130604  Harris Corporation  Communications system employing orthogonal chaotic spreading codes 
US20100226497A1 (en) *  20090303  20100909  Harris Corporation  Communications system employing orthogonal chaotic spreading codes 
US8428102B2 (en)  20090608  20130423  Harris Corporation  Continuous time chaos dithering 
US20100310072A1 (en) *  20090608  20101209  Harris Corporation  Symbol duration dithering for secured chaotic communications 
US20100309957A1 (en) *  20090608  20101209  Harris Corporation  Continuous time chaos dithering 
US8428103B2 (en)  20090610  20130423  Harris Corporation  Discrete time chaos dithering 
US20100316090A1 (en) *  20090610  20101216  Harris Corporation  Discrete time chaos dithering 
US20110002460A1 (en) *  20090701  20110106  Harris Corporation  Highspeed cryptographic system using chaotic sequences 
US8340295B2 (en)  20090701  20121225  Harris Corporation  Highspeed cryptographic system using chaotic sequences 
US20110004792A1 (en) *  20090701  20110106  Harris Corporation  Bit error rate reduction in chaotic communications 
US8369376B2 (en)  20090701  20130205  Harris Corporation  Bit error rate reduction in chaotic communications 
US8379689B2 (en)  20090701  20130219  Harris Corporation  Antijam communications having selectively variable peaktoaverage power ratio including a chaotic constant amplitude zero autocorrelation waveform 
US8428104B2 (en)  20090701  20130423  Harris Corporation  Permissionbased multiple access communications systems 
US8363700B2 (en)  20090701  20130129  Harris Corporation  Rake receiver for spread spectrum chaotic communications systems 
US8406352B2 (en)  20090701  20130326  Harris Corporation  Symbol estimation for chaotic spread spectrum signal 
US20110002364A1 (en) *  20090701  20110106  Harris Corporation  Antijam communications having selectively variable peaktoaverage power ratio including a chaotic constant amplitude zero autocorrelation waveform 
US8385385B2 (en)  20090701  20130226  Harris Corporation  Permissionbased secure multiple access communication systems 
US20110019817A1 (en) *  20090722  20110127  Harris Corporation  Permissionbased tdma chaotic communication systems 
US8369377B2 (en)  20090722  20130205  Harris Corporation  Adaptive link communications using adaptive chaotic spread waveform 
US8848909B2 (en)  20090722  20140930  Harris Corporation  Permissionbased TDMA chaotic communication systems 
US20130051552A1 (en) *  20100120  20130228  Héléna Handschuh  Device and method for obtaining a cryptographic key 
US8345725B2 (en)  20100311  20130101  Harris Corporation  Hidden Markov Model detection for spread spectrum waveforms 
US20140344319A1 (en) *  20130514  20141120  Daljit Singh Jandu  Algorithm for primality testing based on infinite, symmetric, convergent, continuous, convolution ring group 
Also Published As
Publication number  Publication date  Type 

US20040057580A1 (en)  20040325  application 
US9542158B2 (en)  20170110  grant 
WO2001008350A1 (en)  20010201  application 
Similar Documents
Publication  Publication Date  Title 

Antoniou et al.  Generalized spectral decompositions of mixing dynamical systems  
Lagarias  Pseudorandom number generators in cryptography and number theory  
Coppersmith et al.  Cryptanalysis of stream ciphers with linear masking  
Cusick et al.  Cryptographic Boolean functions and applications  
Alexi et al.  RSA and Rabin functions: Certain parts are as hard as the whole  
Maurer  Abstract models of computation in cryptography  
Dalai et al.  Results on algebraic immunity for cryptographically significant Boolean functions  
US20090279688A1 (en)  Closed galois field cryptographic system  
Naor et al.  Synthesizers and their application to the parallel construction of pseudorandom functions  
Charpin et al.  On bent and semibent quadratic Boolean functions  
Lehmer  Factorization of certain cyclotomic functions  
US20090202067A1 (en)  Cryptographic system configured to perform a mixed radix conversion with a priori defined statistical artifacts  
Nishide et al.  Multiparty computation for interval, equality, and comparison without bitdecomposition protocol  
Vadhan  Pseudorandomness  
Wiedemann  Solving sparse linear equations over finite fields  
US20080294710A1 (en)  Extending a Repetition Period of a Random Sequence  
Hagerup et al.  Deterministic dictionaries  
Wolfram  Random sequence generation by cellular automata  
Rivest et al.  Arestrong'primes needed for RSA,"  
Kevin  The discrete logarithm problem  
Shpilrain et al.  Thompson’s group and public key cryptography  
Jozsa  Quantum factoring, discrete logarithms, and the hidden subgroup problem  
Van Dam et al.  Quantum algorithms for some hidden shift problems  
Impagliazzo et al.  How to recycle random bits  
Wagstaff Jr  Cryptanalysis of number theoretic ciphers 
Legal Events
Date  Code  Title  Description 

AS  Assignment 
Owner name: MEGANET CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:TIE, TECK SING;BACKAL, SHAUL O.;REEL/FRAME:010757/0868 Effective date: 20000420 

AS  Assignment 
Owner name: BACKAL, SHAUL, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MEGANET CORPORATION;REEL/FRAME:011078/0311 Effective date: 20000822 