如何正确构造获取处理选项命令消息

2024-03-18

EMV Book_3 说:

CLA: 80
INS:A8
第1页:00
P2:00
LC:无功
数据:处理选项数据对象列表 (PDOL) 相关数据
乐:00

我的 APDU 命令如下所示:“80 A8 00 00 0C PDOL 00”, 其中 PDOL ="9F 66 04 9F 02 06 9F 37 04 5F 2A 02".

我收到:6A 80我使用的 CC 是 Visa PayWave 非接触式。 完整的 FCI(文件控制信息)专有模板是:

"50 0C 56 69 73 61 20 43 6C 61 73 73 69 63 87 01 01 9F 38 0C 9F 66 04 9F 02 06 9F 37 04 5F 2A 02 5F 2D 04 62 67 65 6E"

我缺少什么?正确的获取处理选项命令是什么?


the PDOL tag means that the tags specified by the next specified number of bytes represent the data to be concatenated to the end of the command. In your question the PDOL tag, 9f 38, specifies the next 0Chex (12dec) bytes indicate the data to be sent to the card. You have:

  • 9f 66 04 - 标签 9f 66 代表终端交易限定符。因此,PDOL 必须将 4h(十六进制)字节的终端事务限定符编码到这四个字节中。

  • 9f 02 06 - 标签 9f 02 代表授权金额。 PDOL 列表必须添加已授权的、编码为 6h 字节的数量。

  • 9f 37 04 - 标签 9f 37 代表不可预测的数字,因此将这样的数字编码为 4 个字节并将其添加到列表中

....

其余的类似翻译。该列表必须按照从卡接收的标签数据中指定的顺序,例如在您的列表中,TTQ 必须位于第一位,然后是授权金额等。根据您的结果,数据的总大小应为 4+6+4+2= 16 = 10h 字节。因此,带有示例数据的最终命令将如下所示:

                        <------the data concatenated together--------->
=> 80 a8 00 00 12 83 10 f3 20 40 00 00 00 00 01 00 00 04 04 06 03 05 08 00 

注意:注意 Lc、12h 的值及其后面的两个字节。十六进制值 0x83 必须出现在 Lc 之后,并且其后的字节应该是数据的实际长度,即 10h,因此如上所述,Lc = 10h + 2 = 12h。别忘了最后的Le!

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

