Mifare1射频卡操作原理(编程)
浅析Mifare l工作原理教学

Mifare 1是符合ISO/IEC 14443A 的非接触智能卡。
其通讯层(Mifare RF 接口)符合ISO/IEC 14443A 标准的第2和第3部分。
其安全层支持域检验的CRYPTO1数据流加密。
2内部功能结构Mifare 1集成电路芯片内含1Kbyte EEPROM 、RF 接口和数在教学过程中,教师首先给学生介绍下与IC 卡相关的基本知识,展示几张不同的IC 卡。
学生这样可以非常真实的认识经常接触但是又非常陌生的IC 卡。
接下来从其内部结构开始展开,通过对其相关的各种特性的分析,达到对其进行熟练设置与操作等。
1概述IC 卡(Integrated Circuit Card ,集成电路卡),IC 卡是继磁卡之后出现的又一种新型信息工具。
IC 卡是指集成电路卡,一般用的公交车卡就是IC 卡的一种,一般常见的IC 卡采用射频技术与IC 卡的读卡器进行通讯。
IC 卡与磁卡是有区别的,IC 卡是通过卡里的集成电路存储信息,而磁卡是通过卡内的磁力记录信息。
IC 卡的成本一般比磁卡高,但保密性更好。
非接触式IC 卡又称射频卡,成功地解决了无源(卡中无电源)和免接触这一难题,是电子器件领域的一大突破。
由于其简单的数据读写过程,目前被各方面广泛采用,主要用于公交、轮渡、地铁的自动收费系统,也应用在门禁管理、身份证明和电子钱包;应用于低成本的城市轨道交通、各类计费支付卡和数据采集系统等领域。
然而在职业教育中也相继出现其应用与设计,目前市场上主要产品有荷兰飞利浦公司Mifare 1非接触IC 卡。
那么射频卡的工作原理、安全性和可靠性是如何保证的?下面就以在教学当中最常用的Mifare 1射频卡为例进行分析研究。
在Mifare 1卡中,芯片连接到一个几匝的天线线圈上,并嵌入塑料中,形成了一个无源的非接触卡。
不需要电池。
当卡接近读写器天线时,高速的RF 通讯接口将以106kBit/s 的速率传输数据。
浅析Mifare 1工作原理教学姻文/(1.湖南省水利水电职业技术学院,湖南长沙410131;2.湖南省邮电设计规划院湖南长沙410000)本文通过结合Mifare 1射频卡的特性分析,突出在教学过程当中所进行了多方面的详细分析与研究。
MIFARE1卡读写控制

汇报人:XX
目录
添加目录标题
01
MIFARE1卡读写控制 技术
04
MIFARE1卡简介
02
MIFARE1卡读写原理
03
MIFARE1卡的安全性
05
MIFARE1卡的应用案 例
06
添加章节标题
MIFARE1卡简 是 一 种 非 接 触 式 智 能 卡 , 采 用 射 频 技 术 进 行 数 据 传 输 。 M I FA R E 1 卡 具 有 较 高 的 安 全 性 , 采 用 了 加 密 算 法 对 数 据 进 行 保 护 。 M I FA R E 1 卡 具 有 多 种 应 用 场 景 , 如 门 禁 控 制 、 公 交 刷 卡 等 。 M I FA R E 1 卡 读 写 速 度 快 , 操 作 方 便 , 可 广 泛 应 用 于 各 种 智 能 卡 管 理 系 统 中 。
卡片数据结构
存 储 结 构 : M I FA R E 1 卡 采 用 多 层 加密的方式对数据进行保护,包括 卡片编号、密钥、数据块等。
数据传输方式:采用无线电波的方 式进行数据传输,传输速率高,稳 定性好。
添加标题
添加标题
添加标题
添加标题
加密算法:采用先进的加密算法对 数据进行加密,确保数据的安全性。
应用领域
公共交通:用于公交、地铁、出租 车等支付
物流管理:追踪物品和信息,提高 效率
添加标题
添加标题
添加标题
添加标题
门禁系统:作为身份识别和权限控 制
金融服务:用于银行卡、电子钱包 等
安全机制
加密算法:采用国际标准的加密算 法保护数据安全
数据完整性:采用校验机制确保数 据在传输过程中不被篡改
MIFARE 1卡读写控制

