pcsc-lite和libnfc之间的区别

问题描述 投票:2回答:1

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

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

nfc smartcard-reader pcsc globalplatform lib-nfc
1个回答
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只是有不同的目的,比较它们就像比较苹果和橘子一样。

© www.soinside.com 2019 - 2024. All rights reserved.