public void Create_CalculatesSameMacForSameUserWithSameSessionComponent() { _helper = new AuthenticatedSessionIDHelper(_rng, new byte[32], new HmacSha256Helper()); var session1 = _helper.Create("klings").AddBase64Padding(); var session2 = _helper.Create("klings").AddBase64Padding(); Assert.AreEqual(session1, session2); }
public void Create_CalculatesDifferentMacForDifferentUsersWithSameSessionComponent() { _helper = new AuthenticatedSessionIDHelper(_rng, new byte[32], new HmacSha256Helper()); var session1 = Convert.FromBase64String(_helper.Create("klings").AddBase64Padding()); var session2 = Convert.FromBase64String(_helper.Create("klings2").AddBase64Padding()); for (var i = 0; i < SessionIdComponentLength; i++) { Assert.AreEqual(session1[i], session2[i]); } var differs = false; for (var i = SessionIdComponentLength; i < session1.Length; i++) { differs = differs || session1[i] != session2[i]; } Assert.IsTrue(differs, "MACs were equal."); }
//[Test] public void Create_Performance() { _helper = new AuthenticatedSessionIDHelper(new RNGCryptoServiceProvider(), new byte[32], new HmacSha256Helper()); foreach (var number in Enumerable.Range(0, 10000000)) { _helper.Create("klings"); } }