Обнаружение хеш-коллизии в Python

Я вычислил 16 наборов из 3 случайных простых чисел в этом скрипте и теперь пытаюсь найти столкновение XOR, например запустить цикл из 3 случайных простых чисел, пока он не совпадет со значением XOR любого из вышеперечисленных 16 наборов. Как найти коллизию XOR, продолжает выбирать 3 набора составных чисел меньше 256 из данного скрипта Python?

      #importing random library
import random

#defining function for first random prime
def primesInRange(x, y):
    prime_list1 = []
    for n in range(x, y):
        isPrime = True
        for num in range(2, n):
            if n % num == 0:
                isPrime = False
        if isPrime:
            prime_list1.append(n)
    return prime_list

#defining function for second random prime
    prime_list2 = []
    for n in range(x, y):
        isPrime = True
        for num in range(2, n):
            if n % num == 0:
                isPrime = False
        if isPrime:
            prime_list2.append(n)
    return prime_list2

#defining function for third random prime
    prime_list3 = []
    for n in range(x, y):
        isPrime = True
        for num in range(2, n):
            if n % num == 0:
                isPrime = False
        if isPrime:
            prime_list3.append(n)
    return prime_list3
print('16 valid Prime Numbers from 1 to 256:')
#defining for loop to make a print 16 set of 3 random prime numbers.
for line in range (16):
    prime_list1 = primesInRange(1,256)
    randomPrime1 = random.choice(prime_list1)

    prime_list2 = primesInRange(1,256)
    randomPrime2 = random.choice(prime_list2)

    prime_list3 = primesInRange(1,256)
    randomPrime3 = random.choice(prime_list3)

    xor = randomPrime1 ^ randomPrime2 ^ randomPrime3
    #print((randomPrime1), (randomPrime2), (randomPrime3), ('||XOR='), (randomPrime1 ^ 
    randomPrime2 ^ randomPrime3))
    print((randomPrime1), (randomPrime2), (randomPrime3), ('||XOR='), (xor))

0 ответов

Другие вопросы по тегам