public static List <string> ThreeDSChallengeMacList(ThreeDSChallenge threeDSChallenge) { return(new List <string> { threeDSChallenge.ThreeDSTransId, threeDSChallenge.CReq, threeDSChallenge.ACSUrl }); }
private void VerifyThreeDSChallenge(ThreeDSChallenge threeDSChallenge) { if (threeDSChallenge != null) { var digest = _encoder.GetMac(ResponseHandler.ThreeDSChallengeMacList(threeDSChallenge), _apiResultKey); if (!digest.Equals(MacNeutralValue) && !digest.Equals(threeDSChallenge.MAC)) { throw new IncorrectMacException( "ThreeDSChallenge digest not corresponding to the calculated one. Possible data corruption!"); } } }