0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

射频识别技术漫谈(12)——三次相互认证

阗笑 来源:魏道志 作者:魏道志 2023-10-11 16:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

射频识别系统中由于卡片和读写器并不是固定连接为一个不可分割的整体,二者在进行数据通讯前如何确信对方的合法身份就变得非常重要。根据安全级别的要求不同,有的系统不需认证对方的身份,例如大多数的TTF模式的卡片;有的系统只需要卡片认证读写器的身份或者读写器认证卡片的身份,称为单向认证;还有的系统不仅卡片要认证读写器的身份,读写器也要认证卡片的身份,这种认证我们称为相互认证。Mifare系列卡片中的认证就是相互认证。
最常见的认证是使用密码或者叫口令,就像特务见面,只要说对了口令(密码)就可以确信对方是自己人。直接说口令(密码)存在巨大的风险,万一被别人听到了后果不堪设想,所以最好不要直接说出密码,而是通过某种方式(运算)把密码隐含在一串数据里,这样不相干的人听到了也不知道什么意思。为了让隐含着密码的这一串数据没有规律性,对密码运算时一定要有随机数的参加。于是最常见的相互认证是双方见面时一方给另一方一个随机数,让对方利用密码和约定的算法对这个随机数进行运算,如果结果符合预期则认证通过,否则认证不通过。
“3”真是一个神奇的数字:做事的时候“三思而后行”才不会犯大错;刘备“三顾茅庐”才把诸葛亮请出山;TCP协议中经过“三次握手”就可以确信双方的连接是成功的。Mifare系列卡片采用的相互认证机制也被称为“三次相互认证”,如下图所示。

wKgZomUmWkmAIPi0AAApoWBdMpc840.png

