小编Blu*_*oke的帖子

C# PCSC-sharp 发送/接收带有数据的自定义命令

我正在开发一个 C# Java 卡(智能卡)程序,并且我正在尝试利用github 上的PCSC-sharp库。

这是我的请求的“short / tl;dr”版本: PCSC-sharp 示例涵盖了 Iso7816 Case2Short。有人可以纠正我下面的示例,或者为我提供 Iso7816 Case3Short(命令数据。无响应数据)和 Case4Short(命令数据。预期响应数据)的示例吗?

这是我的请求的“长”版本: 在 Java 卡上,我使用标准和自定义 APDU 命令,并且我可以使用 python 脚本(使用智能卡库)成功调用这些命令。换句话说,我已经证明 Java Card 命令有效。

我现在的目标是使用 PCSC-sharp 执行相同的命令,但当我包含数据时(即 APDU LC > 0),我失败了。

这是 github 上的示例。请注意,我只需更改阅读器名称、指令(选择文件而不是获取挑战)和 Le 即可使用此功能。

var contextFactory = ContextFactory.Instance;
using (var ctx = contextFactory.Establish(SCardScope.System)) {
    using (var isoReader = new IsoReader(ctx, "ACME Smartcard reader", 
        SCardShareMode.Shared, SCardProtocol.Any, false)) {

        var apdu = new CommandApdu(IsoCase.Case2Short, isoReader.ActiveProtocol) {
            CLA = 0x00, // Class
            Instruction = InstructionCode.GetChallenge,
            P1 = …
Run Code Online (Sandbox Code Playgroud)

c# apdu smartcard javacard

5
推荐指数
1
解决办法
6057
查看次数

标签 统计

apdu ×1

c# ×1

javacard ×1

smartcard ×1