第一步就是用PN532读取手头加密的门禁卡并保存出加密卡的dump文件。我这里用蛐蛐,你们也可以用MifareOneTool或者其它类似软件,也可以问卖家索取,但多数售后技术客服只会给你资料,做不到给你解答具体细节问题,还是只能靠自己。这边读取后可引导SAK为08,是最常见的M1/S50卡,且非全加密卡,仅发现01扇区有加密,那后面就更方便了。蛐蛐待左上角旋转条不动即为读卡成功,一般耗时几十秒,然后会自动更新保存到软件根目录下的key.dump。如果你使用MifareOneTool的话,打开是依次点击检测连接>扫描卡片>检测加密>一键解原卡,1.6.5及之前版本点了一键解原卡,会跳出对话框,让你手动保存一下这个读取的原始加密的dump文件。1.6.7左右开始的版本是和蛐蛐类似,自动保存软件根目录的auto_keys文件夹内,根据提示找到xxxx.mfd文件,其实mfd文件就是dump编码的,只是它后缀不同。然后为了方便区分,复制一份到桌面并改名为“加密卡.dump”。
第二步是把加密卡.dump文件转为txt格式。这边用M1卡格式转换工具,选择导出TXT,把“加密卡.dump”拖拽进软件来,就会自动在同目录下生成“加密卡.txt”。也可以用M1卡分析助手等软件来转换格式(它支持免改后缀,直接拖拽MifareOneTool的mfd文件来转为txt)
第三步是把事先准备好的“空白卡.dump”也转为“空白卡.txt”。如果你没有这个空白卡的dump文件也没事,看到我上面的图了么,除了0扇区的0区块有ID号和厂家信息内容外,其它扇区都是一样的00与FF之类的文字,自己也可以做一个,0扇区的0区块也可以随便替换等长字符,因为后面也要替换掉这行。
第四步把左边加密卡的0扇区里的0区块的这行信息全部复制替换到空白卡的0扇区0区块,让右边头行区块和左边头行内容一样。这里简单说明下这个操作原因,因为M1/S50卡的唯一ID信息就是在0扇区0区块,前面八位为最重要的(比如左上的C9 4D 21 11)是ID号,主要靠它认证,这行后面的是厂商号。还有另一个方法不用空白卡,但思路一样,只不过需要把加密卡.txt里所有涉及加密的扇区里的3区块都要替换填充FF先,每个加密卡的加密扇区位置不同,甚至会有多个扇区加密,还是我这个方式比较直观通用。不用看加密扇区在哪,只管改0扇区0区块先。