试试 哈
BYTE GetPINInfo(void)
{
BYTE xdata k[0x20]; //20101011
WORD data key_id;
BYTE data sw;
if (0 == G_APDU_Ln)
{
if (G_APDU_P1)
return SW6A86;
key_id = PIN_TYPE_ID | G_APDU_P2;
sw = Get_Key(k, key_id, 0x10);
if (sw != SW9000)
return sw;
key_id = DFLT_PIN_TYPE_ID | G_APDU_P2;
sw = Get_Key(G_APDU_Data, key_id, 0x10);
if (sw != SW9000)
return sw;
if (UHL_MemCmp(k + KEY_VALUE_OFFSET, G_APDU_Data + KEY_VALUE_OFFSET, k[0] - 6))//PIN Changed
k[6] |= 0x80;
UHL_MemSet(G_APDU_Data, 0x10, 0);
G_APDU_Data[0] = k[5]; |