热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

智能卡外部认证

ExternalAuthenticate外部认证是IC卡对外部读写卡的机具读卡器,进行合法性认证读卡器机具这边一个密钥,IC卡内一个密钥IC卡需要确

External Authenticate

外部认证是IC卡 对 外部 读写卡的机具 读卡器,进行合法性认证

读卡器机具这边一个密钥,
IC卡内一个密钥
IC卡需要确认外部的读卡器是有资格读这个卡的,所以需要对其资格进行认证。
认证的方式是确定IC卡拥有的密钥是否和读卡器拥有的密钥相同或者对应。
具体方法是:
读卡器给IC卡发送一个取随机数的命令,
IC卡返回给读卡器一个4字节的随机数,并且IC卡将该随机数在卡的内存中保存。
读卡器得到4字节随机数,对4字节随机数补足0x00000000共8个字节,64位,利用密钥进行DES加密,生成8个字节的加密后的密文数据。
读卡器将生成的加密后的8个字节的密文数据,通过命令传送给IC卡。
IC卡得到加密后的8个字节的密文数据,
在卡内,对密文数据,通过密钥,解密,将解密后的数据,与之前保存的随机数,进行比较,如果相同,表示外部认证通过IC卡认为外部的读卡器是一个合法的读卡器。
如果外部认证通过,IC卡对该读卡器放开安全戒备,读卡器可以进一步的对IC卡内的文件进行读写之类的操作。
如果外部认证没有通过,那么读卡器的进一步的对IC卡内文件的操作,将会返回错误。

用到的命令:

取随机数:

代码
CLA0000
INS8484
P10000
P20000
Lc不存在
Data不存在
Le要读取数据的长度04

外部认证命令:
取随机数:

代码
CLA0000
INS8282
P10000
P2外部认证密钥标识号01
Lc0808
Data8字节加密后的随机数8字节加密后的随机数
Le不存在

这里写图片描述

这里写图片描述

参考手册《新版FMCOS2.0用户手册.pdf》
page51:


推荐阅读
  • 本文探讨了如何利用HTML5和JavaScript在浏览器中进行本地文件的读取和写入操作,并介绍了获取本地文件路径的方法。HTML5提供了一系列API,使得这些操作变得更加简便和安全。 ... [详细]
  • 本文详细介绍了 Linux 系统中用户、组和文件权限的设置方法,包括基本权限(读、写、执行)、特殊权限(SUID、SGID、Sticky Bit)以及相关配置文件的使用。 ... [详细]
  • 2017-2018年度《网络编程与安全》第五次实验报告
    本报告详细记录了2017-2018学年《网络编程与安全》课程第五次实验的具体内容、实验过程、遇到的问题及解决方案。 ... [详细]
  • Barbican 是 OpenStack 社区的核心项目之一,旨在为各种环境下的云服务提供全面的密钥管理解决方案。 ... [详细]
  • 应对.avast后缀勒索病毒:全面指南
    本文详细介绍了.avast后缀勒索病毒的特性、感染途径、恢复方法及预防措施,旨在帮助用户有效应对这一威胁。 ... [详细]
  • 如何使用Ping命令来测试网络连接?当网卡安装和有关参数配置完成后,可以使用ping命令来测试一下网络是否连接成功。以winXP为例1、打开XP下DOS窗口具体操作是点击“开始”菜 ... [详细]
  • 本文探讨了如何解决PHP文件无法写入本地文件的问题,并解释了PHP文件中HTML代码无效的原因,提供了一系列实用的解决方案和最佳实践。 ... [详细]
  • 深入解析Java虚拟机(JVM)架构与原理
    本文旨在为读者提供对Java虚拟机(JVM)的全面理解,涵盖其主要组成部分、工作原理及其在不同平台上的实现。通过详细探讨JVM的结构和内部机制,帮助开发者更好地掌握Java编程的核心技术。 ... [详细]
  • 使用PHP实现网站访客计数器的完整指南
    本文详细介绍了如何利用PHP构建一个简易的网站访客统计系统。通过具体的代码示例和详细的解释,帮助开发者理解和实现这一功能,适用于初学者和有一定经验的开发人员。 ... [详细]
  • 在高并发需求的C++项目中,我们最初选择了JsonCpp进行JSON解析和序列化。然而,在处理大数据量时,JsonCpp频繁抛出异常,尤其是在多线程环境下问题更为突出。通过分析发现,旧版本的JsonCpp存在多线程安全性和性能瓶颈。经过评估,我们最终选择了RapidJSON作为替代方案,并实现了显著的性能提升。 ... [详细]
  • 本文回顾了2017年的转型和2018年的收获,分享了几家知名互联网公司提供的工作机会及面试体验。 ... [详细]
  • Python + Pytest 接口自动化测试中 Token 关联登录的实现方法
    本文将深入探讨 Python 和 Pytest 在接口自动化测试中如何实现 Token 关联登录,内容详尽、逻辑清晰,旨在帮助读者掌握这一关键技能。 ... [详细]
  • 版本控制工具——Git常用操作(下)
    本文由云+社区发表作者:工程师小熊摘要:上一集我们一起入门学习了git的基本概念和git常用的操作,包括提交和同步代码、使用分支、出现代码冲突的解决办法、紧急保存现场和恢复 ... [详细]
  • 如何使用 CleanMyMac X 2023 激活码解锁完整功能
    本文详细介绍了如何使用 CleanMyMac X 2023 激活码解锁软件的全部功能,并提供了一些优化和清理 Mac 系统的专业建议。 ... [详细]
  • 深入理解Java多线程并发处理:基础与实践
    本文探讨了Java中的多线程并发处理机制,从基本概念到实际应用,帮助读者全面理解并掌握多线程编程技巧。通过实例解析和理论阐述,确保初学者也能轻松入门。 ... [详细]
author-avatar
v88v的秋天
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有