示例#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);
        }
示例#2
0
        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);
        }
示例#3
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);
        }