本应用笔记介绍了max66250 nfc/rfid器件与相关移动应用的配合使用。ic的功能通过使用移动应用程序直接调用max66250的命令来实现。
介绍
在本应用笔记中,我们讨论max66250安全认证器ic的特性,以及如何使用相关的android/ios应用访问这些特性。该设备本质上充当具有附加加密安全功能的近场通信 (nfc)/射频识别 (rfid) 标签。
设备特性
max66250在一个nfc/rfid集成电路中集成了先进的安全功能、数据保护和用户可编程存储器,为任何应用提供简单而有效的加密保护。图 1 显示了器件组件之间的高级交互。
max66250安全性最不可或缺的部分是存储的数据受到加密保护,因为几乎可以对器件上存储的任何数据设置读保护和写保护。
安全功能的详细说明如下:
用于质询/响应外设身份验证的 sha3-256 安全哈希算法
用于外设身份验证的密钥哈希消息身份验证代码 (hmac)
安全存储(256 位安全电可擦除可编程只读存储器 (eeprom),用于用户数据和机密)
17 位一次性设置仅递减计数器,具有经过身份验证的读取功能
图1.max66250框图
max66250 nfc读卡器应用(移动)
这是一个适用于android和ios的应用程序,允许用户向max66250器件发送某些命令,以与器件的功能接口。表 1 概述了与移动应用程序相关的命令。
命令 描述 类型
递减计数器 将内部计数器递减 1 常规
写入内存 写入内存页面 常规
读内存 从内存页面读取 常规
读取状态 读取所有内存页的保护 常规
设置页面保护 设置内存页的读、写或 aph 保护 常规
计算和读取页身份验证 计算页面上的 hmac sha3-256 身份验证 hmac
经过身份验证的 sha-3 写存储器 计算 hmac sha3-256 身份验证,然后更新内存中更改的块 hmac
计算 s 密钥 使用 hmac sha3-256 从 m 密钥计算 s 密钥 hmac
实现一个简单的图形用户界面来调用和发出每个命令。这些命令的应用可以包括从max66250页面读取存储器等简单命令,也可以包括使用主密钥在页面上计算hmac sha3-256认证等更复杂的命令,以及随后读取该页面上经过验证的数据的质询。前者从移动应用程序的“设备功能”选项卡执行,而后者从“加密”选项卡执行。借助该软件,所有命令都在引擎盖下使用,而用户只需选择所需的操作即可。
下一节详细介绍了如何在移动应用程序中使用上述命令。
应用程序设置和使用
从苹果应用商店(如果在ios设备上)或谷歌play商店(如果在android设备上)下载应用程序后,第一个窗口应显示“基本”选项卡。该标签用于扫描max66250的唯一标识符(uid)并与器件连接。图2所示为max66250芯片上成功读取uid后的该选项卡。
图2.启动时显示的max66250 nfc读卡器应用程序基本选项卡。
现在,让我们描述图 3 中所示的“设备功能”和“加密”选项卡上元素的输入和功能(每个输入/函数都标有一个数字,并在图 3 之后进行说明)。了解每个组件的功能以有效使用应用程序非常重要。
图3.max66250读卡器应用程序“器件特性”(左)和“加密”(右)选项卡。
“设备功能”选项卡
选择max66250器件存储器中的页面进行接口。在四个选项之间进行选择:第 0 页、第 1 页、递减计数器(第 2 页)或主密钥(第 3 页)。
从页面读取或要写入页面的数据。使用 rand 生成随机数据,并使用垃圾桶图标清除字段。
表 1 中的“写入内存”命令。在“递减计数器”页上,此命令将递减计数器设置为不超过 01ffffh 的值。每个max66250标签只能这样做一次。
从中读取内存命令。
表 1 中的递减计数器命令。请注意,此命令仅在查看递减计数器页面时显示。
表 1 中的“设置页面保护”命令以及关联的开关。激活开关,然后按设置保护以在所选页面上设置保护。
表 1 中的读取状态命令。读取特定页面的状态时,保护开关的状态会发生变化,以匹配该页面上的保护。(例如,如果第 0 页具有读取保护,请按读取状态,然后激活读取开关)。
显示上次尝试的通信的结果。
“加密”选项卡
选择max0存储器的第1页或第66250页进行接口。
用于 hmac sha3-256 身份验证的主密钥。*
随机生成的质询,用于 hmac sha3-256 身份验证。*
使用主密钥和质带计算的共享密钥(只能读取)。
从页面读取或要写入页面的数据。*
表 3 中经过身份验证的 sha-1 写内存命令。
表 1 中的“计算和读取页身份验证”命令。
*注意:使用rand生成随机数据,使用垃圾桶图标清除字段。
基本使用框架
有关使用移动应用程序的基本示例,请执行以下步骤:
打开max66250读卡器应用,将手机的nfc读卡器移近max66250标签。单击基本选项卡上的读取 uid,开始与芯片通信。
切换到“设备功能”选项卡。
选择第0页,按rand键生成随机数据写入max66250。
按写入内存。
将页面切换到 m-secret,然后按 rand。
按写入内存。
切换回第 0 页,然后按读内存。步骤 3 中的随机数据再次出现在数据字段中。
切换到“加密”选项卡。步骤 5 中的 m 密钥出现。
将页面设置为“第 0 页”,然后按“挑战”字段旁边的 rand。
按计算和读取页面身份验证。返回在步骤 7 中读取的数据并生成 s-secret。
总结
本应用笔记详细介绍了max66250读卡器移动应用的基本工作原理。它解释了如何使用每个命令以及输入字段的用途。
漫步者HECATE GX体验:带小金标的全能电竞耳机你见过没?
加密货币行业中的Coinbase黑帮有何意义
晶电获美国波士顿大学专利诉讼案二审判决胜诉
单模光纤最大传输距离可达到多少
电烙铁内热和外热的区别
使用MAX66250移动应用,基础知识
数字模拟混合组网方案
九档可调直流电源电路参考设计
智能电批:四段式拧紧技术的优势与实践
构建可启动的系统镜像的过程
华云信创云数据中心助力安徽“新基建”加快数字化赋能和智能化升级
交流稳定化电源的使用方式与作用
闪电网络通过形式化验证结果表明和比特币一样安全
5G行业应用十大优秀解决方案有哪些?
工业以太网具备怎样的优势
光功率测试仪怎么使用?
Facebook的新型光纤纺纱机器人解析
变频器是怎样控制电机转速的呢?
相机标定为什么能够达到小于0.01像素误差的精度?
自动驾驶新分类法,简化驾驶员与车辆之间的关系