如何正确构造获取处理选项命令消息 的相关文章

  • Kiosk软件指导

    我需要开发一个信息亭系统 唯一的付款方式是信用卡 借记卡 信息亭需要与另一台 PC 联网 例如 如果顾客在自助服务终端上订购了商品 则需要将其发送到另一台电脑 商店员工可以在其中查看订购的商品 以下是我的以下解决方案 选项 1 基于网络的应
  • 解析 EMV 事务中 GET PROCESSING OPTIONS 命令的 PDOL

    我正在尝试构建一个格式正确的 GET PROCESSING OPTIONS 命令以发送到非接触式 EMV 卡 这个帖子非常有帮助 但我只需要了解更多细节 解析 PDOL 时 是否可以安全地假设每个标签的长度为 2 个字节 后跟预期返回的数据
  • 在 PHP 中验证信用卡的最佳方法是什么?

    给定一个信用卡号码并且没有其他信息 PHP 中确定它是否是有效号码的最佳方法是什么 现在我需要一些可以与美国运通卡 Discover 万事达卡和维萨卡一起使用的东西 但如果它也可以与其他类型一起使用 那可能会有所帮助 卡号验证分为三个部分
  • 生成 AC 命令上的 Android isoDep.transceive 始终返回 6D00 不受支持

    我正在尝试模拟 PoS 销售点 系统并使用在 2013 年 Nexus 7 无安全元件 v4 4 2 上运行的 Google 钱包完成交易 我的 PoS 原型也在 2013 Nexus 7 v4 4 2 上运行 我能够从 2PAY SYS
  • 不需要连接到金融机构的信用卡校验和和验证

    我所知道的验证是 整个卡号的校验和应为零 范围是0 9 根据卡类型检查第一位数字 根据卡类型检查长度 根据卡类型检查 CCV 长度 我认为所有主要类型都是 3 当然 请确保它是可接受的卡类型并且未过期 还有其他验证吗 我想很多人都不知道所有
  • 通过 PayPal 和信用卡接收付款

    我正在开发一个网站 我需要从 PayPal 和信用卡接收付款 问题是我对此一无所知 我的问题是我在哪里可以找到一些很好的资源来帮助我 或者如果您有一些示例代码 一切可以帮助我的东西 多谢 如果您计划集成 Paypal 您会发现 Paypal
  • 解析 EMV 9F10 令牌

    我收到以下信息IAD处理后GPO command 那么我的问题是 怎么样9F10 EMV token建造 这是令牌 06010A03A020000F04000000000000000000006232E4F9 我只需要发送CVR部分到采集开
  • Angular 2:输入每4位数字后添加连字符,卡号输入

    我需要在输入的每 4 个数字后添加一个连字符 我在控制台中得到这个 我怎样才能实现这个以改变角度 2 的输入 我使用的代码如下 ts mychange val var self this var chIbn self storeData i
  • 美国网站的信用卡收单和贝宝解决方案

    我计划建立一个仅在美国接受收费的网站 是否有任何信用卡收单软件可以轻松地由 C ASP NET 网站实现 有人可以推荐一些吗 在数据库中保存 加密信用卡数据有什么规则吗 任何帮助都会很棒 正如 Albireo 所指出的 您不想将信用卡存储在
  • Luhn算法逻辑

    我目前正在学习 Codecademy 的全栈工程师课程 到目前为止 我一直非常适应它 发现新事物 自己解决问题 但这对我的进步来说是一个严重的障碍 因为我似乎无法找出这个逻辑的问题 我并不是想质疑卢恩的算法 但说真的 我需要对此进行一些澄清
  • 将加密的信用卡号存储在 SQL 数据库中

    我想知道最好的存储方法是什么加密的信用卡号在 SQL 数据库中C net 框架 我应该使用手动执行此操作吗String SecureString Byte Array与某种symmetric encryption 我听说作为替代方案 可能是
  • 在 Azure 上托管符合 PCI 标准的应用程序

    我想在 Windows Azure 上托管一个应用程序 该应用程序存储按月付费购买订阅的用户的信用卡信息 我只需要尽可能安全地存储卡数据 加密 加盐 经常更新数据库密码 使用 HTTPS 等等 我相信我需要符合 PCI 规范才能存储此类信息
  • 如何使用 Selenium 和 Python 在信用卡号字段中输入日期?

    我正在尝试制作一个脚本来自动在 Shopify 网站上结帐 当我尝试填写要求信用卡的字段时 硒不允许我将密钥发送到该字段中 并表示该元素不可交互 我已经尝试单击它 但它仍然不允许我输入信息 有人知道该怎么办吗 driver find ele
  • 如何防止信用卡号字段被浏览器缓存

    我的网页上有一个包含信用卡号的输入字段 防止浏览器缓存该值的最佳方法是什么 任何解决方案都需要在多种浏览器上运行 放置属性autocomplete off 到你的html表单 例如
  • 为有效信用卡生成随机数的好方法是什么?

    我正在用 Java 开发一套用于验证和使用信用卡的工具 到目前为止 我支持 卢恩验证 日期验证 简单到期 基于品牌 Visa MasterCard 等 的卡代码长度验证 CVV CVC CID 信用卡号长度验证 基于品牌 BIN IIN 验
  • 如何读取基于EMV的智能VISA卡详细信息

    我正在尝试从 VISA 卡读取信用卡数据 但无法成功 正如在互联网资源中我发现对于 MASTER 卡 我们可以使用 1PAY SYS DDF01 文件选择 PSE 目录 然后阅读记录 但对于 VISA 来说 它不是强制性的 当我使用 SEL
  • EMV 读取 PAN 代码

    我需要通过芯片读取每张可能的卡的 PAN 代码 在我的工作中 我只能使用 C 而且我没有可以帮助我完成这项无聊任务的例程 这就是我使用 APDU 的步骤 1 选择1PAY SYS DDF01 00 A4 0400 0E 315041592E
  • 从 Mastercard/VISA 借记卡/信用卡读取 EMV 数据 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在尝试构建一个应用程序来读取 编码卡上的数据 如 PAN 到期日 客户名称 PIN 等信息 到目前为止 我发现我需要发送 APDU
  • 使用 PHP 获取和存储信用卡信息的最佳实践

    我是否应该在前几个步骤 验证 审查购买 中使用会话 然后在最终提交中将信息输入到数据库中 饼干会被劫持并演变为诉讼吗 是不是风险太大了 如果存储信用卡号 我是否需要以任何特殊方式保护我的数据库 欢迎任何建议和个人经历 信用卡问题对于存储信用
  • Windows 8 Phone - 访问 NFC 读卡器?

    简短的问题 我可以使用支持 NFC 的 Windows Phone 8 读取信用卡信息吗 长问题 NFC 与信用卡如何工作 卡 或具有钱包功能的手机 通过 NFC 接收请求并以某种标准化格式回复明文信用卡信息 那么 钱包选项在广播信用卡信息

