def testGeneratorWithLFSR1(self): cle = random.randint(0, 1 << 33) res = tp1.Generator(cle, 300) taille_lfsr1 = tp1.getlfsr1()[0] etat_initial_aleatoire = 0 for i in range(0, taille_lfsr1): etat_initial_aleatoire += ((cle >> i) & 1) << i countTrueTest = 0 etat = 0 while etat < (1 << taille_lfsr1): lfsr_state = etat lfsr1_300bits = 0 for j in range(300): output, lfsr_state = tp1.update_LFSR(lfsr_state, tp1.getlfsr1()[1], taille_lfsr1) lfsr1_300bits += output << j if etat != etat_initial_aleatoire: self.assertFalse(tp1.statistical_test(lfsr1_300bits, res, 300)) else: self.assertTrue(tp1.statistical_test(lfsr1_300bits, res, 300)) countTrueTest += 1 etat += 1 if countTrueTest != 1: self.fail("Le nombre de test true devrait etre 1 or il est egal a " + str(countTrueTest))
def testStatisticalTest(self): self.assertFalse(tp1.statistical_test(155, 85, 8)) self.assertTrue(tp1.statistical_test(255, 254, 8))