pcsc-lite和libnfc之间的区别

Qyl*_*lin 2 nfc pcsc smartcard-reader globalplatform lib-nfc

有人可以解释两者之间的差异/关系吗?

现在我使用GPShell + globalplatform + pcsclite也操纵了支持NFC的卡.从我的角度来看(我对libnfc了解不多)pcsclite和libnfc做同样的事情.

Mic*_*and 9

pcsclite(或者更确切地说是PC/SC而不仅仅是pcsclite实现)

PC/SC是个人计算机平台的智能卡API(最初主要是移动计算机,但也包括服务器等,甚至智能手机和其他嵌入式系统).因此,PC/SC是一种标准,可以在任意智能卡读卡器和来自不同制造商的任意PC平台之间提供互操作性.pcsclite是这个互操作性层的实现(从开发人员的角度来看,基本上提供了一个标准化的API,它依赖于智能卡和读取器平台以及目标操作系统).PC/SC来自非接触式智能卡之前的时代,并且已经扩展到非接触式智能卡和非接触式存储卡.

libnfc

libnfc是用于NFC控制器芯片的库,并提供访问NFC接口的标准化方式.虽然这也允许访问非接触式智能卡和存储卡/ NFC标签,但NFC控制器具有更多功能(点对点模式通信和(主机)卡仿真).这些功能由libnfc涵盖(顺便说一句,没有真正的标准*定义libnfc后面的软件堆栈的接口和层,就像PC/SC一样).

*)随着NFC论坛的NCI规范(至少在较低级别),这开始发生变化.

总而言之,pcsclite用于访问智能卡读卡器(也可以是非接触式智能卡读卡器),libnfc用于访问NFC接口(与智能卡读卡器不同,尽管它们有时可用于读取非接触式智能卡) .所以,libnfc和pcsclite只是有不同的目的,比较它们就像比较苹果和橘子一样.

  • 不,智能卡读卡器也有“控制器芯片”,但这些控制器芯片是智能卡读卡器专用的,并且(通常)没有 NFC 控制器。智能卡读卡器中控制器芯片的用途:接触式/非接触式智能卡的物理和逻辑接口。NFC 控制器芯片的用途:NFC 基础设施(NFC 设备、NFC 标签、非接触式智能卡、非接触式智能卡读卡器等)的物理和逻辑接口 (2认同)