2011-08-02 40 views
5

我對整個ISO8583概念相當陌生,並且已被分配連接到銀行的頻道。ISO 8583 Rev.93 - 連接到頻道

我已經使用約翰·奧克斯利的優秀OpenIso8583.Net製作Iso8583標準的消息並通過tcp發送。

他們爲我提供了一些我無法理解的基本信息。
不幸的是,我沒有任何資源可以獲取更多信息,並希望得到社區的一些指導。

銀行給了我一個測試卡號碼(PAN)(16位數字),一個PIN碼(4位數字),一個插座號碼和一個MAC密鑰。

這是我到目前爲止有:

  • 味精[Iso8583Rev93.Bit._002_PAN]而來的PAN。
  • in msg [Iso8583Rev93.Bit._052_PIN_DATA]:他們爲我提供了一種基於PAN和PIN碼生成16字節PIN碼的算法。我已經設法根據該算法生成正確的PIN碼塊。

這個事情我沒有任何想法有關:

  • 他們說,PIN塊使用DES算法加密。我應該在哪裏放置加密的PIN碼?它多於16個字節,不能在msg [Iso8583Rev93.Bit._052_PIN_DATA]對不對?

  • 我該如何利用他們爲我提供的MAC密鑰?他們表示,MAC是使用DES-CBC算法生成的。他們提供的MAC密鑰長16個字節(16位)。我應該在msg [Iso8583Rev93.Bit._128_MAC]字段中輸入什麼內容?我應該用這個MAC密鑰加密整個消息嗎?我似乎迷失在瞭解MAC密鑰的用途。

  • 插座號碼的用途是什麼?它是什麼樣的端口號(如果你稱之爲軟件插槽)允許用戶連接到通道?

謝謝。

回答

3

親切找到問題的疑問:

這個事情我沒有任何想法:

  1. 他們說,PIN塊使用DES算法加密。我應該在哪裏放置加密的PIN碼?它多於16個字節,不能在msg [Iso8583Rev93.Bit._052_PIN_DATA]對不對?
    如果加密的PIN數據的結果超過16位,則加密的PIN塊應該轉到位052,您不應該傳遞一個明確的PIN塊,那麼算法出現問題; DES & 3DES應具有循環行爲,結果應限制爲16位數。

  2. 我該如何利用他們爲我提供的MAC密鑰?他們表示,MAC是使用DES-CBC算法生成的。他們提供的MAC密鑰長16個字節(16位)。我應該在msg [Iso8583Rev93.Bit._128_MAC]字段中輸入什麼內容?我應該用這個MAC密鑰加密整個消息嗎?我似乎迷失在瞭解MAC密鑰的用途。
    你應該在由銀行選定字段列表所提供的規格是MAC,它通常是:

    • PAN(DE2)
    • 金額(DE4)
    • 的跟蹤數據(DE35或DE45)
    • PIN數據(DE52)
    • 從&到賬戶(DE102 & DE 103)

  3. 插座號碼的用途是什麼?它是什麼樣的端口號(如果你稱之爲軟件插槽)允許用戶連接到通道?
    通常出口數量與收單銀行的一些數據,這將是42

我想強調的一點相關的領域,即ISO8583是不是一個嚴格的框架下,雙方當事人誰決定使用作爲整合手段應該決定在每個領域傳遞的數據的具體細節