public void BadSignatureEmptyLength(string badSignature)
        {
            //Online HMAC tester: https://www.devglan.com/online-tools/hmac-sha256-online
            var input      = new TestModelInclusive();
            var calculator = new HMACSHA256SignatureCalculator();
            var sut        = new InstanceSignatureBuilder(calculator);

            sut.VerifyHex(input, badSignature, knownKey).Should().BeFalse();
        }
        public void PropertiesImplicitlyIncludedInCalculation()
        {
            //Online HMAC tester: https://www.devglan.com/online-tools/hmac-sha256-online
            const string signature  = "8feda6b02259091f6d58b53f5bf5645586fe38694c43d50c4e06f51265ed84a9";
            var          input      = new TestModelInclusive();
            var          calculator = new HMACSHA256SignatureCalculator();
            var          sut        = new InstanceSignatureBuilder(calculator);

            sut.VerifyHex(input, signature, knownKey).Should().BeTrue();
        }
예제 #3
0
        public void PropertiesImplicitlyIncludedInCalculation()
        {
            var input      = new TestModelInclusive();
            var calculator = A.Fake <ISignatureCalculator>();

            A.CallTo(() => calculator.Calculate(A <string> ._, A <string> ._))
            .ReturnsLazily((string name, string key) => new SignatureCalculation(string.Empty, name));
            var sut    = new InstanceSignatureBuilder(calculator);
            var actual = sut.Compute(input, knownKey);

            actual.PayloadAsASCIIString().Should()
            .Be(
                "Field1Oneman'sconstantisanotherman'svariable.Field22147483647Field39223372036854775807Field43.4028235E+38Field51.7976931348623157E+308Field69999-12-31T23:59:59.9999999Field7true");
        }
예제 #4
0
        public void PropertiesImplicitlyIncludedInCalculation()
        {
            //Online HMAC tester: https://www.devglan.com/online-tools/hmac-sha256-online
            var expected = new SignatureCalculation(
                "8feda6b02259091f6d58b53f5bf5645586fe38694c43d50c4e06f51265ed84a9",
                "Field1Oneman'sconstantisanotherman'svariable.Field22147483647Field39223372036854775807Field43.4028235E+38Field51.7976931348623157E+308Field69999-12-31T23:59:59.9999999Field7true"
                );

            var input      = new TestModelInclusive();
            var calculator = new HMACSHA256SignatureCalculator();
            var sut        = new InstanceSignatureBuilder(calculator);
            var actual     = sut.Compute(input, knownKey);

            actual.Should().BeEquivalentTo(expected);
        }