Value Operate 值操作
MIFARE卡专门为公交/地铁等行业的定额 收费系统设有值操作命令,包括 INCREAMENT/DECREAMENT/ TRANSFER/RESTORE 对某块进行值操作的前提是该块已被初始 化为“值块”(Value Block)并且Access Bits允许值操作。
内
核 特 殊 寄
0AH 10 0BH 11 0CH 12 0DH 13 0EH 14 0FH 15
存
器Hale Waihona Puke RC1SmartCard
MIFARE卡的读写操作步骤
激活MCM MCM软复位 向MCM下载密码(LOAD KEY),校验传输密码正确 后可向MCM的KEY-RAM写入用户自己设定的密码, 以上操作与卡无关。 请求应答(ANSWER TO REQUEST):寻卡 防冲突(ANTICOLLISION):选择唯一一张卡 选择标记(SELECT):激活所选择的卡 认证 (AUTHENTICATION):安全性 读写操作(读、写、加值、减值):交换数据 (READ/WRITE/INCREAMENT/DECREMENT) 停止(HALT):置卡为停止模式,防止重复操作。
SmartCard
M C M 基 本
指
令
指令代码(hex)
相关的出错标志
接收卡片上数据
Answer to Request (Request 的应答) Request std Request all AntiCollision (防重叠) Select Tag (选卡片) Authentication (认证) Auth_1a Auth_1b Load KEY(存取密码) Read Write Increment Restore Transfer Halt (读) (写) (增值) (重储) (传送) (停机) 60 61 / 30 A0 C1 C0 C2 B0 50 26 52 93 93
Mifare1系列射频卡读卡器的开发

Mifare1系列射频卡读卡器的开发本文内容简介:Mifare1系列射频卡具有高度安全、高可靠性及分区存储结构等特点,其应用范围越来越广.文中提出了一种基于AT89S52和MF RC500实现的Mifare1射频卡读卡器的设计方法.先介绍了系统的组成及工作原理,然后给出了系统的硬件设计,最后给出了软件设计流程和相应程序.近几年来,由于非接触式IC智能射频卡的高度安全保密性,使之在IC智能卡领域中异军突起,成为当今IC智能卡中的流行宠物,应用前景十分广阔.非接触式智能卡读写系统是射频技术中的重要组成部分,其实现原理为:由读写器向Mifare1卡,也就是射频卡发射特定频率的无线电磁波,当射频卡靠近读写器时,受读写器发射的电磁波激励,卡片内的IC谐振电路产生共振并且接收电磁波能量.当射频卡接收到足够的能量时,就将卡内存储的识别资料以及其他数据以无线电波的方式传输到读写器并且接受读写器对卡内数据的进一步操作。
文中提出了一种Mifare1射频卡读卡器系统的设计,此系统是针对煤矿考勤而研制,目前已投人使用.该系统采用AT89S52单片机实现对射频芯片MF RC500的控制,完成对Mifare1卡卡号的读取以及数据的无线交换.下面首先给出系统的总体结构以及工作原理,然后从硬件和软件设计2个方面对系统进行详细讨论和说明.1 系统总体结构及工作原理该读卡器由AT89S52单片机、MF RC500芯片和外围电路组成,与Mifare1卡的数据交换都是通过2者之间的射频场来完成.系统结构如图1所示.系统的工作原理主要是由AT89S52对MF RC500进行控制与通信,MF RC500驱动外同电路对Mifare1卡进行读写操作.具体说来,AT89S52通过串行口接收PC机的指令,完成对卡的操作和整个读写器的管理.MF RCS00负责信号的编码、解码,信号的调制、解调;匹配电路建立读写器同射频卡之间的联系,此部分的设计直接影响到射频功率的大小以及系统的抗干扰能力;Mifare1卡是系统的应用终端.接收读写器的指令并返回指令执行结果。
Mifare卡的算法破解和应用---刘欣凯

