索阅 100例 首 页| 资 讯| 下 载| 论 坛| 博 客| Webinar| 高 校| 专 刊| 会展| EETV| 百科| 问答| 电路图| 工程师手册| Datasheet

EEPW首页 > 百科 > 接触式4442卡

接触式4442卡


贡献者:不爱吃窝瓜    浏览:1241次    创建时间:2015-07-09

  接触式4442卡
  4442 IC卡简介:
  4442卡为256字节加密卡,存在读数据、写数据、保护数据以及密码操作。
  电气性能
  256×8位EEPROM
  字节直接寻址
  低地址32字节数据设不可恢复的写保护位
  32位保护位
  写数据操作结束标志
  符合7816-3标准的复位响应
  字节擦除然后写入时间:标准值25ms
  最少10000次的写擦除周期
  数据保存期:10年
  保密特性
  三字节的用户密码。
  密码核对正确前,全部数据只可读,不可改写。
  核对密码正确后可以更改数据,包括密码再内。
  错误计数器,初始值为3,密码核对出错1次,便减1,若计数器值为0,则卡自动锁死,数据只可读出,不可再进行更改也无法再进行密码核对;若不为零时,有一次密码核对正确,可恢复到初始值3。
  写保护区(前32个字节)的每一字节可单独进行写保护,进行写保护后,内容不可再更改(即固化数据)。
  程序员注意事项:
  1.除去写保护区的32字节,程序员可操作的只有224字节,写保护区只有一次写如机会,一般不使用。
  2.注意每次改写密码后,只有将卡下电后密码才会生效。
  3.密码为3字节也就是24个位,一般出使密码为'255255255',转换成16进制为六个F即'FFFFFF'
  市场上常用的芯片为西门子的SLE4442,也有使用国产复旦的FM4442和ATMEL的AM4442
  常应用与酒店门锁及储值卡系统应用
  明华兼容系列读卡器操作4442卡的函数
  写操作函数: swr_4442()
  读操作函数: srd_4442()
  测卡型函数: chk_4442()
  效验密码函数: csc_4442()
  读取密码函数: rsc_4442()
  更改密码函数: wsc_4442()
  读密码错误计数: rsct_4442()
  写保护位函数: pwr_4442()
  读保护位函数: prd_4442()
  写操作函数: swr_4442()
  int swr_4442(int icdev, int offset, int len, unsigned char *w_string)
  说明: 向指定地址写数据
  调用: icdev: 通讯设备标识符
  offset: 偏移地址,其值范围0~255
  len: 字符串长度,其值范围1~256
  w_string: 写入数据
  返回: <0 错误
  =0 正确
  读操作函数: srd_4442()
  int srd_4442(int icdev, int offset, int len, unsigned char* r_string )
  说明: 从指定地址读数据
  调用: icdev: 通讯设备标识符
  offset: 偏移地址,其值范围0~255
  len: 字符串长度,其值范围1~256
  r_string: 读出数据所存放地址指针
  返回: <>0 错误
  =0
  测卡型函数: chk_4442()
  int chk_4442(int icdev)
  说明: 检查卡型是否正确
  调用: icdev: 通讯设备标识符
  返回: <0 错误
  =0 正确
  效验密码函数: csc_4442()
  int csc_4442(int icdev, int len, unsigned char* p_string)
  说明: 核对卡密码
  调用: icdev: 通讯设备标识符
  len: 密码个数,其值为3
  p_string: 密码字符串指针
  返回: <0 错误
  =0 密码正确
  读取密码函数: rsc_4442()
  int rsc_4442(int icdev, int len, unsigned char* p_string)
  说明: 读出卡密码
  调用: icdev: 通讯设备标识符
  len: 密码个数,其值为3
  p_string: 存放密码地址指针
  返回: <>0 错误
  =0 正确
  更改密码函数: wsc_4442()
  int wsc_4442(int icdev, int len,unsigned char* p_string)
  说明: 改写卡密码
  调用: icdev: 通讯设备标识符
  len: 密码个数,其值为3
  p_string: 新密码地址指针
  返回: <0 错误
  =0 正确
  读密码错误计数: rsct_4442()
  int rsct_4442(int icdev, int* counter)
  说明: 读出密码错误计数器值
  调用: icdev: 通讯设备标识符
  counter: 密码错误记数值存放指针
  返回: <0 错误
  >=0 正确
  写保护位函数: pwr_4442()
  int pwr_4442(int icdev, int offset, int len, unsigned char* w_string)
  说明: 保护指定地址的数据
  调用: icdev: 通讯设备标识符
  offset: 偏移地址,其值范围0~31
  len: 字符串长度,其值范围1~32
  w_string: 保护数据,必须和卡中已存在的数据一致
  返回: <0 错误
  =0 正确
  读保护位函数: prd_4442()
  int prd_4442(int icdev,int len,unsigned char *r_string)
  说明: 读保护位
  调用: icdev: 通讯设备标识符
  len: 保护长度,其值为4
  r_string: 存放保护标志的地址指针;
  保护位为0表示已置保护,为1表示未置保护
  返回: <0 错误
  =0 正确


如果您认为本词条还有待完善,需要补充新内容或修改错误内容,请编辑词条     查看历史版本

开放分类
接触式4442卡    计数器    读卡器    

参考资料
百度百科

贡献者


本词条在以下词条中被提及:

关于本词条的评论共:(0条)
匿名不能发帖!请先 [ 登陆 ]