首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

IC卡通不过密码验证,该如何处理

2012-04-26 
IC卡通不过密码验证大致的步骤是A、选定要操作的扇区(共有16个扇区);B、装载密码,调用rf_load_key()C、验证密

IC卡通不过密码验证
大致的步骤是
A、选定要操作的扇区(共有16个扇区);
B、装载密码,调用rf_load_key()
C、验证密码,调用rf_authentication()
D、进行操作,包括读写及值操作。
E、调用rf_halt()

我现在能加载密码,但是总是通不过验证。现在我写死的密码是_Key = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff },不知道是不是这些写,还是从哪里读出密码再加载。但是不通过验证就不能读卡里的数据。。。请做过这方面程序的朋友帮帮忙。。我用的是明华KRF35读卡器,M1射频卡。



C# code
                        byte[] _Key = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };                        byte sector = 0;                        string strErrMsg = string.Empty;                        for (int i = 0; i < 16; i++)                        {                            if (rf_load_key(icDev, byteCardFindMode, sector, _Key) != 0)                            {                                strErrMsg += sector.ToString() + "扇区装载密码失败\r\n";                            }                            else                            {                                if (rf_authentication(icDev, byteCardPwdMode, sector) == 0)//进行验证                                {                                                                       if (rf_read(icDev, (byte)(sector * 4 + 1), ref _Data) == 0)                                    {                                         DisplayInfo(rtbICCard, System.Text.Encoding.Default.GetString(_Data));//将读出的信息显示到RichTextBox中                                    }                                }                                else                                {                                    strErrMsg += sector.ToString() + "扇区密码验证失败\r\n";                                }                            }                            sector++;                        }                        //如果有错误信息则提示                        if (strErrMsg != "")                        {                            MessageBox.Show(strErrMsg,"错误",MessageBoxButtons.OK,MessageBoxIcon.Error);                            bolIsICCardFound = false;                            rf_halt(icDev);                        } 


[解决办法]
我不要分,我想看看你的程序。哈哈

热点排行