随机推荐

  • 无法在 Jenkins 上找到 TFS 插件 [重复]

    这个问题在这里已经有答案了 无法找到适用于 Jenkins 的 TFVC 或 Azure DevOps 和 Team Foundation Server 插件 詹金斯版本 2 263 1 由于安全漏洞 TFS 插件的官方分发已暂停 在 Je
  • 空值 - 布尔表达式

    所以我有一个关于考试作业的问题 在这个作业中我们有一堆布尔表达式 例如 FALSE OR NULL NULL 然后我们需要写出布尔表达式的值 为此 我使用了三值逻辑 但是当您获得如下布尔表达式时 它如何应用 NULLL AND TRUE O
  • 如何使用 sql 查询将数据库的子集提取到 dbunit 文件中?

    Why 我有一个很大的 Oracle 表 我想测试一些 DAO 方法 为此 我使用 dbunit Problem 我想使用 sql 查询将现有数据库的子集提取为 dbunit 平面 xml 文件 查询示例 Select t1 field1
  • spring任意消息传递tcp套接字

    我正在使用 spring integration 开发定制的双向 TCP 套接字服务器 服务器将处理请求 响应任务 但我无法向特定的连接 ID 发送任意消息 我也知道也许使用TcpSendingMessageHandler and TcpR
  • 如何在Python Flask中定位项目的for循环

    所以 我在烧瓶中有一个项目的 for 循环 我正在尝试找到一种方法将它们放置在页面上 我在引导卡中有一个任务的 for 循环 当用户创建卡片时 卡片变得非常愚蠢 并且定位变得非常奇怪 截图 https ibb co hRjCrFf 老师作业
  • 如何使用 GitHub API 确定提交属于哪个 Pull Request?

    给定提交 SHA 我想使用 GitHub API 来确定它属于哪个拉取请求 GitHub 在上显示此信息提交页面 https github com hammerlab pileup js commit ee49f07dba3821109b3
  • 获取MySQL语句的精确执行时间

    现在的结果表明 集合中的 X 行 0 00 秒 所以我想知道是否有办法可以得到小数点后两位以上的时间 Execute set profiling 1在运行语句之前 然后获取计时show profiles query See 显示配置文件语法
  • Powershell 匹配属性,然后有选择地组合对象以创建第三个

    我对此有一个解决方案 但我相信这不是最好的方法 因为它需要永远 所以我正在寻找更快 更好 更智能的方法 我有多个从 csv 文件中提取的 pscustomObject 对象 每个对象至少有一个共同属性 一个相对较小 对象中大约 200 30
  • 为什么 keras 使用“call”而不是 __call__?

    我喜欢以下代码 https www tensorflow org tutorials eager custom layers https www tensorflow org tutorials eager custom layers cl
  • 如何检测Ubuntu版本?

    我目前正在编写一个Python应用程序来更改一些网络配置文件 该应用程序需要在 Ubuntu 10 04 至 13 10 上运行 问题是 NetworkManager 在不同版本上以不同的方式被破坏 尽管他们似乎最终在 13 04 中修复了
  • SurfaceView.onAttachedToWindow 中的 NullPointerException(SurfaceView.java:207)

    我收到 SurfaceView onAttachedToWindow 引发的异常 看起来 SurfaceView 正在尝试引用 mParent 但它为空 有谁知道为什么不会设置父级但会调用 onAttachedToWindow 我正在使用
  • 如何强制 Highcharts 在 xAxis 上显示最后一个标签?

    似乎在步进 xaxis 中正常的 showLastLabel 不起作用 https stackoverflow com questions 23518720 last label is not showing in stepped labe
  • Python 未找到 netCDF4 导入

    我需要使用 netCDF4 模块来进行一些处理 我已按照此步骤操作guide http unidata github io netcdf4 python 并尝试使用 anaconda2 作为推荐post https stackoverflo
  • 如何在构造 std::vector 时放置元素?

    我想构建一个std vector某些元素具有由某些特定构造函数而不是默认构造函数构造的元素 换句话说 我想在构建向量时放置元素 我怎样才能做到这一点 考虑this https godbolt org g sWNxJv struct Item
  • 数学随机在数组中查找名称而不重复

    所以我想从一个名称数组中找到三个名称 然后我想将其写入一个新数组 虽然还没有做到这一点 但我遇到的问题是它不断随机化我已经找到的相同名称 查看jsfiddle脚本 http jsfiddle net uxd4mzcp Code findSt
  • 如何解释Map.map结果

    当我看着Map mapscaladoc 我可以看到 map B f A B Map B 但下面的简单代码不会返回Map scala gt Map answer gt 42 map case k v gt v res40 scala coll
  • 如何获取字符的ASCII值

    我如何获得ASCII https en wikipedia org wiki ASCII一个字符的值int在Python中 From here http mail python org pipermail python win32 2005
  • 使用一元/二元运算符进行后缀中缀

    我正在尝试制作一个从后缀到中缀表示法的转换器 并且需要一些帮助 已经有关于中缀到后缀转换的问题 https stackoverflow com questions 2431863 infix to postfix and unary bin
  • scale.default 中的错误:“center”的长度必须等于“x”的列数

    我在用mboost包做一些分类 这是代码 library mboost load so data rdata model lt glmboost is exciting data training family Binomial pred
  • 如何正确构造获取处理选项命令消息

    EMV Book 3 说 CLA 80INS A8第1页 00P2 00LC 无功数据 处理选项数据对象列表 PDOL 相关数据乐 00 我的 APDU 命令如下所示 80 A8 00 00 0C PDOL 00 其中 PDOL 9F 66