// verify that data signature is still the same
Assert.assertTrue(retData.verify(keyPair1.getPublic(), factory));
// try to overwrite with wrong protection keys 2 and without data signature (expected to fail)
data = new Data("dataD").setProtectedEntry();
data.ttlSeconds(ttl).basedOn(bKey).sign(keyPair1, factory);
// put using wrong content protection keys 2 to sign message
futureTryOverwrite = p1.put(lKey).setDomainKey(dKey).setData(cKey, data).setVersionKey(vKey)
.keyPair(keyPair2).start();
futureTryOverwrite.awaitUninterruptibly();
Assert.assertFalse(futureTryOverwrite.isSuccess());