Я новичок во всей концепции ISO8583, и мне было поручено подключиться к каналу банка.
Я использовал превосходный OpenIso8583.Net Джона Оксли, чтобы создать стандартное сообщение Iso8583 и отправить его через tcp.
Они предоставили мне некоторую базовую информацию, которую я не могу четко понять.
К сожалению, у меня нет доступных ресурсов для получения дополнительной информации, и я надеялся получить некоторые руководства от сообщества.
Банк предоставил мне номер тестовой карты (PAN) (16 цифр), PIN-код (4 цифры), номер торговой точки и MAC-ключ.
Вот что у меня есть на данный момент:
- в сообщении [Iso8583Rev93.Bit._002_PAN] идет PAN.
- в сообщении [Iso8583Rev93.Bit._052_PIN_DATA]: Они предоставили мне алгоритм для генерации 16-байтового блока PIN на основе PAN и PIN-кода. Мне удалось сгенерировать правильный блок PIN на основе этого алгоритма.
То, о чем я понятия не имею:
Они заявили, что PIN BLOCK зашифрован с использованием алгоритма DES. Куда мне поместить зашифрованный блок ПИН-кода? это больше 16 байт и не может быть в сообщении [Iso8583Rev93.Bit._052_PIN_DATA], верно?
Как мне использовать предоставленный мне MAC-ключ? Они заявили, что MAC генерируется с использованием алгоритма DES-CBC. предоставленный ими MAC-ключ имеет длину 16 байт (16 цифр). Что мне следует указать в поле msg [Iso8583Rev93.Bit._128_MAC]? Должен ли я зашифровать все сообщение этим MAC-ключом? Кажется, я не понимаю, для чего используется MAC-ключ.
Какая польза от номера розетки? Это что-то вроде номера порта (программный слот, если вы его называете), чтобы пользователи могли подключаться к каналу?
Спасибо.