Share via


Smart Card

On a device that is based on Microsoft® Windows® CE .NET, the smart card subsystem provides a link between smart card reader hardware and applications that are smart-card-aware. This link consists of dynamic-link libraries (DLLs), the smart card resource manager application programming interface (API), and the smart card reader hardware device drivers. The smart card subsystem supports CryptoAPI and the Windows CE–based device driver model.

The Windows CE smart card subsystem consists of the following:

  • Smart Card Service Providers

    Smart card service providers are base service providers (DLLs) that enable access to specific services. The service providers access specific capabilities of their target smart cards. They are aware of the services that are provided within specific smart cards and ease access to these services by applications. The service providers can build on the services of other providers to accomplish their tasks. Examples of service providers that can be invoked by other providers are the ISO 7816-4 File System and APDU providers.

    Note that Windows CE does not include a service provider. Typically, the same vendor that supplied the target smart card supplies its provider.

  • Resource Manager

    The resource manager uses a Microsoft Win32® API to manage access to multiple readers and smart cards. The resource manager coordinates application access to specific smart cards and provides the service providers with what appears to be a direct connection to the target smart card. In particular, it maintains security by preventing unauthorized access to smart cards or readers and by coordinating which cards are in which readers.

  • Specific Smart Card Reader Driver

    The specific drivers map the conceptual driver services to the specific hardware reader device. There may be hierarchies of specific drivers, too, such as generic serial port drivers that communicate with specific port drivers. The specific reader driver must communicate any card-insertion and removal events to the smart card class driver for forwarding to the resource manager. The driver also must provide data-exchange capabilities to the card by using any or all of the raw, T=0, or T=1 protocols.

  • Smart Card Reader Helper Library

    The smart card helper library provides common smart card driver support routines and provides additional T=0 and T=1 protocol support to specific drivers as needed.

For more information about smart cards, see the PC/SC Workgroup Web site.

The following table shows the modules that implement the smart card subsystem.

File Description
Scard.dll Smart card resource manager.
Smclib.lib Smart card reader helper library.
Winscard.dll Smart card resource manager helper library; this file is part of the Coredll.dll file.

The following table shows several of the sample PC Card smart card readers that are included in this software development kit (SDK).

File Description
Bulltlp3.dll Serial reader driver
Pscr.dll SwapSmart PC Card reader driver
Stcusb.dll USB reader driver

These sample readers and their source code are located in the %_WINCEROOT%\Public\Common\Oak\Drivers\Pscr directory.

See Also

Smart Card Concepts | Smart Card Resource Manager | Smart Card CSP | Smart Card Registry Settings

 Last updated on Saturday, April 10, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.