Beispiel #1
0
        protected override void LoadKernelDefaultConfigurationDataObjects(TransactionTypeEnum transactionTypeEnum, IConfigurationProvider configProvider)
        {
            Logger.Log("Using Kernel 2 Defaults:");
            KernelConfigurationDataForTransactionType kcdott = new KernelConfigurationDataForTransactionType()
            {
                TransactionTypeEnum            = transactionTypeEnum,
                KernelConfigurationDataObjects = TLVListXML.XmlDeserialize(configProvider.GetKernel2ConfigurationDataXML(Formatting.ByteArrayToHexString(new byte[] { (byte)transactionTypeEnum })))
            };

            int depth = 0;

            Logger.Log("Transaction Type: " + transactionTypeEnum + " Using Kernel2 Defaults: \n" + kcdott.KernelConfigurationDataObjects.ToPrintString(ref depth));

            TLV _9f1d = kcdott.KernelConfigurationDataObjects.Get(EMVTagsEnum.TERMINAL_RISK_MANAGEMENT_DATA_9F1D_KRN.Tag);

            TERMINAL_CAPABILITIES_9F33_KRN tc = new TERMINAL_CAPABILITIES_9F33_KRN(kcdott.KernelConfigurationDataObjects.Get(EMVTagsEnum.TERMINAL_CAPABILITIES_9F33_KRN.Tag));

            if (tc.Value.EncipheredPINForOnlineVerificationCapable)
            {
                Formatting.SetBitPosition(ref _9f1d.Value[0], true, 7);
            }
            KERNEL_CONFIGURATION_DF811B_KRN2 kc = new KERNEL_CONFIGURATION_DF811B_KRN2(kcdott.KernelConfigurationDataObjects.Get(EMVTagsEnum.KERNEL_CONFIGURATION_DF811B_KRN2.Tag));

            if (kc.Value.OnDeviceCardholderVerificationSupported)
            {
                Formatting.SetBitPosition(ref _9f1d.Value[0], true, 3);
            }

            KernelConfigurationData.Add(kcdott);
        }
        public override string ToString()
        {
            bool asXML = false;

            StringBuilder sb = new StringBuilder();

            sb.AppendLine(string.Format("{0}:{1}", "DGI:" + Formatting.ByteArrayToHexString(DGI), DGIMeta.Description));
            int depth = 0;

            if (Data != null)
            {
                if (asXML)
                {
                    sb.Append(TLVListXML.XmlSerialize(Data));
                }
                else
                {
                    sb.Append(Data.ToPrintString(ref depth));
                }
            }
            else
            {
                sb.Append(string.Format("{0,-30}:{1}", "DGIBytes", Formatting.ByteArrayToHexString(DataBytes)));
            }

            return(sb.ToString());
        }
        protected override void LoadKernelDefaultConfigurationDataObjects(TransactionTypeEnum transactionTypeEnum, IConfigurationProvider configProvider)
        {
            Logger.Log("Using Global Kernel 3 Values:");
            Kernel3Configuration = XMLUtil <Kernel3Configuration> .Deserialize(configProvider.GetKernel3GlobalConfigurationDataXML());

            #region 3.3.4.2 and 3.3.4.3
            TERMINAL_TRANSACTION_QUALIFIERS_9F66_KRN ttq = new TERMINAL_TRANSACTION_QUALIFIERS_9F66_KRN(this);
            if (Kernel3Configuration.FDDAForOnlineSupported)
            {
                ttq.Value.OfflineDataAuthenticationForOnlineAuthorizationsSupported = true;
            }
            else
            {
                ttq.Value.OfflineDataAuthenticationForOnlineAuthorizationsSupported = false;
            }
            #endregion

            Logger.Log("Using Kernel 3 Defaults:");
            KernelConfigurationDataForTransactionType kcdott = new KernelConfigurationDataForTransactionType()
            {
                TransactionTypeEnum            = transactionTypeEnum,
                KernelConfigurationDataObjects = TLVListXML.XmlDeserialize(configProvider.GetKernel3ConfigurationDataXML(Formatting.ByteArrayToHexString(new byte[] { (byte)transactionTypeEnum })))
            };

            int depth = 0;
            Logger.Log("Transaction Type: " + transactionTypeEnum + " Using Kernel3 Defaults: \n" + kcdott.KernelConfigurationDataObjects.ToPrintString(ref depth));

            KernelConfigurationData.Add(kcdott);
        }
        public void LoadTerminalConfigurationDataObjects(KernelEnum kernel, IConfigurationProvider configProvider)
        {
            TerminalConfigurationDataObjects = TLVListXML.XmlDeserialize(configProvider.GetTerminalConfigurationDataXML(Formatting.ByteArrayToHexString(new byte[] { (byte)kernel })));

            int depth = 0;

            Logger.Log("Using Terminal Defaults: \n" + TerminalConfigurationDataObjects.ToPrintString(ref depth));
        }
Beispiel #5
0
        protected override void LoadKernelDefaultConfigurationDataObjects(TransactionTypeEnum transactionTypeEnum, IConfigurationProvider configProvider)
        {
            Logger.Log("Using Global Kernel 1 Values:");
            Kernel1Configuration = XMLUtil <Kernel1Configuration> .Deserialize(configProvider.GetKernel1GlobalConfigurationDataXML());

            Logger.Log("Using Kernel 1 Defaults:");
            KernelConfigurationDataForTransactionType kcdott = new KernelConfigurationDataForTransactionType()
            {
                TransactionTypeEnum            = transactionTypeEnum,
                KernelConfigurationDataObjects = TLVListXML.XmlDeserialize(configProvider.GetKernel3ConfigurationDataXML(Formatting.ByteArrayToHexString(new byte[] { (byte)transactionTypeEnum })))
            };

            int depth = 0;

            Logger.Log("Transaction Type: " + transactionTypeEnum + " Using Kernel1 Defaults: \n" + kcdott.KernelConfigurationDataObjects.ToPrintString(ref depth));

            KernelConfigurationData.Add(kcdott);
        }