智能卡技术学习报告——Mifare卡的算法破解和应用姓名:刘欣凯专业:信息安全2班学号:指导老师:杨帆目录一、论文摘要 (3)二、Mifare卡的简单介绍 (4)三、Mifare卡的构造及其功能模块 (6)四、Mifare卡的破解 (12)五、确保Mifare卡安全应用的新方案 (18)六、Mifare的应用 (22)七、参考文献 (24)一、论文摘要Mifare是近年来被广泛应用的一种智能卡。
但是随着其广泛应用以及人们对其研究的加深,一度被认为非常安全的mifare卡也存在被破解的危险。
针对此现象,我们对mifare 的构造进行了深入的了解,并提出了mifare卡安全应用的新的方法,使其能够安全的继续应用在各种领域。
关键词:mifare卡、算法破解、安全应用、SM7国密算法一、AbstractMifarecardhasbeenusedinmanyfrontier.Withthedevelopmen tofthemifarecard,peoplehaveafurtherresearchonitthanbefore.The mifarecardwasconsideredsafeinsomeyearsyet.Butinnowadays,ith asbeencracked.Aimingatthephenomenon,wehaveastudyonthecon structofthemifarecard.Andatthesametime,weputforwardanewmet hodtoinsureitssafety.Inthisway,themifarecardcanstillbeusedinma nyfrontierinsafe.Keywords:Mifarecard、Algorithmcrack、Securityapplications、SM7algorithm二、Mifare卡的简单介绍1、Mifare1卡领导了非接触式IC卡的革命Mifare1非接触式IC卡是1994年由荷兰NXP半导体公司(简称NXP公司)发明。
射频卡的工作原理

射频卡的工作原理
射频卡是一种无接触式卡片,它采用射频识别技术进行通信和数据传输。
射频卡的工作原理如下:
1. 射频信号传输:射频卡内置一个小型的无线电天线,它可以通过接收和发送射频信号与读卡器进行通信。
读卡器会发射电磁场信号,激活射频卡的天线。
2. 电力传输:当读卡器的电磁场信号激活射频卡后,读卡器会传输一定的电能给射频卡,作为其供电。
射频卡不需要内置电池,它能够利用读卡器的电磁场能量进行工作。
3. 数据传输:一旦射频卡被激活并获得电能供应,它可以通过射频信号与读卡器进行数据传输。
射频卡的内部芯片存储了卡片的相关信息,如个人身份、账户余额、门禁权限等等。
读卡器可以读取这些信息,并进行相应的处理和验证。
4. 安全性:射频卡通常采用加密技术来确保数据的安全传输。
通过利用一些加密算法和协议,射频卡和读卡器之间的通信可以被加密,防止信息被非法获取和篡改。
总体而言,射频卡的工作原理就是通过无线射频信号的传输实现与读卡器的通信和数据交换,同时利用读卡器的电磁场能量来供电。
这种无接触式的工作方式使得射频卡在各种应用领域中具有了广泛的应用前景。
MiFare_one卡介绍

MiFare one卡介绍一、Mifare one IC S50 主要指标●容量为8K位EEPROM● 分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位●每个扇区有独立的一组密码及访问控制●每张卡有唯一序列号,为32位●具有防冲突机制,支持多卡操作●无电源,自带天线,内含加密控制逻辑和通讯逻辑电路●数据保存期为10年,可改写10万次,读无限次●工作温度:-20℃~50℃(湿度为90%)●工作频率:13.56MHZ●通信速率:106 KBPS●读写距离:10 cm以内(与读写器有关)二、Mifare one IC S70 主要指标●容量为32K位EEPROM●分为40个扇区,其中32个扇区中每个扇区存储容量为64个字节,分为4块,每块16个字节;8个扇区中每个扇区存储容量为256个字节,分为16块,每块16个字节;以块为存取单位●每个扇区有独立的一组密码及访问控制●每张卡有唯一序列号,为32位●具有防冲突机制,支持多卡操作●无电源,自带天线,内含加密控制逻辑和通讯逻辑电路●数据保存期为10年,可改写10万次,读无限次●工作温度:-20℃~50℃(湿度为90%)●工作频率:13.56MHZ●通信速率:106 KBPS●读写距离:10 cm以内(与读写器有关)三、M1射频卡与读写器的通讯见下图示:四、工作原理卡片的电气部分只由一个天线和ASIC组成。
天线:卡片的天线是只有几组绕线的线圈,很适于封装到IS0卡片中。
ASIC:卡片的ASIC由一个高速(106KB波特率)的RF接口,一个控制单元和一个8K位EEPROM组成。
工作原理:读写器向M1卡发一组固定频率的电磁波,卡片内有一个LC串联谐振电路,其频率与讯写器发射的频率相同,在电磁波的激励下,LC谐振电路产生共振,从而使电容内有了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到另一个电容内储存,当所积累的电荷达到2V时,此电容可做为电源为其它电路提供工作电压,将卡内数据发射出去或接取读写器的数据。
Mifare1技术说明(M1卡说明文档)

