Подключение к смарт-карте - PullRequest
1 голос
/ 23 марта 2011

Я пытаюсь подписать документ с помощью CryptoTech SCR3310, используя Smart Card Framework для .NET .Я использую демо из второй статьи (SmartcardFmwk).При отправке APDUCommand я получу ошибки типа:

CODE:

APDUCommand apduVerifyCHV = new APDUCommand(0x00, 0x20, 0, 1, null, 0)
APDUCommand apduSelectFile = new APDUCommand(0x00, 0xA4, 0, 0, null, 0)
APDUResponse apduResp;

CardNative iCard = new CardNative();
iCard.Connect(readers[0], SHARE.Shared, PROTOCOL.T0orT1); //connected
Console.WriteLine("Connects card on reader: " + readers[0]);

// Verify the PIN  (PIN = 12341234)
byte[] pin = new byte[] { 0x31, 0x32, 0x33, 0x34, 0x31, 0x32, 0x33, 0x34 }; 

APDUParam apduParam = new APDUParam();
apduParam.Data = pin;
apduVerifyCHV.Update(apduParam);
apduResp = iCard.Transmit(apduVerifyCHV); //ErrorNr1

// Select the MF (3F00)
apduParam.Data = new byte[] { 0x3F, 0x00 };
apduSelectFile = new APDUCommand(0x00, 0xA4, 0, 0, apduParam.Data, 0);

apduSelectFile.Update(apduParam);
apduResp = iCard.Transmit(apduSelectFile); //ErrorNr2
apduGetResponse.Update(apduParam);
apduResp = iCard.Transmit(apduGetResponse); //ErrorNr3

Что я должен сделать, чтобы получитьизбавиться от этих ошибок ??Я протестировал карту с другими программами, и ошибок нет.

Возможно, параметры APDUCommand неверны.Как вы думаете?

Ответы [ 2 ]

1 голос
/ 25 марта 2011
  • Считыватель смарт-карт в вопросах не имеет значения, это просто шлюзовое устройство для карты .Ваши ошибки не от читателя, а от карты
  • Вам действительно нужно иметь руководство для вашей карты, или вы можете попробовать команды из ISO 7816-4
  • ВызовGET RESPONSE обычно означает использование протокола T = 0, вы подключаетесь либо с T = 0, либо с T = 1, который по умолчанию равен T = 1 для современных карт, которые его поддерживают.
1 голос
/ 23 марта 2011

Если эта карта корректно работает с другими программами, ключом является установка соответствующих параметров для команды APDU.Я никогда не делал этого, но у моего друга был какой-то университетский проект, связанный со студенческими билетами.Он предоставил мне следующую ссылку со списком известных команд APDU.Не знаю, может быть, это поможет Вам найти правильную комбинацию.

Таблица APDU

...