PN532模块复制IC加密卡

article/2025/11/7 11:09:17

PN532模块复制IC加密卡

忍受够了每天都需要带着各种各样的卡片,如果可以将卡复制进手机里,那我就可以只带着手机,每天出门都是轻装上阵。

只要你的手机拥有nfc功能,那你可以直接将卡模拟进手机里,当然这样并没有完全复制整张卡片,复制的只是卡片的未加密数据区域。

文章仅用于学习之用,请将技术用于正途!!

储备知识

  • PN532模块

PN532是一个高度集成的非接触读写芯片,它包含80C51微控制器内核(这个8051用户是不能对它编程的,它是用来内置NFC的底层通信协议栈),集成了13.56MHz下的各种主动/被动式非接触通信方法和协议。

image-20220426195107740

  • 各种卡

生活中用的门禁卡、电梯卡、停车卡,都是靠卡内封闭的芯片和线圈来实现的功能

普通IC卡:0扇区不可以修改,其他扇区可反复擦写

UID卡:普通复制卡,可以重复擦写所有扇区,主要应用在IC卡复制上,遇到带有防火墙的读卡器就会失效。

CUID卡:可擦写防屏蔽卡,可以重复擦写所有扇区,UID卡复制无效的情况下使用,可以绕过防火墙。

FUID卡:不可擦写防屏蔽卡,此卡的特点0扇区只能写入一次,写入一次变成 M1 卡,可以绕过防火墙。

这里推荐使用CUID卡,卡的种类多种多样,有贴纸、卡扣、卡片等款式

image-20220426210210978

我们需要以下物品,价格便宜,在淘宝可以轻易买到一整套,学习成本低:
  • PN532模块(即读卡器)
  • CH340长线或者CH340模块(即ttl转usb的线,可以连接在电脑上)
  • UID卡或者CUID卡(推荐买CUID卡)

除此之外,还需要一台装有MifareOneTool软件的电脑

模拟卡片

我们将CH340长线一端接到PN532,另一端接到电脑上,可以看到PN532模块被点亮

image-20220426200347931

此时在电脑上打开软件MifareOneTool,点击检测连接,可以看到设备信息,说明接线无误

image-20220426202105128

在PN532上放你需要模拟的卡,然后继续点击扫描卡片,可以看见你的卡片信息,此处UID为e44a3bf1,这是这张卡的UID,如果读出来的是SAK 08,那么这张卡基本可以被模拟

image-20220426203104163

继续点击一键解原卡,这个过程在破解卡的秘钥,需要一些时间,结束后会跳出保存文件,我们将其命名为card。要记住保存的位置

image-20220426203449654

我们进入高级模式 -> hex编辑器,打开刚刚保存的文件会发现前八位就是刚刚卡片的UID,我们复制这八位数值

image-20220426204316215

点击文件 -> 新建 ,右边会提示新建卡,继续点击工具 -> 修改UID,在弹窗中输入复制的UID,最后点击文件 -> 另存为,命名为card,注意之前文件类型是dump,此时文件类型是mdf,到现在为止保存了两个文件,命名皆为card。

image-20220426204651396

现在拿下之前的卡,放上买来的CUID卡,同样扫描卡片,发现UID为12345678

image-20220426203818911

然后我们进入软件的高级操作模式

  • 如果你的买的是uid卡,那么点击UID写号,输入前面复制的卡号。
  • 如果是CUID卡,点击CUID写,选择前面保存的card.mfd文件,跳出的弹窗选否

image-20220426205448263

完成后,点击扫描卡片,会发现UID已经变成刚刚我们想要复制的卡片的UID了

image-20220426205801215

tip:如果你最后想复制到手机的NFC里,那么此时你需要用手机nfc模拟刚刚改好UID的卡,后面的操作就换成将文件写入手机

image-20220426211532135

接下点击高级操作模式 -> CUID写,如果是uid卡就点高级操作模式 -> UID写,选择最初的文件card.dump,进行写入,等待结束。

最后你可以测试一下是否写入成功了。

心得

实际上很多需要动手的东西并不可怕,多多尝试就会成功。平时学习就喜欢折腾,折腾中有大乐趣,生活枯燥,需要快乐作伴

文章仅用于学习之用,请将技术用于正途!!

http://chatgpt.dhexx.cn/article/QNeIPePA.shtml

相关文章

IC卡、ID卡及车库蓝牙卡的复制说明!(小区的门禁系统)

随着科技的发展,各种新的技术也不断的出现,如现在很多的小区物业管理和其它一些关于关卡出入的管理方面都采取了门禁卡的形式,若是门禁卡丢失了,那么可能会被物业管理公司几倍的罚款,为了避免这种情况的出现&#xff0…

PyCharm 关闭 Test 功能

PyCharm自带的功能,检测Python文件中,以“test”开头的函数名,作为测试用例,导致在调试时,优先启动“test”函数,对于我们正常想调试的内容进行干扰。 如果不想使用这个功能,需要关闭&#xff…

scalaTest的使用

配置 修改pom.xml&#xff0c;添加以下内容 <!--依赖--> <dependency><groupId>org.scalatest</groupId><artifactId>scalatest_2.11</artifactId><version>3.0.0</version><scope>test</scope> </dependenc…

GoLang之go test测试

文章目录 GoLang之go test测试1.介绍2.函数3.测试函数格式3.1格式3.2失败示例3.3成功示例13.4成功示例23.5成功示例33.6成功实例4 4.基准函数4.1成功实例14.2成功实例24.3性能比较函数 GoLang之go test测试 1.介绍 Go语言中的测试依赖go test命令。编写测试代码和编写普通的Go…

