Ejemplo n.º 1
0
 def test_next_prime(self):
     # Test prime factorization for number 3
     self.assertEqual(next_prime(3), 5)
     # Test prime factorization for number 28
     self.assertEqual(next_prime(14), 17)
     # Test prime factorization for number 28
     self.assertEqual(next_prime(24), 29)
Ejemplo n.º 2
0
 def gennext(self):
     rnd = rndgen(int.from_bytes(self.seed.tobytes(), byteorder='big'))
     num = int(rnd.randint(self.minval, self.maxval, dtype=int64))
     xorshift = next_prime(abs(num))
     if xorshift > self.maxval:
         xorshift %= self.maxval
         xorshift = next_prime(xorshift)
     xorshift %= len(self.mainseed)
     xorwith = bitarray(endian='big')
     xorwith.frombytes((num & 0xffffffffffffffff).to_bytes(8,
                                                           byteorder='big'))
     self.mainseed = cyclicxor(self.mainseed, xorwith, xorshift)
     xorsz = rnd.randint(1, 9)
     xorspace = rnd.randint(1, 9)
     baseloc = rnd.randint(len(self.mainseed))
     self.newseed(baseloc, xorsz, xorspace)
     return num
def pick_p(vss_q,n=0):
    '''find nearest prime greater than n such that p|(q-1), field for commitments'''

    global vss_p
    s = vss_q
    i = 2

    while True:
        p = nextprime.next_prime(s)
        if (p-1) % vss_q == 0:
            vss_p = p
            return vss_p
        else:
            i += 1
            s *= i
def pick_q(n):
    '''find nearest prime greater than n, field for polynomial'''
    global vss_q

    vss_q = nextprime.next_prime(n)
def init(n):
    '''generate prime group with order > n'''

    p = nextprime.next_prime(n)
    return n
def init(n):
    '''generate prime group with order > n, returns [group_size,generator]'''

    p = nextprime.next_prime(n)
    g = random.randrange(2, p - 1)
    return n  #assuming g is as generated in Threshold RSA