欢迎您访问九游体育·官方网站官方网站!
阿里巴巴诚信通企业
全国咨询热线:40000-63966
兴邦电子,中国水控机第一品牌

联系兴邦电子

全国咨询热线:40000-63966

售后:0371-55132951/55132952

工厂:河南省 郑州市 高新区莲花街电子电器产业园

射频卡读写器装载密码函数的正确使用

文章出处:http://www.nexussmartsolutions.com 作者:中国一卡通网 收编   人气: 发表时间:2011年10月17日

[文章内容简介]:本文以最常用的MIFARE ONE卡来说明。该卡有16个扇区,每个扇区都有独立的密码,包括A密码和B密码。如果需要对某一扇区操作就必须对该扇区进行密码校验。密码校验的方式分两种。下面将分别说明。

    本文以最常用的MIFARE ONE卡来说明。该卡有16个扇区,每个扇区都有独立的密码,包括A密码和B密码。如果需要对某一扇区操作就必须对该扇区进行密码校验。密码校验的方式分两种。下面将分别说明。

    一种是常规的被大多数读卡器厂商所采用的方式。首先将要校验的扇区密码装载到读写器的保密存储区中,每个扇区对应不同的保密存储区。这样在校验卡的时候,读写器会根据扇区号来和读写器中对应的保密存储区中的密码进行校验,如果密码相同就通过校验,可以 进行以后的读写工作。这种方式的特点是密码装载到读写器的保密存储区后将一直保留,断电后也不会丢失。用户如果不需要改变密码的话,就不用调用dc_load_key函数再次下载密码。有些程序代码在寻卡的循环中包含dc_load_key函数,这样是不必要的。读写器保密存储区是系统模块中的EEPROM,在PHILIPS的资料中说明该区域可擦写的次数最少在10万次以上,但该区域还是有次数限制的,如果长期的执行装载密码操作将减少读写器保密存储区的使用寿命。

    第二种是当需要经常对不同密码的卡进行核对而使用的方式。该方式不用提前将密码装载到读写器的保密存储区中。只需要在校验卡的时候同时将密码传递给读写器就可以进行校验。对应的函数声明如下:

    int dc_authentication_pass(int icdev,unsigned char _Mode,unsigned char Addr,unsigned char *passbuff)
    功 能:核对密码函数,用此函数时,可以不用执行dc_load_key()函数
    参 数:icdev: dc_init返回的设备描述符
    _Mode:密码验证模式0—KEYA 4—KEYB
    Addr:要验证密码的扇区号
    passbuff:6字节密码字符串
    返 回:成功返回0

    这种方式大多是在卡片采用一卡一密的时候使用,可以避免频繁的对读写器的保密存储区操作。该函数在RD800M/RD900M 7.1版本中被支持。

    除了上述的两种方式以外还有根据读写器的SAM安全模块产生密钥进行卡片校验的方式。可以根据客户不同的SAM安全模块和特殊要求来定制使用方式,以用于安全保密性要求很高的系统中。

本文关键词:射频卡,读写器,密码函数
回到顶部