public void DiffieHellmanImpl_Success_Test() { var alicePrivate = new SecretKey(); var alicePublic = alicePrivate.GetPublicKey(); var bobPrivate = new SecretKey(); var bobPublic = bobPrivate.GetPublicKey(); var aliceShared = alicePrivate.GetSharedSecretKey(peerPublicKey: bobPublic); var bobShared = bobPrivate.GetSharedSecretKey(peerPublicKey: alicePublic); Assert.IsTrue(aliceShared.KeyValue.SequenceEqual(bobShared.KeyValue)); }
public void DiffieHellmanImpl_Fail_Test() { var alicePrivate = new SecretKey(); var alicePublic = alicePrivate.GetPublicKey(); var bobPrivate = new SecretKey(); var bobPublic = bobPrivate.GetPublicKey(); alicePublic.KeyValue = alicePublic.KeyValue.ToggleBitInKey(); var aliceShared = alicePrivate.GetSharedSecretKey(peerPublicKey: bobPublic); var bobShared = bobPrivate.GetSharedSecretKey(peerPublicKey: alicePublic); Assert.IsFalse(aliceShared.KeyValue.SequenceEqual(bobShared.KeyValue)); }