验证和认证的区别?

2023-12-14

如您所知,我们通过以下方式向卡证明我们是真实用户INITIAL UPDATE and EXTERNAL AUTHENTICATION命令,如下:

< 80 50 00 00 08 | Host Challenge
> ...
< 84 82 03 00 10 | Host Cryptogram | MAK
> ...

我想知道这个认证过程和之前的认证过程有什么区别VERIFYING处理与CLA 20 P1 P2 Lc Data Le APDU?

所有卡都支持吗?或者每张卡都使用这种机制之一?


Update:如您所见,我成功上传并安装了我的小程序到卡上,[无需使用验证]!

那么为什么我需要验证:

C:\Users\ghasemi\Desktop\gpj-20120310>gpj -load e:\helloW.cap -install

C:\Users\ghasemi\Desktop\gpj-20120310>java -jar gpj.jar -load e:\helloW.cap -ins
tall
Found terminals: [PC/SC terminal ACS CCID USB Reader 0]
Found card in terminal: ACS CCID USB Reader 0
ATR: 3B 68 00 00 00 73 C8 40 12 00 90 00
DEBUG: Command  APDU: 00 A4 04 00 07 A0 00 00 01 51 00 00
DEBUG: Response APDU: 6A 82
Failed to select Security Domain GP211 A0 00 00 01 51 00 00 , SW: 6A 82
DEBUG: Command  APDU: 00 A4 04 00 08 A0 00 00 00 18 43 4D 00
DEBUG: Response APDU: 6A 82
Failed to select Security Domain GemaltoXpressPro A0 00 00 00 18 43 4D 00 , SW:
6A 82
DEBUG: Command  APDU: 00 A4 04 00 08 A0 00 00 00 03 00 00 00
DEBUG: Response APDU: 6F 10 84 08 A0 00 00 00 03 00 00 00 A5 04 9F 65 01 FF 90 0
0
Successfully selected Security Domain OP201a A0 00 00 00 03 00 00 00
DEBUG: Command  APDU: 80 50 00 00 08 A7 C9 58 B7 D1 B6 84 E9
DEBUG: Response APDU: 00 00 11 60 01 00 8A 79 0A F9 FF 02 00 31 DF AA 47 16 6E 9
7 B8 02 20 8F 8E A0 1B 88 90 00
DEBUG: Command  APDU: 84 82 00 00 10 0D D7 A4 DF 75 E4 CA 5C 9E EE 25 3F 96 A7 8
A 8B
DEBUG: Response APDU: 90 00
DEBUG: Command  APDU: 84 82 00 00 08 0D D7 A4 DF 75 E4 CA 5C
DEBUG: Response APDU: 90 00
DEBUG: packagePath: helloWorldPackage/javacard/
DEBUG: package: helloWorldPackage
DEBUG: package AID: 01 02 03 04 05 06 07 08 09 00
DEBUG: applet AIDs: [01 02 03 04 05 06 07 08 09 00 00 ]
DEBUG: Command  APDU: 80 E6 02 00 17 0A 01 02 03 04 05 06 07 08 09 00 08 A0 00 0
0 00 03 00 00 00 00 00 00
DEBUG: Response APDU: 00 90 00
DEBUG: Command  APDU: 80 E6 02 00 17 0A 01 02 03 04 05 06 07 08 09 00 08 A0 00 0
0 00 03 00 00 00 00 00 00
DEBUG: Response APDU: 00 90 00
DEBUG: Command  APDU: 80 E8 00 00 FF C4 82 01 49 01 00 14 DE CA FF ED 01 02 04 0
0 01 0A 01 02 03 04 05 06 07 08 09 00 02 00 1F 00 14 00 1F 00 0F 00 0B 00 2E 00
0C 00 7D 00 18 00 12 00 00 00 6F 00 02 00 01 00 0B 01 01 00 04 00 0B 01 02 01 07
 A0 00 00 00 62 01 01 03 00 0F 01 0B 01 02 03 04 05 06 07 08 09 00 00 00 08 06 0
