def check_key_parity(self, _key): """ """ if self.skip_parity_check: return True else: key = _key[1:] if _key[0:1] in [b'U'] else _key return check_key_parity(self.cipher.decrypt(B2raw(key)))
def test_check_key_parity_default_TPK(self): self.assertEqual( check_key_parity( b'\xfa\x9f\x90\xd4\x9c\xb2{}\x14\xa3\xfa\x9c\xcc\xffl\xb7'), True)
def test_check_key_parity_one_byte_failed_parity_check(self): self.assertEqual(check_key_parity(b'\xE7\xA3\xC8\xB1'), False)
def test_check_key_parity_all_bytes_OK(self): self.assertEqual(check_key_parity(b'\xE7\xA3\xB1'), True)
def test_check_key_parity_xE7(self): self.assertEqual(check_key_parity(b'\xE7'), True)
def test_check_key_parity_empty_key(self): self.assertEqual(check_key_parity(b''), True)