Linux下使用Speedtest测试网速

Speedtest是用来测试网络性能的开源软件&#xff0c;在Linux下面安装Speedtest可以用来测试网络出口的上传和下载速度&#xff0c;帮助排查网络方面导致的故障。 Speedtest介绍 由于公司几个项目用户访问的时候响应较慢&#xff0c;项目本身没问题&#xff0c;服务及调用的接口…

@SpringBootTest注解进行单元测试

1、首先我们通过idea创建一个Springboot项目&#xff0c;项目目录生成后&#xff0c;默认都会带main和test目录&#xff0c;如下&#xff1a; 2、我们在test目录下创建测试类&#xff0c;正常情况下创建项目的时候会自带生成对应的测试类&#xff0c;如下&#xff1a; 此时你发…

C++Test使用入门

CTest使用入门 Parasoft Ctest 是一款自动化测试工具&#xff0c;是经广泛证明的最佳实践集成解决方案&#xff0c;它能有效提高开发团队工作效率和软件质量。 创建项目导入cpp文件生成测试用例添加桩函数运行测试用例 1.创建项目 填写项目名&#xff0c;Project type选择Em…

docker安装speedtest

平常测试网速的时候常用speedtest进行测试&#xff08;测速网 - 专业网速测试, 游戏测速, 直播测速, 5G测速, 物联网监测-SpeedTest.cn&#xff09;&#xff0c;但是网站通常测试的是带宽的速度。内网速度的测试&#xff0c;一般通过传输大文件&#xff0c;查看稳定速率来计算速…

simulinktest

Smulink Test Notebook 序Subsystem Test使用Testharness对模型进行测试------------------------分割线-------------------------------------------- 序 Simulink Test 为模型的仿真&#xff0c;测试&#xff0c;验证和代码生成提供工具&#xff1b; 它包括Test Sequence&a…

Testbench编写指南(1)基本组成与示例

对于小型设计来说&#xff0c;最好的测试方式便是使用TestBench和HDL仿真器来验证其正确性。一般TestBench需要包含这些部分&#xff1a;实例化待测试设计、使用测试向量激励设计、将结果输出到终端或波形窗口便于可视化观察、比较实际结果和预期结果。下面是一个标准的HDL验证…

Device Self-test

DST Device Self-test命令Command CompletionDevice Self-test Operations (Optional)Short Device Self-Test OperationExtended Device Self-Test Operation Device Self-test命令 Device Self-test命令用于开始一个device self-test操作&#xff0c;或者中止一个device self…

Test ignored.

项目场景&#xff1a; springboot 问题描述&#xff1a; 创建单元测试执行后控制台输出&#xff1a; Test ignored. 解决方案&#xff1a; 测试文件路径与项目文件路径不一致造成的。

Shell test命令

概述 Shell中的 test 命令用于检查某个条件是否成立&#xff0c;它可以进行数值、字符和文件三个方面的测试。 或者使用 [ ] 来判断 数值测试 #!/bin/bash num1100 num2100 if test $[num1] -eq $[num2] thenecho 两个数相等&#xff01; elseecho 两个数不相等&#xff01; …

Google Test简述

Google Test简述 Google Test 是由 Google 推出的 C 测试框架&#xff0c;具有稳定、跨平台、快速等特点&#xff0c;能够为 C 开发人员提供有效的单元测试和集成测试工具。Google Test 支持 Linux、macOS 和 Windows 操作系统&#xff0c;同时支持 gcc、clang 和 MSVC 等多种…

8051单片机基础4:数据存储类型(data,idata,xdata,code)

文章目录 存储类型使用方法详细说明8051存储器结构dataidatabdatapdataxdatacode 关于作者 参考来源&#xff1a;Keil > Help > uVision Help > Cx51 Compiler User’s Guide > Language Extensions > Memory Types 存储类型 Cx51编译器可以访问8051的所有存储…

安装xdata步骤

1.修改配置文件/etc/security/limits.conf 修改配置文件/etc/security/limits.conf 在该配置文件中添加&#xff1a; vim /etc/security/limits.conf * soft nofile 65535 * hard nofile 65535修改之后重新SSH连接即可&#xff0c;不需要重启主机或服务 2. 禁用禁用SELINUX …

ObjectARX开发笔记(二)——使用Xdata向AutoCAD图形追加自定义数据

1.自定义数据 ObjectARX开发过程中&#xff0c;有时会使用自定义数据&#xff0c;主要包括&#xff1a; 自定义对象——可以让用户按照自己希望的方式封装数据&#xff0c;并向AutoCAD中添加第三方实体类型&#xff0c;这些实体类型用于与AutoCAD自身实体一样的特性&#xff…

matlab xdata ydata,matlab中set(head1,'xdata',x1,'ydata',y1)什么意思?

满意答案 amuese6418 2014.10.25 采纳率&#xff1a;59% 等级&#xff1a;12 已帮助&#xff1a;8722人 这个主要是set的用法 它是功能 设置对象的属性。 用法 set(H,PropertyName,PropertyValue,…) 用属性值PropertyValue设置关于用参量H 标志的对象(一个或多个)的属性名P…

用Proteus仿真C51时用到xdata时的问题

在用做一个程序&#xff0c;但是51的内存资源太过稀有&#xff0c;使用到较大的数组的时候资源很快就耗尽了&#xff0c;可能会遇到以下错误&#xff1a; src\main.c(195): error C249: DATA: SEGMENT TOO LARGE这时需要用到大模式下编译。 然而在proteus下默认xdata是必须加…