0 0C 00 80 03 00 FF 00 07 01 00 00 00 1C 07 00 7D 00 01 10 18 8C 00 00 7A 05 30
8F 00 01 3D 8C 00 02 18 1D 04 41 18 1D 25 8B 00 03 7A 02 23 18 8B 00 04 60 03 7A
 19 8B 00 05 2D 1A 03 25 11 00 FF 53 5B 32 1A 04 25 11 00 FF 53 5B 29 04 1F 60 0
8 11 6E 00 8D 00 06 16 04 73 00 10 00 00 00 00 00 09 18 19 8C 00 07 70 08 11 6D
00 8D 00 06 7A 05 22 19 8B 00 05 2D 7B 00 08 92 32 7B 00 08 03 1A 03 1F 8D 00 09
 3B 19 03 1F 8B 00 0A 7A 08 00 18 00 02 00 01 00 01 03 00 0B 48 65 64 61 79 74 2
0
DEBUG: Response APDU: 00 90 00
DEBUG: Command  APDU: 80 E8 00 00 FF C4 82 01 49 01 00 14 DE CA FF ED 01 02 04 0
0 01 0A 01 02 03 04 05 06 07 08 09 00 02 00 1F 00 14 00 1F 00 0F 00 0B 00 2E 00
0C 00 7D 00 18 00 12 00 00 00 6F 00 02 00 01 00 0B 01 01 00 04 00 0B 01 02 01 07
 A0 00 00 00 62 01 01 03 00 0F 01 0B 01 02 03 04 05 06 07 08 09 00 00 00 08 06 0
0 0C 00 80 03 00 FF 00 07 01 00 00 00 1C 07 00 7D 00 01 10 18 8C 00 00 7A 05 30
8F 00 01 3D 8C 00 02 18 1D 04 41 18 1D 25 8B 00 03 7A 02 23 18 8B 00 04 60 03 7A
 19 8B 00 05 2D 1A 03 25 11 00 FF 53 5B 32 1A 04 25 11 00 FF 53 5B 29 04 1F 60 0
8 11 6E 00 8D 00 06 16 04 73 00 10 00 00 00 00 00 09 18 19 8C 00 07 70 08 11 6D
00 8D 00 06 7A 05 22 19 8B 00 05 2D 7B 00 08 92 32 7B 00 08 03 1A 03 1F 8D 00 09
 3B 19 03 1F 8B 00 0A 7A 08 00 18 00 02 00 01 00 01 03 00 0B 48 65 64 61 79 74 2
0
DEBUG: Response APDU: 00 90 00
DEBUG: Command  APDU: 80 E8 80 01 4E 3A 29 20 20 00 00 00 00 05 00 2E 00 0B 06 8
0 03 00 01 00 00 00 06 00 00 01 03 80 03 02 03 80 03 03 03 80 0A 01 06 80 07 01
06 00 00 5F 05 00 00 00 06 80 10 02 03 80 0A 08 09 00 12 00 00 00 0E 05 06 04 0A
 07 07 1D 10 08 07 04 05 07 07
DEBUG: Response APDU: 00 90 00
DEBUG: Command  APDU: 80 E8 80 01 4E 3A 29 20 20 00 00 00 00 05 00 2E 00 0B 06 8
0 03 00 01 00 00 00 06 00 00 01 03 80 03 02 03 80 03 03 03 80 0A 01 06 80 07 01
06 00 00 5F 05 00 00 00 06 80 10 02 03 80 0A 08 09 00 12 00 00 00 0E 05 06 04 0A
 07 07 1D 10 08 07 04 05 07 07
DEBUG: Response APDU: 00 90 00
DEBUG: Command  APDU: 80 E6 0C 00 29 0A 01 02 03 04 05 06 07 08 09 00 0B 01 02 0
3 04 05 06 07 08 09 00 00 0B 01 02 03 04 05 06 07 08 09 00 00 01 00 02 C9 00 00

DEBUG: Response APDU: 00 90 00
DEBUG: Command  APDU: 80 E6 0C 00 29 0A 01 02 03 04 05 06 07 08 09 00 0B 01 02 0
3 04 05 06 07 08 09 00 00 0B 01 02 03 04 05 06 07 08 09 00 00 01 00 02 C9 00 00

DEBUG: Response APDU: 00 90 00

根据:ISO 7816-4:智能卡交换行业间命令。

VERIFY 命令启动比较从接口设备发送的验证数据与卡中存储的参考数据(例如密码)一起存储在卡中。