卡片认证读写器的合法性,先向读写器发送一个随机数,读写器用事先约定的有密码参与的算法对随机数进行运算,然后把运算的结果回送给卡片,卡片收到后检查这个结果对不对,如果对就通过认证,不对就没有通过认证,其情形就是上图中的图a。
读写器认证卡片也是向卡片发送一个随机数,卡片用事先约定的有密码参与的算法对随机数进行运算,然后把运算的结果回送给读写器,读写器收到后检查这个结果对不对,如果对就通过认证,不对就没有通过认证,其情形就是上图中的图b。
可见卡片和读写器认证对方时都是给对方一个随机数,对方返回对随机数的运算结果。这样的“一来一回”我们称之为“两次相互认证”。那么卡片与读写器互相认证就需要两个“一来一回”,应该称为“四次相互认证”才对啊?为什么是“三次相互认证”呢?上图中表现的很明显,读写器在回送对卡片随机数的运算结果时搭了一次便车,把自己认证卡片的随机数也一同送了过去,从而减少了一次数据传送,四次相互认证就变成了“三次相互认证”。
完整的相互认证过程如下:卡片先向读写器发送一个随机数B,读写器用事先约定的有密码参与的算法对随机数B进行运算,然后把运算的结果连同随机数A一起送给卡片,卡片收到后先检查读写器对随机数B运算的结果对不对,如果不对就不再往下进行,如果正确就对随机数A用事先约定的有密码参与的算法进行运算,然后把运算的结果送给读写器,读写器收到后检查这个结果对不对,如果对就通过认证,不对就没有通过认证,其情形就是上图中的图c。
认证的过程中多次提到“事先约定的算法”,到底是什么样的算法呢。这个没有具体规定,但有一个要求是必须的,就是这个算法一定要有密码和随机数的参与。比如Desfire中使用3DES算法,卡片的主密钥作为DES密钥对随机数进行DES运算。双方使用的“算法”以及“参加运算的密码”可以相同,也可以不同,这要看双方的约定。
认证完成后随机数也并不是就没有用了,这两个随机数的组合可以作为下一步操作的数据加密密钥,Desfire中就是这样。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • RFID
    +关注

    关注

    392

    文章

    6747

    浏览量

    246724
  • 射频识别技术

    关注

    0

    文章

    98

    浏览量

    17309
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    TCP的三次握手

    ,Server进入SYN_RCVD状态。 (3)第三次握手:Client收到确认后,检查ack是否为J+1,ACK是否为1,如果正确则将标志位ACK置为1,ack=K+1,并将该数据包发送给Server
    发表于 12-02 07:16

    TCP三次握手和四挥手,这样解释太通俗易懂了!

    TCP连接的建立和释放分别通过“三次握手”和“四挥手”来完成。三次握手过程TCP三次握手是建立可靠网络连接的关键过程,它用于确保通信双方能够正常发送和接收数据,并提供可靠的数据传输机
    的头像 发表于 04-24 19:33 1281次阅读
    TCP<b class='flag-5'>三次</b>握手和四<b class='flag-5'>次</b>挥手,这样解释太通俗易懂了!

    柔宇科技资产三次流拍,第四将分拆设备拍卖

    1月4日,柔宇拍卖再次以无人出价而流拍。本次拍卖起拍价为7.87亿元,这是继2024年12月15日(起拍价12.3亿元)、12月25日(起拍价9.84亿元)之后的第三次流拍。 柔宇科技在第三次
    的头像 发表于 01-09 18:25 1173次阅读

    三次元测量仪校准方法

    在现代制造业中,精确的测量对于保证产品质量至关重要。三次元测量仪作为一种高精度的测量工具,广泛应用于汽车、航空、电子等行业。为了确保测量结果的准确性,定期校准三次元测量仪是必不可少的。 一、校准前
    的头像 发表于 01-06 09:38 2139次阅读

    三次元测量仪故障排除技巧

    三次元测量仪是现代制造业中不可或缺的精密测量工具。它们广泛应用于汽车、航空、电子和模具制造等行业。由于其高精度和复杂性,当三次元测量仪出现故障时,需要专业的故障排除技巧来确保设备的正常运行。 故障
    的头像 发表于 01-06 09:36 2048次阅读

    三次元测量仪使用技巧

    在现代制造业中,精确的测量是保证产品质量的关键。三次元测量仪作为一种高精度的测量工具,广泛应用于机械加工、汽车制造、航空航天等领域。 1. 了解测量仪的基本构造和功能 在使用三次元测量仪之前,操作者
    的头像 发表于 01-06 09:29 2866次阅读

    三次元测量仪应用领域

    在现代工业生产中,对产品精度的要求越来越高,这促使了高精度测量技术的发展。 1. 汽车制造业 汽车制造业是三次元测量仪应用最为广泛的领域之一。在汽车零部件的设计、制造和质量控制过程中,需要对发动机
    的头像 发表于 01-06 09:27 1502次阅读

    如何监测TCP三次握手过程

    在计算机网络中,传输控制协议(TCP)是确保数据可靠传输的关键协议之一。TCP通过三次握手过程来建立两个端点之间的连接,这个过程对于网络通信的稳定性和安全性至关重要。 TCP三次握手过程概述 在深入
    的头像 发表于 01-06 09:20 1279次阅读

    TCP三次握手与负载均衡的配置

    Balancing)是一种在多个服务器之间分配网络流量的技术,用于提高吞吐量、可用性和容错能力。 TCP三次握手 1. 建立连接 TCP三次握手的过程如下: 第一握手(SYN) 客
    的头像 发表于 01-06 09:15 907次阅读

    TCP三次握手的常见问题及解决方案

    TCP三次握手(Three-way Handshake)是TCP(传输控制协议)建立连接时的一个过程,它确保了两个端点在开始通信之前都准备好了。这个过程包括三次通信:SYN(同步),SYN-ACK
    的头像 发表于 01-06 09:11 1835次阅读

    TCP三次握手与连接建立的关系

    在计算机网络中,TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。它负责在两个主机之间建立、维护和终止连接,确保数据的可靠传输。TCP连接的建立过程是通过三次握手
    的头像 发表于 01-06 09:09 1157次阅读

    TCP三次握手安全性分析

    TCP(传输控制协议)的三次握手是建立可靠连接的重要机制,它确保了通信双方在数据传输前的连接状态是可靠和准确的。然而,从安全性的角度来分析,TCP三次握手并非无懈可击,以下是对其安全性的详细分析
    的头像 发表于 01-03 18:10 1553次阅读

    TCP三次握手的基本原理

    在计算机网络中,TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。它确保了数据在网络中传输的可靠性和顺序性。为了建立两个网络实体之间的通信,TCP使用一种称为“三次握手
    的头像 发表于 01-03 17:25 1594次阅读

    TCP三次握手协议的作用

    在计算机网络中,数据的传输需要在发送方和接收方之间建立一个稳定的连接,以确保数据的完整性和顺序。TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,它通过三次握手协议来建立
    的头像 发表于 01-03 17:15 1438次阅读

    TCP三次握手的详细过程

    TCP(传输控制协议)三次握手是一种在互联网上建立一个可靠的、有序的和错误检测能力的连接的方法。这个过程确保了两个设备(通常是客户端和服务器)在数据传输开始之前能够相互确认对方的存在和状态。以下
    的头像 发表于 01-03 17:11 1824次阅读