APDU命令读取二进制命令与文件结构不兼容

时间:2016-07-12 09:12:42

标签: c# smartcard smartcard-reader

我试图从智能卡中读取带有读取二进制apdu命令的二进制文件。我在我编写的c#程序中这样做。 首先,我发送loadKey-和authenticate-command。展位返回90-00,所以他们应该工作正常。但是当我尝试发送读取二进制命令时,它返回69-81,表示“命令不可用文件结构”。 奇怪的是,如果我使用Omnikey 6321 USB阅读器使用相同的命令,一切都可以正常工作,但使用TWN4 Legic USB Reader时,会出现上述问题。

有人可以帮我解决这个问题吗? :)

以下是我发送到智能卡的APDU命令的代码:

cmdReadBinary = new CmdApdu();
        cmdReadBinary.CLA = 0xFF;
        cmdReadBinary.INS = 0xB0;
        cmdReadBinary.P1 = 0x00;
        cmdReadBinary.P2 = 0x00;
        cmdReadBinary.Le = 0x10;

scard.Transmit(commands.CmdReadBinary.GetBytes(), commands.CmdReadBinary.GetBytes().Length, respApdu, ref respLength);

1 个答案:

答案 0 :(得分:1)

我解决了这个问题。 我使用了错误的身份验证命令。 将身份验证的INS更改为0x86后,一切正常