首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用CryptoTokenKit读取NFC (Mifare经典1K)

用CryptoTokenKit读取NFC (Mifare经典1K)
EN

Stack Overflow用户
提问于 2016-01-28 09:46:42
回答 1查看 861关注 0票数 0

我正在尝试使用ACR122来读/写一个MilfelyClassic1kNFC卡(从工厂提供)。我能探测到这张卡,但无法与它通信。

我已经在网上搜索了好几天,试图在这个网站上找到任何类型的文档(但没有成功)。

我知道这些卡是加密的,但肯定有默认密码或重置卡的方法?

到目前为止,我的情况如下:

代码语言:javascript
复制
card.beginSessionWithReply { (result, error) -> Void in
         print("Began card session: \(result) \(card.valid) \(card.currentProtocol)");

         let aid : [UInt8] = [0xFF, 0x86, 0x00, 0x00, 0x05, 0x01, 0x00, 0x00, 0x0, 0x00];
         var data = NSData(bytes: aid, length: aid.count)
         card.transmitRequest(data, reply: { (data, error) -> Void in
            print("Transmit: data: \(data) error \(error)");
         })

         data = "Hi".dataUsingEncoding(NSUTF8StringEncoding)!;
         card.sendIns(0xFF, p1: 0x00, p2: 0x00, data: data, le: nil, reply: { (data, uint, error) -> Void in
            if let e = error {
               if (e.code == TKErrorCode.CorruptedData.rawValue) {
                  print("CorruptedData");
               } else {
                  print("error code: \(error?.code)");
               }
            }
            print("Sendins: reply:\(data) int:\(uint) error:\(error)");
         })
      }

输出:

代码语言:javascript
复制
["ACS ACR122U"]
Card is valid
ATR: <3b8f8001 804f0ca0 00000306 03000100 0000006a>
Began card session: true true TKSmartCardProtocol(rawValue: 2)
error code: Optional(-2)
Sendins: reply:nil int:0 error:Optional(Error Domain=CryptoTokenKit Code=-2 "(null)")
Transmit: data: Optional(<6300>) error nil

任何建议都很好(包括任何能够读写这些卡的OS软件)。

EN

回答 1

Stack Overflow用户

发布于 2016-02-17 02:13:30

我不确定CryptoTokenKit,但我确信我们可以根据ACR122 应用程序接口使用PICC命令来读/写Mifare卡。

你必须通过以下步骤。

  1. 将身份验证密钥加载到读取器。

  1. 进行身份验证。

您需要提供要读取的块集,并为这些块提供身份验证密钥。有关Mifare经典1k内存结构的更多信息,请参阅数据表这里

然后,您可以发出读和写APDU命令(可以在ACR122API文档中找到)。干杯!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35057927

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档