简体   繁体   English

ISO 8583 Rev.93 - 连接到通道

[英]ISO 8583 Rev.93 - Connecting to channel

I'm fairly new to the whole ISO8583 concept and have been assigned to connect to a Bank's channel. 我对整个ISO8583概念都很陌生,并被指派连接到银行频道。

I have used John Oxley's Excellent OpenIso8583.Net to make a Iso8583-standard message and send it via tcp. 我使用了John Oxley的优秀OpenIso8583.Net来制作Iso8583标准消息并通过tcp发送。

They provided me some basic information which i cannot manage to understand clearly. 他们为我提供了一些我无法清楚理解的基本信息。
Unfortunately, I do not have any resources available for more information and was hoping to get some guides from the community. 不幸的是,我没有任何资源可用于获取更多信息,并希望从社区获得一些指南。

The bank has given me a test Card Number (PAN)(16 digits), a PIN Code(4 digits), an Outlet number, and a MAC Key. 银行给了我一张测试卡号(PAN)(16位),一个PIN码(4位数),一个插座号和一个MAC键。

Here's what I have so far: 这是我到目前为止所拥有的:

  • in msg[Iso8583Rev93.Bit._002_PAN] goes the PAN. 在msg [Iso8583Rev93.Bit._002_PAN]进入PAN。
  • in msg[Iso8583Rev93.Bit._052_PIN_DATA]: They have provided me an algorithm to generate a 16 byte PIN block based on PAN and PIN Code. msg [Iso8583Rev93.Bit._052_PIN_DATA]:他们为我提供了一种基于PAN和PIN码生成16字节PIN码的算法。 I have managed to generate a correct PIN block based on that algorithm. 我已设法根据该算法生成正确的PIN块。

The things I don't have any idea about: 我不知道的事情:

  • They stated that PIN BLOCK is encrypted using DES algorithm. 他们表示使用DES算法加密PIN BLOCK。 Where should I put the encrypted PIN block? 我应该在哪里放置加密的PIN块? it's more that 16 bytes and cannot be in msg[Iso8583Rev93.Bit._052_PIN_DATA] right? 它更多的是16个字节,不能在msg [Iso8583Rev93.Bit._052_PIN_DATA]中吗?

  • How should I make use of the MAC key they have provided for me? 我该如何使用他们为我提供的MAC密钥? They stated that MAC is generated using DES-CBC algorithm. 他们表示使用DES-CBC算法生成MAC。 the MAC key they have provided is 16 bytes long(16 digits). 他们提供的MAC密钥长度为16字节(16位)。 What should I put in msg[Iso8583Rev93.Bit._128_MAC] field? 我应该在msg [Iso8583Rev93.Bit._128_MAC]字段中输入什么? Should I encrypt the whole message with this MAC key? 我应该使用此MAC密钥加密整个邮件吗? I seem to be lost in understanding what the MAC key is used for. 我似乎迷失了解MAC键的用途。

  • What's the use of the outlet number?Is it something like a port number (a software slot if you call it) to allow users to connect to channel? 插座号码的用途是什么?它是否类似于端口号(如果你打电话给它的软件插槽),允许用户连接到频道?

Thank you. 谢谢。

kindly find answers to your queries: 请找到你的问题的答案:

The things I don't have any idea about: 我不知道的事情:

  1. They stated that PIN BLOCK is encrypted using DES algorithm. 他们表示使用DES算法加密PIN BLOCK。 Where should I put the encrypted PIN block? 我应该在哪里放置加密的PIN块? it's more that 16 bytes and cannot be in msg[Iso8583Rev93.Bit._052_PIN_DATA] right? 它更多的是16个字节,不能在msg [Iso8583Rev93.Bit._052_PIN_DATA]中吗?
    Encrypted PIN Block should go to the bit 052, you should not pass a clear PIN Block, if the result of your encrypted PIN Data is more than 16 digits, then there is something wrong in your algorithm; 加密的PIN块应该转到052位,如果加密的PIN数据的结果超过16位,则不应传递清除的PIN块,否则算法会出错; DES & 3DES should have a cyclic behavior and the outcome should be restricted to 16 digits. DES和3DES应具有循环行为,结果应限制为16位。

  2. How should I make use of the MAC key they have provided for me? 我该如何使用他们为我提供的MAC密钥? They stated that MAC is generated using DES-CBC algorithm. 他们表示使用DES-CBC算法生成MAC。 the MAC key they have provided is 16 bytes long(16 digits). 他们提供的MAC密钥长度为16字节(16位)。 What should I put in msg[Iso8583Rev93.Bit._128_MAC] field? 我应该在msg [Iso8583Rev93.Bit._128_MAC]字段中输入什么? Should I encrypt the whole message with this MAC key? 我应该使用此MAC密钥加密整个邮件吗? I seem to be lost in understanding what the MAC key is used for. 我似乎迷失了解MAC键的用途。
    you should have in the specification provided by the bank a list of selected fields to be MACed, usually it is: 你应该在银行提供的规范中有一个选定的MAC字段列表,通常是:

    • PAN (DE2) PAN(DE2)
    • Amount (DE4) 金额(DE4)
    • Track Data (DE35 or DE45) 跟踪数据(DE35或DE45)
    • PIN Data (DE52) 密码数据(DE52)
    • from & to accounts (DE102 & DE 103) 来自和到帐户(DE102和DE 103)

  3. What's the use of the outlet number?Is it something like a port number (a software slot if you call it) to allow users to connect to channel? 插座号码的用途是什么?它是否类似于端口号(如果你打电话给它的软件插槽),允许用户连接到频道?
    Usually outlet number is some data related to the acquiring bank, it would be related to the field 42 通常出口号是与收单银行相关的一些数据,它与字段42有关

I would emphasize on one point, that ISO8583 is not a strict framework, where both parties who decided to use as means of integration should decide on the specifics of data passed in each field 我要强调的一点是,ISO8583不是一个严格的框架,决定使用作为集成手段的双方应该决定每个领域传递的数据的具体情况。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM