def test1(self):
     # Test splitting
     shares = Shamir.split(2, 3, bchr(90)*16)
     self.assertEqual(len(shares), 3)
     for index in range(3):
         self.assertEqual(shares[index][0], index+1)
         self.assertEqual(len(shares[index][1]), 16)
 def test1(self):
     # Test splitting
     shares = Shamir.split(2, 3, bchr(90) * 16)
     self.assertEqual(len(shares), 3)
     for index in range(3):
         self.assertEqual(shares[index][0], index + 1)
         self.assertEqual(len(shares[index][1]), 16)
Beispiel #3
0
    def test4(self):
        # Loopback split/recombine (SSSS)
        secret = unhexlify(b("000102030405060708090a0b0c0d0e0f"))

        shares = Shamir.split(2, 3, secret, ssss=True)

        secret2 = Shamir.combine(shares[:2], ssss=True)
        self.assertEqual(secret, secret2)
Beispiel #4
0
    def test3(self):
        # Loopback split/recombine
        secret = unhexlify(b("000102030405060708090a0b0c0d0e0f"))

        shares = Shamir.split(2, 3, secret)

        secret2 = Shamir.combine(shares[:2])
        self.assertEqual(secret, secret2)

        secret3 = Shamir.combine([shares[0], shares[2]])
        self.assertEqual(secret, secret3)
    def test3(self):
        # Loopback split/recombine
        secret = unhexlify(b("000102030405060708090a0b0c0d0e0f"))

        shares = Shamir.split(2, 3, secret)

        secret2 = Shamir.combine(shares[:2])
        self.assertEqual(secret, secret2)

        secret3 = Shamir.combine([ shares[0], shares[2] ])
        self.assertEqual(secret, secret3)

        secret4 = Shamir.combine(shares)
        self.assertEqual(secret, secret4) # One share too many
Beispiel #6
0
    def test5(self):
        # Detect duplicate shares
        secret = unhexlify(b("000102030405060708090a0b0c0d0e0f"))

        shares = Shamir.split(2, 3, secret)
        self.assertRaises(ValueError, Shamir.combine, (shares[0], shares[0]))