public void RatchetReferenceTest(byte[] nrk, byte[] rhk, byte[] nrhk, byte[] rck, byte[] shk, byte[] nshk, byte[] sck, byte[] _key, byte[] rpk, byte[] erck) { var key = new KeyAgreement(_key); var step0 = EcdhRatchetStep.Create(key, nrk, 0, rhk, nrhk, rck, 0, shk, nshk, sck); var step1 = step0.Ratchet(kdf, digest, rpk, new KeyAgreement(KeyGeneration.GeneratePrivateKey())); Assert.Equal(erck, step1.ReceivingChain.ChainKey); }
public void RatchetReferenceTest2(byte[] nrk, byte[] rhk, byte[] nrhk, byte[] rck, byte[] shk, byte[] nshk, byte[] sck, byte[] _key, byte[] rpk, byte[] _nkey, byte[] esck) { var key = new KeyAgreement(_key); var nkey = new KeyAgreement(_nkey); var step0 = EcdhRatchetStep.Create(key, nrk, 0, rhk, nrhk, rck, 0, shk, nshk, sck); var step1 = step0.Ratchet(kdf, digest, rpk, nkey); Assert.Equal(esck, step1.SendingChain.ChainKey); }