AUTHENTICATE 命令启动计算卡使用从接口设备发送的质询数据和卡中存储的相关秘密(例如密钥)来验证数据。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

验证和认证的区别? 的相关文章

  • 在智能卡上上传 .cap 文件?

    我有一张新卡 其 ATR 代码如下 3B 68 00 00 00 73 C8 40 12 00 90 00 我在谷歌上搜索了这张ATR 最后我知道这是一张 巴西电子公积金卡 问题是我该如何使用这张卡 我的意思是它支持哪些 APDU 有它的数
  • 如何在 RDP 期间访问远程 USB 智能卡

    我的设置 RDP 客户端 Win7 RDP gt 远程带智能卡的服务器 Win2k8R2 我发现无数的答案表明这是不可能的 很多答案表明 RDP 是为了安全性而设计的 智能卡被锁定 在使用远程桌面连接 RDP 进行远程连接时不允许看到设备
  • 如何为多个进程缓存 eToken PIN

    我有一个 NET c 应用程序 它使用 我的 证书存储中的 x509Certificate2 最初来自 eToken 设备 当我使用证书 解密数据或将其用作 Web 请求的客户端证书 时 它会询问设备 PIN 一次 之后 它会被缓存 用户不
  • 处理方法未从主机接收完整的 APDU 命令?

    主机向小程序发送以下命令选择EF文件 00 A4 02 00 02 40 01 目的是选择带ID的EF文件40 01 在命令的数据字段中指定 但是当我调试 process APDU apdu 方法时 APDU 缓冲区仅包含前 5 个字节00
  • 验证和认证的区别?

    如您所知 我们通过以下方式向卡证明我们是真实用户INITIAL UPDATE and EXTERNAL AUTHENTICATION命令 如下 lt 80 50 00 00 08 Host Challenge gt lt 84 82 03
  • Java 9、10、11、12...等中的 javax.smartcardio

    从 Java 9 开始 javax smartcardio 库发生了什么 有替代方法或某种方式在 JAR 中获取它吗 在网上搜索了几个小时后 感谢上面的答案 据我了解 Java 9 及更高版本是模块化的 这是几年前计划的语言改进 此外 在新
  • JavaCard 中的类字节到底是什么?

    我已经开始使用 JavaCards 并试图掌握 CLA 字节的含义 如果要读RFC 5 4 1 类字节 http www cardwerk com smartcards smartcard standard ISO7816 4 5 basi
  • 使用 ACR122 在卡模拟模式下将数据写入 Nexus 4

    我正在尝试通过 NFC 即卡模拟模式 向 Nexus 4 发送一些数据 我尝试了许多命令 APDU 例如写入和更新 APDU 但无法让它们工作 我想说的是 我想在选择 APDU 命令后向手机发送一些数据 不是 AID 提前致谢 Bader
  • 从欧洲DTCO公司卡读取数据

    我需要能够从欧洲数字行车记录仪公司卡 智能卡 读取卡和公司识别数据 这些在文档中进行了描述委员会条例 EC No 1360 2002 http eur lex europa eu LexUriServ LexUriServ do uri O
  • 智能卡读卡器命名

    我的系统中有两个读卡器 HID OMNIKEY 5321 每个读卡器执行不同的功能 读卡器 1 智能卡读卡器0 读卡器 2 智能卡读卡器1 在我的程序中设置了 智能卡读卡器0 动作 1 智能卡读卡器1 动作 2 但有时 无需重新启动 可能失
  • 由另一个线程建立的独占访问 Java smartcardio

    All 我很欣赏这个网站上的许多有用的答案 但我发现有必要发布我的第一个问题 如果您发现我的帖子中有任何需要改进的地方 请告诉我 我有一个中等大小的带有 GUI 的 Java 程序 它充当 中间人 和控制器 在信息流的一端 它通过 HTTP
  • 是否有免费的虚拟智能卡可供我用来运行一些测试?

    我想这没有什么区别 但我会尝试使用 Java 应用程序来访问它 更新 我将在公钥 私钥加密系统中使用智能卡 智能卡有不同类型 您没有明确说明您指的是哪种测试 但我猜您正在谈论加密智能卡 JavaCard 开发套件包含一个参考 JCRE 可用
  • Javacard 共享接口:lookupAID 返回 AID,但 getAppletShareableInterface 返回 null

    编辑2 发现错误 我尝试在构造函数中初始化 Shareable 对象 此时客户端的register方法还没有被调用 所以JCRE没有它的AID 虽然我的服务器的 getShareableInterfaceObject AID clienta
  • Java 卡连接到模拟器失败

    我正在尝试测试 Java Card 小程序以建立与 cref 等模拟器的连接 try sckClient new Socket localhost 9025 InputStream is sckClient getInputStream O
  • EMV 读取 PAN 代码

    我需要通过芯片读取每张可能的卡的 PAN 代码 在我的工作中 我只能使用 C 而且我没有可以帮助我完成这项无聊任务的例程 这就是我使用 APDU 的步骤 1 选择1PAY SYS DDF01 00 A4 0400 0E 315041592E
  • 将证书从智能卡复制到计算机

    是否可以将证书从智能卡复制到计算机并 用它来登录某个站点 在 Mac 上 这些证书出现在钥匙串中 并且可以保存到磁盘 但我不确定如何强制站点提示对话框屏幕以选择证书 连接智能卡后 会出现提示并要求选择证书 智能卡包含由封装在 X509 证书
  • 如何将CAP文件加载到java卡

    我是java卡的新手 你能帮我看看如何将Applet CAP文件解析为APDU吗 用于将此 CAP 文件安装到支持 GP2 2 的卡上 你应该尝试使用GPShell http sourceforge net projects globalp
  • Javacard 中的 ECDSA 签名

    我正在 Javacard 中使用 ECDSA 实现签名代码 我的代码在异常部分输出 0x0003 NO SUCH ALGORITHM 这意味着该卡不支持该算法 我不明白这一点 因为我的供应商告诉我它支持 ECC 我的结论是 我不知道如何使用
  • 在智能卡中选择DF(专用文件),返回错误6981

    我编写了一个与智能卡通信的程序 Gemalto 公司 MPCOS 小程序 我可以成功连接到卡并传输命令并获取数据 但是我有一个问题 当我使用00 A4 01 00 02 02 00命令选择 DF 专用文件 它返回了错误69 81 文件指示符
  • 智能卡 CMS 解密

    我在用着充气城堡管理我的项目的加密功能 我设法使用CMS用于加密和解密 两个密钥都存储在我的文件系统中 a cert and a p12 这是我实际使用的两个函数 private static byte CmsEncrypt byte me

