I searched for the introduction of opensc on Google. No, I 'd better say it myself.
Opensc official website http://www.opensc-project.org/
Project Description: opensc provides a set of libraries and tools for accessing smart cards. Opensc focuses on card password operations to promote card applications such as email encryption, authentication, and signature. Opensc implements the PKCS #11 API so that it can be used by Mozilla Firefox and Thunderbird. Opensc implements the PKCS #15 standard to be compatible with all applications.
Opensc supports the following cards:
National ID cards
- Finnish ID card fineid
- Swedish Posten Eid
- Estonian ID card esteid
- Italian infocamere
- Italian postecert
- Italian CNS/CIE (EID)
- Belgian Eid
- Spanish Ceres
- German ID cards, ehba, egk
- Taiwan
- Austrian bürgerkarte, e-card
- Australian national ID card
- United States PIV card Applet
- Turkish Eid card
Smart Cards
- Schlumberger/Axalto cryptoflex
- Schlumberger/Axalto cyberflex
- Gemplus GPK
- EMV
- Siemens cardos M4
- IBM jcop
- Micardo
- Oberthur
- Openpgp
- Setec setcos
- Giesecke & Devrient starcos
- Giesecke & Devrient seccos
- TCOs based cards (netkey E4, signtrust, smartkey)
- Akis smart cards
USB tokens
- Aladdin etoken pro
- Eutron cryptoidentity ITSEC
- Schlumberger/Axalto e-gate
- Rainbow Ikey 3000
- Rainbow Ikey 4000 not supported
- Feitian epass3000 (epass3000 of Apsara integrity in China)
Ii. compiling environment
Operating System: Windows XP SP3
Development Tool: vistual Studio 2003 SP1
Code: opensc-0.11.6.tar.gz
Library: OpenSSL 0.9.7e.tar.gzw.libtool-1.5.26-bin.zip
Iii. compilation process
Libtool: Decompress the zip package to c: \ (or another directory ).
OpenSSL: Decompress the tar.gz package to c: \, compile it, and perform the following steps: (there are many OpenSSL compiling examples in Windows on Google)
Opensc: Decompress the tar.gz package to c: \ and edit it.Win32/make. Rules. Mak. The edited file is pasted below:
# Note: These Instructions obsolete the instructions in opensc.html
# You first need to download the gnuwin32 libtool (e.g. The "binaries" and "Developer
# Files "from http://gnuwin32.sourceforge.net/packages/libtool.htm)
# Then fill in the directory path to ltdl. H on the libltdl_incl line below, preceeded
# By an "/I"; and fill in the path to the libltdl. lib on the libltdl_lib line below.
# Then you can build this opensc package; and afterwards you'll need to copy
# Libltdl3.dll somewhere on your execution path.
Libltdl_incl =/IC: \ libtool-1.5.26-bin \ include # e. g./IC: \ libtool-1.5.8-lib \ include (here change to your own path, my drive C)
Libltdl_lib = c: \ libtool-1.5.26-bin \ Lib \ ltdl. Lib # e. g. c: \ libtool-1.5.8-lib \ Lib \ libltdl. Lib (here change to your own path, my disk is C)
Opensc_features = pcsc
# If you want support for OpenSSL (needed for a. o. pkcs15-init tool and OpenSSL engine ):
#-Download and build OpenSSL
#-Uncomment the line starting with openssl_def
#-Set the openssl_incl_dir below to your OpenSSL include directory, preceded by "/I"
#-Set the openssl_lib below to your OpenSSL lib File
Openssl_def =/denable_openssl # Open this option. OpenSSL is used in the source code. Otherwise, an error is reported.
! If "$ (openssl_def)" = "/denable_openssl"
Openssl_incl_dir =/ie: \ Software \ keystore \ OpenSSL \ openssl-0.9.7c \ include # change the path here
Openssl_lib = E: \ Software \ keystore \ OpenSSL \ openssl-0.9.7c \ out32dll \ debug \ libeay32.lib # point to the compiled libeay32.lib
Programs_openssl = pkcs15-init.exe cryptoflex-tool.exe netkey-tool.exe piv-tool.exe
Opensc_features = $ (opensc_features) OpenSSL
! Endif
# If you want support for zlib (used for PIV, infocamere and actalis:
#-Download zlib and build
#-Uncomment the line starting with zlib_def
#-Set the zlib_incl_dir below to the zlib include lib proceeded by "/I"
#-Set the zlib_lib below to your zlib lib File
# Zlib_def =/denable_zlib
! If "$ (zlib_def)" = "/denable_zlib"
Zlib_incl_dir =/IC: \ zlib \ include
Zlib_lib = c: \ zlib \ Lib \ zlib. Lib
Opensc_features = $ (opensc_features) zlib
! Endif
Copts =/d_crt_secure_no_deprecate/Zi/MD/nologo/dhave_config_h/I $ (topdir) \ SRC \ include \ opensc/I $ (topdir) \ SRC \ common $ (openssl_incl_dir) $ (zlib_incl_dir) $ (libltdl_incl)/d_win32_winnt = 0x0400/dwin32_lean_and_mean $ (openssl_def) $ (zlib_def) /dopensc_features = "\" $ (opensc_features )\""
Linkflags =/debug/nologo/Incremental: No/machine: ix86
Install-headers:
@ For % I in ($ (headers) do \
@ Xcopy/D/Q/Y % I $ (headersdir)> NUL
Install-headers-Dir:
@ For % I in ($ (headersdirfrom2) do \
@ Xcopy/D/Q/Y % I \ *. h $ (headersdir2) \ *. h> NUL
. C. OBJ ::
CL $ (Copts)/C $ <
. Rc. Res ::
RC/L 0x0409/r $ <
Clean ::
Del/Q *. OBJ *. dll *. EXE *. PDB *. lib *. Def
Open the vistudio Studio. NET 2003 Command Prompt window and run nmake-F makefile. Mak in the opensc root directory. The compilation is successful!
Finally, we recommend a professional information security forum http://www.infosec-china.cn