def test_ECDSA(self): publicKey, privateKey = ECGenerator().generateECKeyPair() data = bytearray([0, 1, 2, 3]) badData = bytearray([0, 1, 2, 4]) signature = privateKey.sign(data) assert (publicKey.verify(data, signature)) assert (not publicKey.verify(badData, signature))
def createRandom(cls, password): tackKeyFile = cls() tackKeyFile.password = password tackKeyFile.version = 1 tackKeyFile.iter_count = 8192 tackKeyFile.salt = bytearray(os.urandom(16)) tackKeyFile.public_key, tackKeyFile.private_key = ECGenerator( ).generateECKeyPair() tackKeyFile.ciphertext, tackKeyFile.mac = tackKeyFile._encryptKey( password, tackKeyFile.salt, tackKeyFile.iter_count, tackKeyFile.public_key, tackKeyFile.private_key) return tackKeyFile