随机推荐

  • Objective-C NSString 引用类型

    我有一个简单的问题 如果我声明 NSString 引用类型 如下所示 NSString johnsMoney 200 NSString marysMoney johnsMoney NSLog Johns Money johnsMoney N
  • 如何在git中维护生产和开发分支?

    在我的项目中我有这个constants ts存储我的文件API URL 我想在我的生产 主 和开发分支中保留两个 API URL 例如 开发 gt API URL http localhost 4000 主要 gt APIURL https
  • 通过模拟器设置温度

    我在模拟器上运行此代码来读取温度变化 但它从未检测到温度变化onSensorChanged 我使用此命令通过 telnet 工具更改温度 传感器设定温度1 2 3 我做错了什么 public class SensorActivity ext
  • 如何使用 Java StAX 格式化和读取 XML 处理指令?

    首先 我如何格式化XML处理指令 是不是 使用 StAX 然后我想通过处理来读取它XMLStreamConstants PROCESSING INSTRUCTION javadoc 事件 但它只提供了两种方法来从事件中检索有关处理指令的信息
  • 将 MYSQL 日期时间四舍五入到最早的 15 分钟间隔(以毫秒为单位)(PHP)

    我正在从 MYSQL 获取日期时间 如下所示 2010 08 11 11 18 28 我需要将其转换为 下限 或最早的 15 分钟间隔 并以毫秒为单位输出给另一个函数 所以 这种情况是 2010 08 11 11 15 00 以毫秒为单位
  • 重定向期间在 RestSharp 中保留授权标头

    我正在使用 RestSharp 进行 GET api 调用 api 调用通过传递授权标头通过 HTTP 基本身份验证进行身份验证 服务器使用状态代码 307 重定向 api 调用 我的客户端代码确实处理重定向 但授权标头未传递到此重定向的
  • Fiddler2:解密 HTTPS 流量和到主机的隧道:443

    我使用Fiddler2来分析一些使用https连接的页面 我启用了 HTTPS 解密 但我的日志中仍然看到一些 Tunnel to host 443 条目 我可以在日志中看到解密的 HTTPS 流量 因此我假设解密有效 我认为 打开连接时
  • 如何使用 CSS 使背景变暗?

    我有一个包含文本的元素 每当我降低不透明度时 我就会降低整个身体的不透明度 有什么办法可以让我background image更暗 而不是其他一切 background image url http fc02 deviantart net
  • 在mysql中使用单个关键字从多个表中搜索[重复]

    这个问题在这里已经有答案了 我有3张桌子 表 1 用户 uid uname 1 John99 2 Steve12 3 Smith a 4 Robert t 5 Williams a 表 2 名字 eid fname 1 John
  • 如何将我在 name.com 上购买的域名与我的 herokuapp 连接起来?

    我在 Name com 上购买了域名 我在 heroku 上找到了我的应用程序 在heroku上添加了一个新的 自定义域 Domain Name DNS Target mydomain com mydomain com herokudns
  • 如何打包我正在使用的 python 库,以便我可以将它们与我的应用程序一起分发,并尽可能减少依赖项

    如何打包我正在使用的 python 库 以便我可以将它们与我的应用程序一起分发 并具有尽可能少的依赖项 并且不与我的系统上已有的不同库 版本发生冲突 L E 抱歉我忘了具体说明 我将在 Linux 上执行此操作 我并不是指使我的应用程序成为
  • string.find(" ") 未找到空格

    我正在尝试在用户输入的字符串中查找空格 我想用find from std string返回空间的位置 如果输入是 西雅图 华盛顿州美国 我想要find 0 回来8 我该怎么做 第八个是 后面的空格 string inputString co
  • 如何使用 xcopy 从文本文件复制文件和文件夹结构?

    我有一个包含文件和文件夹列表的文本文件 我想做的是使用 xcopy 复制文本文件中写入的内容 我的文本文件如下所示 C FOLDER C FOLDER FILE1 TXT C FOLDER FILE2 TXT C FOLDER FOLDER
  • 使用 python 提取网页上的 URL 列表的简单方法是什么? [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 我想创建一个简单的网络爬虫来娱乐 我需要网络爬虫来获取一页上所有链接的列表 python 库是否有任何内置函数可以使这变得更容易 感谢任何知识赞赏 这实际上非常简单美丽汤 from B
  • C# 被视为上下文无关语言吗?

    我一直在寻找这个问题 但是这个问题在网上有很多不同的答案MSDN 论坛 有人说 所有计算机语言语法都是上下文无关的 还有人说任何具有空白敏感语法的语言都可能是上下文相关的 因此不是上下文无关的 F 和 Python 会好的明确的答案也许还有
  • 具有不同 base_site.html 的多个管理站点

    我希望有多个管理站点 每个站点都有不同的基本模板 我可以创造admin base site html并将该路径添加到TEMPLATE DIRS在前面 以便base site html优先 但它会覆盖多个管理站点 有没有办法自定义每个管理站点
  • 如何在 R 中保存 data.frame?

    我在 R 中制作了一个不是很大的 data frame 但构建起来需要相当长的时间 我想将它保存为一个文件 然后我可以在 R 中再次打开它吗 有几种方法 一种方法是使用save 保存确切的对象 例如用于数据框foo save foo fil
  • 仅解析大型 JSON 字符串中的一个字段

    我有一个以下格式的 JSON 字符串 foo small vale baz large value bar another large value 如何高效提取foo而忽略其余字段 基本上 我使用 Gson 并定义了一个 精益类 如下所示
  • QWebEngineView 中的 Qt 事件传播

    我有一个名为generate input event 我正在尝试使用此函数来模拟 QWebEngineView 中的按键 def generate input event window id key code modifiers low l
  • 验证和认证的区别?

    如您所知 我们通过以下方式向卡证明我们是真实用户INITIAL UPDATE and EXTERNAL AUTHENTICATION命令 如下 lt 80 50 00 00 08 Host Challenge gt lt 84 82 03