当前位置: 首页 > news >正文

3.物联网射频识别,(高频)RFID应用ISO14443-2协议

一。ISO14443-2协议简介

1.ISO14443协议组成及部分缩略语

(1)14443协议组成(下面的协议简介会详细介绍)

14443-1 物理特性

14443-2 射频功率和信号接口

14443-3 初始化和防冲突        (分为Type A、Type B两种接口

14443-4 传输协议        (一般不使用,只有哪些银行卡刷卡等重要领域的器件才需要使用

(2)针对前两节的名词,对应的英语缩略语

PCD:近场耦合设备(读写器)

PICC:近场卡或物体(标签)

RF:射频

ASK:振幅键控

OOK:二进制振幅键控

BPSK:二进制相移键控

2.ISO14443-1协议简介

(1)物理特性:ID-1,长86mm,宽54mm,厚0.84mm

(2)ISO14443-2功率接口

频率:13.56MHz±7kHz

工作场强度:Hmin=1.5A/m,  Hmax=7.5A/m

(3)ISO14443-2信号接口

问题:如何看懂图?

        我们看到的图会有很多英文,但是这个英文很可能是缩略英文,并代表一定的含义。所以我们在看图之前,可以找到他的缩略英文标(或者类似手册),边查边看。

        例如上面提到的缩略语。我们在下面经常看到这些缩略语。

PCD-PICC信号接口

接口速率:fc/128=13.56M/128≈106kbps

PICC-PCD信号接口

副载波频率:848kHz


二。ISO14443-3 Type A协议简介

1.ISO14443-3部分缩略语

S:通信开始

E:通信结束

P:校验位,Type A

UID:唯一标识符

2.Type A的帧格式

        注意:不需要把他记下来,只需要有印象,主要是观察创作者在对待不同的帧如何规定与处理。

1.短帧

2.标准帧

(1)字节低位在先

(2)校验位P为奇校验,仅仅在PICC到PCD 且速率为106k以上时,最后一个字节的P为偶校验

3.基于位的防冲突帧

3.Type A PICC的状态

        这是读写器与标签的工作方式,如果仔细分析我们会消耗大量的时间,并没有太大的必要。主要关注的是别人画流程图的方式:各方面都需要思考,并且把应答的数据也标注出来,使用缩略语使图像变得简洁。

4.Type A 的PCD命令及PICC应答

        众多周知,这些缩略语只是标识符,关键是对应的二进制数据。所以需要分配数据的使用。这也是一个开发者需要考虑的内容。

请求(REQA )和唤醒(WUPA)

请求应答(ATQA)

5.补充:Type A 的PCD命令及PICC应答

(1)UID介绍

(2)防冲突(Anticollision)流程

面向比特的防冲突方式

(3)防冲突(Anticollision)命令格式

(4)防冲突(Anticollision)命令中的NVB

(5)防冲突(Anticollision)命令举例

(6)选择(SELECT)和选择应答(SAK)

1.SELECT

2.SAK


三。Mifare S50卡的内部存储结构

1.Mifare系列介绍

NXP公司出品的系列遵循ISO14443-A标准的射频卡

2.Mifare S50卡存储结构

(1)Mifare S50卡存储结构

(2)Mifare S50卡数据块的值结构

1. 值(Value):一个带符号的4 字节值,小端模式(低地址存最低值)。  

2.值按2次正常和1次取反(~表示)存储了3次。  

3.地址(Addr)表示1字节的块编号,分2次正常和2次取反值存储。  

4.可以执行Decrement、Increment、Transfer、Restore命令。

(3)Mifare S50卡每个扇区的控制块(块3)

 一扇一密,便于一卡多用  

每个扇区有独立的控制字,每块由3位组合C1x C2x C3x控制

(4)Mifare S50卡扇区数据块(块0~2) 访问权限

例如:当块0的存取控制位C10 C20 C30=100时,验证密钥A或密钥B后可读;验证密钥B后可写;不能进行值类操作。

(5)Mifare S50卡扇区控制块(块3) 访问权限

例如:当块3的控制位——C13 C23 C33 = 0 0 1时,表示:密钥A:不可读,验证KEYA正确后,可写 ;  控制字段:验证KEYA后,可读、可写;密钥B:验证KEYA正确后,可读、可写。


四。Mifare S50卡的访问流程

1.Mifare S50卡的访问流程

Mifare S50卡三次认证流程

1.挑战值:RB, B产生的随机数;RA A产生的随机数。

2.TokenAB, A对随机数RB使用认证的密钥进行加密计算后的应答值。

3.TokenBA, B对随机数RA使用认证的密钥进行加密计算后的应答值。

4.加密算法为Mifare未公开的“crypto1”,后两步的通信数据是加密的。

2.Mifare S50卡的命令

Mifare S50卡的命令

Mifare S50卡的ACK及NAK应答

S50Authentication命令流程

Addr指块的顺序编号0~63

不切换扇区,同一个扇区只需要认证一次

Read命令流程

Write命令流程

Increment Decrement Restore 命令流程

Transfer命令流程

相关文章:

3.物联网射频识别,(高频)RFID应用ISO14443-2协议

一。ISO14443-2协议简介 1.ISO14443协议组成及部分缩略语 (1)14443协议组成(下面的协议简介会详细介绍) 14443-1 物理特性 14443-2 射频功率和信号接口 14443-3 初始化和防冲突 (分为Type A、Type B两种接口&…...

数据分析笔记1

数据分析概述:数据获取--探索分析与可视化--预处理--分析建模--模型评估 数据分析含义:利用统计与概率的分析方法提取有用的信息,最后进行总结与概括 一、数据获取 实用网站:kaggle 阿里云天池 数据仓库:将所有业务数据…...

paramiko 3

import paramiko import concurrent.futuresdef execute_remote_command(hostname, username, password, command):try:# 创建SSH客户端client paramiko.SSHClient()client.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 使用密码认证连接远程主机client.connect(h…...

基于Dlib训练自已的人脸数据集提高人脸识别的准确率

前言 由于图像的质量、光线、角度等因素影响。这时如果使用官方提供的模型做人脸识别,就会导至识别率不是很理想。人脸识别的准确率与图像的清晰度和质量有关。如果图像模糊、光线不足或者有其他干扰因素,Dlib 可能无法正确地识别人脸。为了确保图像质量…...

Git 详细安装教程(详解 Git 安装过程的每一个步骤

Git 详细安装教程(详解 Git 安装过程的每一个步骤) 该文章详细具体,值得收藏学习...

kafka伪集群部署,使用KRAFT模式

1:拉去管理kafka界面UI镜像 docker pull provectuslabs/kafka-ui2:拉去管理kafka镜像 docker pull bitnami/kafka3:docker-compose.yml version: 3.8 services:kafka-1:container_name: kafka1image: bitnami/kafka ports:- "19092:19092"- "19093:19093&quo…...

【双指针遍历】N数之和问题

文章目录 二数之和LC1三数之和LC15四数之和LC18最接近的三数之和LC16 二数之和LC1 题目链接 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对…...

Qt的QObject类

文章目录 QObject类如何在Qt中使用QObject的信号与槽机制?如何在Qt中使用QObject的属性系统?QObject的元对象系统如何实现对象的反射功能? QObject类 Qt的QObject类是Qt框架中的基类,它是所有Qt对象的父类。QObject提供了一些常用…...

【图论C++】链式前向星(图(树)的存储)

/*** file * author jUicE_g2R(qq:3406291309)————彬(bin-必应)* 一个某双流一大学通信与信息专业大二在读 * * brief 一直在竞赛算法学习的路上* * copyright 2023.9* COPYRIGHT 原创技术笔记:转载需获得博主本人…...

16.PWM输入捕获示例程序(输入捕获模式测频率PWMI模式测频率和占空比)

目录 输入捕获相关库函数 输入捕获模式测频率 PWMI模式测频率和占空比 两个代码的接线图都一样,如下 测量信号的输入引脚是PA6,信号从PA6进来,待测的PWM信号也是STM32自己生成的,输出引脚是PA0。 需要配置电路连接图示如下&…...

pip version 更新

最近报了一个错: 解决办法: 在cmd输入“conda install pip” conda install pip 完了之后再输入: python -m pip install --upgrade pip ok....

Oracle - 多区间按权重取值逻辑

啰嗦: 其实很早就遇到过类似问题,也设想过,不过一致没实际业务需求,也就耽搁了;最近有业务提到了,和同事讨论,各有想法,所以先把逻辑整理出来,希望有更好更优的解决方案;…...

本次CTF·泰山杯网络安全的基础知识部分(二)

简记23年九月参加的泰山杯网络安全的部分基础知识的题目,随时补充 15(多选)网络安全管理工作必须坚持“谁主管、谁负责,谁运营、谁负责,谁使用、谁负责”的原则,和“属地管理”的原则 谁主管、谁负责&…...

MyBatis 映射文件(Mapper XML):配置与使用

MyBatis 映射文件(Mapper XML):配置与使用 MyBatis是一个强大的Java持久化框架,它允许您将SQL查询、插入、更新和删除等操作与Java方法进行映射。这种映射是通过MyBatis的映射文件,通常称为Mapper XML文件来实现的。本…...

基于 SpringBoot 的大学生租房网站

文章目录 1 简介2 技术栈3 需求分析4 系统设计5 系统详细设计5.1系统功能模块5.2管理员模块5.3房主功能模块5.4用户功能模块 源码咨询 1 简介 本大学生租房系统使用简洁的框架结构,专门用于用户浏览首页,房屋信息,房屋评价,公告资…...

BL808学习日志-0-概念理解

一、主核心的介绍 1.三个核心在FREERTOS系统中相互独立,各负责各自的外设和程序;其中M0和LP核心在一个总线上,D0单独在一个总线上,两个总线使用AXI4.0(??)通讯? CPU0(M0)-E907架构,320MHz; CPU1(LP)-E9…...

CISSP学习笔记:业务连续性计划

第三章 业务连续性计划 3.1 业务连续性计划 业务连续性计划(BCP): 对组织各种过程的风险评估,发生风险的情况下为了使风险对组织的影响降至最小而定制的各种计划BCP和DRP首先考虑的人不受伤害,然后再解决IT恢复和还原问题BCP的主要步骤: 项…...

.NET Nuget包推荐安装

文章目录 前言通用WPFWebApiBlazor 前言 我这里的包主要是.NET Core的,.NET Framework可能不支持。 通用 Newtonsoft.Json:最常用的C#和Json对象互转的包。支持匿名对象,但是不支持Enum枚举类型,显示的是Enum的数值&#xff0c…...

【文献阅读】Pocket2Mol : 基于3D蛋白质口袋的高效分子采样 + CrossDocked数据集说明

Pocket2Mol: Efficient Molecular Sampling Based on 3D Protein Pockets code: GitHub - pengxingang/Pocket2Mol: Pocket2Mol: Efficient Molecular Sampling Based on 3D Protein Pockets 所用数据集 与“A 3D Generative Model for Structure-Based Drug Desi…...

TrustRadius 评论:为什么 Splashtop 优于 LogMeIn

在当今日益数字化的格局中,远程访问和远程支持工具不仅方便而且至关重要。无论对于居家办公人员,还是对于提供远程支持的 IT 专家,能够安全高效地访问远程系统已成为以技术为导向的日常生活的主要内容。 Splashtop 和 LogMeIn 是远程领域的两…...

ES6从入门到精通:前言

ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var&#xf…...

FastAPI 教程:从入门到实践

FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...

生成 Git SSH 证书

🔑 1. ​​生成 SSH 密钥对​​ 在终端(Windows 使用 Git Bash,Mac/Linux 使用 Terminal)执行命令: ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​: -t rsa&#x…...

【单片机期末】单片机系统设计

主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 (一)概念解析 TRS(Total Return Swap)收益互换是一种金融衍生工具,指交易双方约定在未来一定期限内,基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

【AI学习】三、AI算法中的向量

在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...

C++中string流知识详解和示例

一、概览与类体系 C 提供三种基于内存字符串的流&#xff0c;定义在 <sstream> 中&#xff1a; std::istringstream&#xff1a;输入流&#xff0c;从已有字符串中读取并解析。std::ostringstream&#xff1a;输出流&#xff0c;向内部缓冲区写入内容&#xff0c;最终取…...

ardupilot 开发环境eclipse 中import 缺少C++

目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...

关于 WASM:1. WASM 基础原理

一、WASM 简介 1.1 WebAssembly 是什么&#xff1f; WebAssembly&#xff08;WASM&#xff09; 是一种能在现代浏览器中高效运行的二进制指令格式&#xff0c;它不是传统的编程语言&#xff0c;而是一种 低级字节码格式&#xff0c;可由高级语言&#xff08;如 C、C、Rust&am…...