ВУЗ:
Составители:
вующего уровня карты. Так, для функции ASEHLChangePIN() –– это главный
(корневой) уровень карты, для функции ASEHLChangeKey() –– это тот уровень,
на котором находится ключ, который требуется изменить. Пример смены Глав-
ного ключа и PIN-кода карты приведен ниже.
// Изменение главного ключа карты.
printf( "\nИзменим главный ключ карты.\n" );
AseResult = ASEHLChangeKey( hAseCard, byCardOldMainKey,
byCardOldMainKey, byCardMainKey, SC_MAIN_KEY, 0 );
if(AseResult != 0)
{
ASEReaderClose(hAseReader);
exit(1);
}
printf( "Для продолжения нажмите любую
клавишу.\n" );
getch();
В качестве первого параметра выступает указатель на карту, получен-
ный после вызова функции ASECardPowerOn(), в качестве второго — текущее
значение Главного ключа карты, который мы, собственно, и хотим изменить,
поэтому это значение совпадает с третьим параметром функции — текущим
значением ключа, который мы хотим изменить. Четвертым параметром следует
указать новое значение Главного
ключа карты, пятым — символьное имя клю-
ча, который мы хотим изменить, шестым — номер ключа доступа
(SC_ACCESS_KEY), если мы хотим изменить конкртентый ключ из набора
ключей доступа приложения или главного уровня карты. Правила вызова этой
функции более подробно описаны в п. 1.2.4.
// Изменение старого значения PIN на новое.
printf( "\nСмена PIN.\n" );
AseResult = ASEHLChangePIN( hAseCard, byCardMainKey,
byOldPIN, byPIN );
if (AseResult != 0)
{
ASEReaderClose(hAseReader);
exit(1);
}
printf( "Для
продолжения нажмите любую клавишу.\n" );
getch();
В этой функции все параметры аналогичны параметрам функции
ASEHLChangeKey(). Сначала требуется указать хэндл карты, затем Главный
ключ ИК, и, наконец, текущее и новое значение PIN-кода.
13
Страницы
- « первая
- ‹ предыдущая
- …
- 11
- 12
- 13
- 14
- 15
- …
- следующая ›
- последняя »