Android使用NFC模拟IC卡
前言:前几天不知道老板出于什么原因居然给我们研发部门安装了门禁,只有我们研发部的人员使用员工卡才能进出,每天上下班携带员工卡着实不太方便,于是想着动了点歪脑筋...
NFC是在RFID的基础上发展而来的,两者本质上并没有太大的区别,但细节方面还是有点不同:
1.NFC增加了点对点通信功能,通信的双方是相互对等的,而RFID是主从关系。
2.工作有效距离:NFC一般不超过10cm,而RFID最远的可以有几十米。
3.工作频段:NFC仅限于13.56MHz,而RFID有低频(125KHz到135KHz),高频(13.56MHz),超高频(860MHz到960MHz)。
联想到之前做过的一个嵌入式项目使用的富士通的SL3S4011双界面存储芯片一般都是通过序列号ID来识别不同的卡片初步猜测该门禁系统的原理是通过读写器读取IC卡ID后根据设定的权限策略来判定是否有权限通过。所以主要的问题有两个,一是两者使用同一个频段,二是NFC模拟IC卡的ID。
对于第一个问题我将手机靠近了IC卡后听到一声“叮咚”证明他们确实是在同一个频段。
第二个问题是在Stack Overflow的这篇文章找到了答案:http://stackoverflow.com/a/28720342/1016460,下面的内容是对这篇文章的翻译及运用。
前提条件:已经root了的Android手机且带NFC功能
1.使用“TagInfo”读取IC卡内部ID序列号:(如下图红色框内所示我的卡ID为C4 1A CA 88)
2.使用RE管理器打开/etc/libnfc-brcm-20791b05.conf:
如上图所示,原生的第一个红框内为45,第二个框内的数据是没有的。
我把它改成了上面这样,那这些数据是什么意思呢?
先看第二个红框内,0x33表示后面的数据我们是用来作为UID的,紧跟着的04代表后面有4个字节的ID,C4 1A CA 88当然就是上一步读到的IC卡ID号了;那为什么要把45改成4B呢?因为45代表的是总的数据长度,我们在后面一共添加了6个字节所以+6变成4B。
3.保存修改并重启。
大功告成啦,这个时候你去用手机靠近读卡器就能随意的出入门禁了。
补充:要是有很多IC卡需要模拟每次这样改岂不是很麻烦,后来我发现了这个APP可以方便地切换:http://nfcemulator.bmob.cn/
Android使用NFC模拟IC卡相关推荐
- Android使用NFC模拟M卡实现 (一)
Android使用NFC模拟M卡实现 (一) Android使用NFC模拟M卡实现 (二) Android使用NFC模拟M卡实现 (三) 在百度找一遍,没有一篇,讲的比较通俗易懂的文件.讲解Andro ...
- Android使用NFC模拟M卡实现 (二)
Android使用NFC模拟M卡实现 (一) Android使用NFC模拟M卡实现 (二) Android使用NFC模拟M卡实现 (三) 前几天写的第一篇关于NFC的官方文档的翻译,今天才更新第二篇. ...
- Android使用NFC模拟M卡实现 (三)
Android使用NFC模拟M卡实现 (一) Android使用NFC模拟M卡实现 (二) Android使用NFC模拟M卡实现 (三) HCE的特点是模拟智能IC卡(ISO 7816-4),可用于金 ...
- 关于HCE——Android手机NFC模拟刷卡成果和心得(上)
关于HCE--Android手机NFC模拟刷卡成果和心得 一.前言 在最近,开始研究了手机模拟NFC刷卡的一些内容,想是自己实现一次手机模拟刷卡. NFC大家应该都了解,这两年的安卓手机基本都是支持了 ...
- nfc读卡java开发,Android通过NFC读取IC卡示例
[实例简介] Android通过NFC读取IC卡示例,包含读取.写入. [实例截图] [核心代码] nfc_demo └── nfc_demo ├── app │ ├── app.iml │ ...
- 使用NFC模拟校园卡门禁功能 【Mac, Windows, Android, 手环】
COVID-19期间,我们学校实行通行证制度,只有具有通行证的同学的卡才可以自由进出校园,他而没有通行证的人下人出校只能是一种奢望.在这种无理取闹的制度之下,我试想通过NFC模拟出那些可以自由进出的同 ...
- 手机手环NFC模拟加密卡,无需电脑,一台手机即可完成
前言 目前很多手机和手环都具备模拟门禁电梯IC卡的功能,但是遇到加密的卡的话,就没办法,在这里给大家提供一个不要电脑来操作解密和复制加密的教程. 准备工具 具备NFC功能的安卓手机或者手环(苹果系统暂 ...
- 如何在android模拟器中模拟sd卡,如何在Android模拟器中模拟SD卡
如何在Android模拟器中模拟SD卡 简介 Android允许开发者创建一个SD卡镜像并在启动模拟器加载它, 用于模拟物理设备中的SD卡. 下面将介绍: 1. 如何创建一个SD卡镜像? 2. 如何拷 ...
- Android NFC 读取IC卡的简单封装
一.NFC简介 NFC是一种近距离无线通信技术,一种非接触式的识别和互联技术. NFC由非接触式射频识别标准(RFID)及互联互通技术演变而成,通过在芯片上集成了感应式读卡器.感应式卡片和点对点三种功 ...
最新文章
- 人工智能医疗的商业化困局
- svn 迁移到 git 仓库并保留 commit 历史记录
- android 不同型号的终端的UI适配--一种解决方法
- Unity经典游戏教程之:雪人兄弟
- 3.1	采购管理规划
- 021合并两个链表并排序
- vue项目中更新element-ui版本
- java redis 原子操作_7000字 Redis 超详细总结笔记 !建议收藏
- spark.network.timeout参数入门
- 使用VC2005编译静态应用程序的方法
- cs231n学习笔记 CNN 目标检测 定位 分割
- 抖音旋转很炫的html,火爆抖音的旋转时钟屏保,超酷超炫的
- ApacheCN 活动汇总 2019.6.28
- 博客中常用的Emoji表情整理,欢迎自取
- 微型计算机存储容量2mb,在微型计算机中,存储容量为2MB是指
- Shel相关编程(四)
- 与三角有关的级数求和
- 理财十问:1.你知道自己的风险偏好吗?
- 小米弹性调度平台Ocean
- ISO SAE 21434-2021 要求、建议、允许(RQ、RC、PM)整理