Mifare 1非接触IC卡技术说明1 特性1.1 MIFARE RF 接口(ISO/IEC 14443 A)∙非接触数据传输并提供能源(不需电池)∙工作距离:可达100mm (取决于天线尺寸结构)∙工作频率:13.56 MHz∙ 快速数据传输:106 kbit/s∙高度数据完整性保护:16 Bit CRC,奇偶校验,位编码,位计数∙真正的防冲突∙典型票务交易:< 100 ms (包括备份管理)1.2 EEPROM∙ 1 Kbyte,分为16个区,每区4个块,每块16字节。
∙用户可定义内存块的读写条件∙数据耐久性10年∙写入耐久性100.000次1.3 安全性∙相互三轮认证(ISO/IEC DIS9798-2)∙带重现攻击保护的射频通道数据加密∙每区(每应用)两个密钥,支持密钥分级的多应用场合∙每卡一个唯一序列号∙在运输过程中以传输密钥保护对EEPROM的访问权2 概述MIFARE MF1是符合ISO/IEC 14443A的非接触智能卡。
其通讯层(MIFARE RF 接口)符合ISO/IEC 14443A标准的第2和第3部分。
其安全层支持域检验的CRYPTO1数据流加密。
2.1 非接触能源和数据传递在MIFARE卡中,芯片连接到一个几匝的天线线圈上,并嵌入塑料中,形成了一个无源的非接触卡。
不需要电池。
当卡接近读写器天线时,高速的RF通讯接口将以106 kBit/s 的速率传输数据。
卡4匝线圈读卡器嵌入的芯片模块天线能量数据2.2 防冲突智能的防冲突功能可以同时操作读写范围内的多张卡。
防冲突算法逐一选定每张卡,保证与选定的卡执行交易,不会导致与读写范围内其他卡的数据冲突。
2.3 用户便捷性MIFARE 是针对用户便捷性优化的。
例如,高速数据传输使得完整的票务交易在不到100 ms 内处理完毕。
因此用户不必在读写器天线处停留,形成高的通过率,减少了公共汽车的登车时间。
在交易时,MIFARE 卡可以留在钱包里,甚至钱包里有硬币也不受影响。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Mifare1卡及其读写器ASIC模块之“密码操作”研究与其应用程序开发关键字:非接触式智能卡 ASIC模块1、序言非接触式智能卡已经广泛地应用于各类门禁控制系统,公共交通支付系统,e-purse系统,高速公路不停车收费系统,IBMS(智能大楼管理系统),海关过境身份识别,以及医疗保险系统等等。
非接触式智能卡以其高度安全保密性,通信高速性,使用方便性,成本日渐低廉等而受到广泛使用,给我们的生活质量带来了很大的提高。
因此,如何认识、理解智能卡,特别是带有非常神秘色彩的非接触式智能卡,已引起很多智能卡的使用者,包括智能卡专业研发的IT科研人员的极大的兴趣和爱好。
笔者在此很愿意将自己多年来在智能卡(接触式智能卡及非接触式智能卡)方面的研究及其软硬件应用开发的经验与大家一同交流和分享,以取得我国金卡工程事业的更进一步的发展。
在此,笔者将以符合ISO/IEC14443TYPEA标准的Mifare1S50系列非接触式智能卡及其读写设备专用IC(ASIC)RC150/170模块为对象,与大家一起就“关于非接触式智能卡及其读写器ASIC模块之‘密码操作’”作一些研究与探讨,并将用标准的Intel-51系列微处理器汇编语言进行实际的应用程序的开发。
在笔者曾设计和开发的众多智能卡项目中,本文所给出的应用程序都有着良好的运行效果。
2、非接触式智能卡及其读写器ASIC模块RC150/170Mifare1S50非接触式智能卡片有着16个Sector(扇区);每个Sector包含4个Block(块);每个Block具有16个byte的存储容量。
Sector被定义为Sector0至Sector15;Block被分为Block0至Block3;整个Mifare1S50非接触式智能卡共有64个Block。
Sector0中的Block0记录了该张智能卡的序列号(SerialNumber)以及生产厂商的标志信息等,这些信息已在卡片出厂时固化,不能更改。
因此该Block不能再复用为应用数据块。
每个Sector中的Block3被特别用来存放对该Sector中应用块Block0,1,2及其本身Block3进行数据存取的密码及存取权限。
整个Mifare1S50非接触式智能卡共有16个Block3。
根据绝对地址编址,他们可被编为Block3(在Sector0中),Block7(在Sector1中),Block11(在Sector2中),以及Block63(在Sector15中)等等。
对于某一Sector中的Block3的绝对地址编址可以由下列公式计算得到:Block X=(N+1)*4-1其中:X:绝对地址编址的Block块号N:Sector扇号,0至15通常每个扇区的Block0,1,2都存放着非常保密的数据,例如坐公交车/出租车前在公交公司指定地点已购买的车资钱款,智能大厦/智能小区进出时所需的控制信息,股票交易时持有股票交易智能卡片者必须对已存放在智能卡中的交易密码数据(例如帐户、存款信息、已买进股票数量/品种等等)进行确认,才能得以股票交易,等等。
由于每一个Block3中包含了该扇区的密码字节以及对该扇区中其余Block0,1,2进行数据处理的存取控制权限字节,因此如何操作处理Block3将是很重要的内容。
以下将展开对每个扇区的Block3进行研究。
Block3有16个byte组成。
前6个字节是密码A(KEYA),KEYA的缺省值可能为“A0A1A2A3A4A5”;最后6个字节是密码B(KEYB),KEYB的缺省值可能为“B0B1B2B3B4B5”;中间4个字节是控制字节,缺省值可能为“FFH07H80H69H”;利用KEYA或KEYB并遵守早已定义在4个控制字节中的存取条件,我们便能对该密码(KEYA或KEYB)所对应的Sector内的应用块Block0,1,2进行数据读/写/更新等操作。
由于非接触式智能卡的操作,包括数据流的传递等都是以“非接触”方式来完成的,因此在MCU与非接触式智能卡之间必须有一个传递密码(或数据流)的中间媒体,即ASIC模块。
RC150/170就是这样一种ASIC模块。
它担负着非接触式智能卡与MCU(微处理机)之间所有的密码/数据相互传递的重要任务。
对非接触式智能卡进行密码操作,变成对RC150/170ASIC模块进行密码操作。
RC150/170ASIC模块与非接触式智能卡之间的信息传递(包括密码等)对用户来说是透明的,会自动传递并完成。
因此如何对非接触式智能卡进行“密码操作”(对Block3的操作)变成如何对RC150/170ASIC模块进行密码操作。
Philips公司的MCM200模块,MCM500模块或SB201,SB601(Uni-VisionEngineeringLtd.的产品)模块中都包含有RC150/170ASIC模块,因此本文所讨论的内容,包括下面设计的程序等,也适用于这些模块。
RC170是RC150的新一代ASIC模块,速度较快。
现在我们广泛使用的非接触式智能卡读写设备中大都包含有以上所列的ASIC模块之一。
图1显示了在用户(MCU)与非接触式智能卡之间基本的密码传输关系,并请特别注意ASIC 模块RC150/170的作用等等。
图1ASIC模块密码传输关系图在研究ASIC模块RC150/170的时候,我们必须关注所有与“密码操作”有关的寄存器/存储器的情况。
●密码数据寄存器KeyDataRegister(寄存器地址:0x0A);●密码地址寄存器KeyAddressRegister(寄存器地址:0x0C);●密码状态/控制寄存器KeyStatus&ControlRegister(KEYSTACON)(寄存器地址:0x0B);●其他相关寄存器。
所有这些与“密码操作”相关的寄存器都是“只可写不可读”的,即WOM(Write-Only-Memory)。
因此不要试图去读取这些寄存器的内容。
3、“密码操作”的研究及其应用程序开发通常,对非接触式智能卡的“密码操作”有两个主要步骤。
每一个主要步骤又有若干个小的步骤有序并且必须是连续地完成。
“密码操作”的两个主要步骤是:●“LOAD_KEY”密码存取●“AUTHENTICATION”密码认证3.1“LOAD_KEY”密码存取“LOAD_KEY”密码存取必须由以下步骤有序并连续地完成:●设置新的密码值●设置密码状态/控制寄存器KeyStatus&ControlRegister(KEYSTACON)●设置密码地址寄存器KeyAddressRegister(寄存器地址:0x0C)●设置密码数据寄存器KeyDataRegister(寄存器地址:0x0A)●校验STACON寄存器,以确定这次的“LOAD_KEY”密码存取是否有效以下将按照上述的次序进行具体的程序设计,所有的程序都使用标准的Intel-51MCU指令,以利于读者在LOW-LEVEL级上移植到其相应的应用项目中。
3.1.1设置新的密码值新的密码值为6个bytes,在如下的程序设计中被依次存放在MCU内部RAM的72H~77H的6个单元中;程序员亦可自定义其他的存储单元作为新的密码值存放的缓冲区;R1寄存器为新密码缓存首地址指针。
如下所设置新的密码值为:“AAAAAAAAAAAA”SETUP_NEW_KEY_VALUE:;MOV R7,#06H;密码长度为6bytesMOV R1,#72H;R1为新密码缓存首地址指针MOV @R1,#0AAH;设置新密码值MOV 73H,#0AAHMOV 74H,#0AAHMOV 75H,#0AAHMOV 76H,#0AAHMOV 77H,#0AAH良好的经验告诉我们,为了确保整个智能卡系统的高度安全保密,我们有必要在程序设计中,在完成了“密码操作”之后,立即清除存放新的密码值的缓冲区,简单的方法如下:CLEAR_NEW_KEY_BUFFER:MOV R7,#06H;密码长度为6bytesMOV R1,#72H;R1为新密码缓存首地址指针CLEAR_LOOP:MOV @R1,#00H;清除新密码值所在缓冲区INC R1DJNZ R7,CLEAR_LOOP3.1.2设置密码状态/控制寄存器KeyStatus&ControlRegister(KEYSTACON)KEYSTACON寄存器是一个只可读不可写的寄存器(存储器),它指示出“密码操作”时所处的状态和要控制的ASIC内部“密码存储器RAM”的选择。
这里所指的“状态”是指本次“密码操作”两个主要步骤中的一个。
KEYSTACON寄存器是一个8-bit的存储器,其中有用的位(bit)只有3位。
其具体内容为:其中,MSB(“A/L”位)若被设置为“0”,则意味着当前“密码操作”的“状态”是“LOAD_KEY(密码存取)”;若被设置为“1”,则当前“密码操作”的“状态”是“AUTHENTICATION(密码认证)”。
最后 2个bit:KS0KS1是密码集keyset的选择。
在ASIC中共有3套密码集(keyset)和一个传输密码(TransportKey)可被选择。
设置KS0、KS1的值实际上是在选择(寻址)ASIC模块内部存放密码的不同的存储器单元(密码箱)。
如果“LOAD_KEY”(密码存取)时使用了keyset0,则“AUTHENTICATION”(密码认证)时只能使用keyset0,而不能使用keyset1或keyset2或其他,因为在ASIC模块内,keyset0指定的密码存储器地址单元与keyset1或keyset2所指定的密码存储器地址单元是不同的单元。
这就好比去超级市场购物,入超市前您把您的包裹寄存在超市门前包裹箱A中,并得到打印有开起包裹箱A的(开箱)密码纸条;当您欲取回包裹时,拿着包裹箱A的(开箱)密码纸条而去开包裹箱B或C的箱门,当然不能打开,因为您的地址(箱号)不对,当然您的包裹也不能拿到。
这是密码的认证出错。
在ASIC中有相同之处。
如果“LOAD_KEY”(密码存取)时使用了keyset0,并存放上密码,而在“AUTHENTICATION”(密码认证)时却使用keyset1或keyset2或其他而来验证刚才存放的密码,当然会得到ASIC模块返回的认证出错(“AE=1”)。
当KS1KS0=“00”时,选择使用keyset0;当KS1KS0=“01”时,选择使用keyset1;当KS1KS0=“10”时,选择使用keyset2;当KS1KS0=“11”时,选择使用传输密码(TransportKey)。
以下是设置密码状态/控制寄存器KeyStatus&ControlRegister(KEYSTACON)的程序:SETUP_KEYSTACON:MOV 7EH,#00000000B;选择使用keyset0,并指明是“LOAD_KEY”MOV A,7EH ;7EH单元存放了设置KEYSTACON的值MOV R0,#0BH ;KEYSTACON寄存器地址为0BhOVX @R0,A ;设置KEYSTACON寄存器如果我们要选择使用keyset2,则相应可以设置7EH单元为#00000010b(0x02),即: MOV 7EH,#00000010B3.1.3设置密码地址寄存器KeyAddressRegister(寄存器地址:0x0C)在成功地完成了对密码状态/控制寄存器(KEYSTACON)的设置之后,必须立即对密码地址寄存器KeyAddressRegister进行设置,而不能对密码数据寄存器KeyDataRegister进行设置或做其他设置,否则将出错。