首页 > 代码库 > ID卡学习笔记

ID卡学习笔记

前言:

        我也来篇关于当时学习ID卡的笔记.前段时间小区装门禁.一个钮扣型的ID卡就要30块.非常黑心.因为其ID卡的成本也就是1块钱以下.因此我也加入到这方面的研究.用来模拟ID卡的T5557卡成本2块钱左右.可反复写.文章想到什么就写什么.大牛可以忽视.

        两天前入手了一套ID读卡器.不知型号.没有参数.没有出厂.就一小光盘.里面是CP210x驱动与读写软件.

CP210x驱动可以把USB模拟成COM串口.以下是我的设备图:

 

 

虽然提供了win7驱动.但软件不能在win7下运行.所以只能在vbox里装个xp用.这多多少少很不爽.于是想自己开发一工具.所以有了以下过程.

       因为参数等都没有.因此只能跟踪调试.百度下.下了个串口监听软件.名字叫:SerPortMon该工具还不错但要注册才能用.只能破之.破解方法太容易了.明文比较。没有什么难道:

 

 

软件界面如下:

 

根据该工具得到的数据分析大概如下:

    串口:COM3
      波特率:38400 (有些读卡器是:9600等等)
      校验位:None
      数据位:8
      停止位:1
      发送:    02 00 06 11 16 03  读取ID读卡器版本
      返回:    02 00 10 00 53 37 36 35 30 20 56 2E 30 32 03 03 ....S7650 V.02.. 这个不需要解释了吧
      发送:    02 00 06  05 02 03  读取ID卡信息
      返回:    02 00 0B 00 72 34 50 00 06 1B 03
      解释:    卡号: 0x72 0x34 0x50 0x00 = 0005256306    用户ID:0x06
      发送:     02 00 0B 08 06 00 50 34 72 12 03 写入卡
      解释:     用户ID:06 卡号: 0x00 0x50 0x34 0x72 = 0005256306
      0x12为验证码 算法:用户ID xor 2 xor 卡号 例如:0x06 xor 2 xor 00 xor 0x50 xor 0x34 xor 0x72
      DelPhi7代码: 利用SPComm控件
      Comm1.CommName :=COM3//串口名
       Comm1.BaudRate := 38400;//波特率
       Comm1.Parity := None;//校验位
       Comm1.ByteSize := _8;//数据位
       Comm1.StopBits := _1; //停止位
       Comm1.StartComm; //打开串口
       利用 WriteCommData发送即可