Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
public:smartcard [2011-08-31 20:10] – [Writing Microsoft Smart card minidriver] petrs | public:research:smartcard:smartcard [2024-01-17 18:56] (current) – [Smart cards info] xjancar | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | |||
====== Smart cards info ====== | ====== Smart cards info ====== | ||
- | [[public: | + | [[public:research: |
+ | |||
+ | [[public: | ||
+ | |||
+ | [[public: | ||
+ | |||
+ | [[public: | ||
+ | |||
+ | [[public: | ||
+ | |||
+ | [[public: | ||
+ | |||
+ | ====== Various links ====== | ||
+ | |||
+ | * JavaCard applet programming guideline: http:// | ||
+ | * JavaCard history: http:// | ||
+ | * Report on JavaCard 3.0 vulnerabilities (Royal Holloway) http:// | ||
+ | ====== Handy smart card tools ====== | ||
+ | * Cardpeek, Reader of smart card content: http:// | ||
+ | * GPShell, JavaCard applets and keys manager: http:// | ||
+ | * jcManager, JavaCard applets and keys manager: http:// | ||
+ | * List of smart cards with ATR: http:// | ||
+ | * Online ATR parsers: http:// | ||
- | [[public: | ||
====== PKCS# | ====== PKCS# | ||
Line 13: | Line 33: | ||
* Download Muscle applet via svn co svn:// | * Download Muscle applet via svn co svn:// | ||
* (Applet using Extended APDU is available here: https:// | * (Applet using Extended APDU is available here: https:// | ||
- | * Compile, Convert and upload applet to smart card - see [[public: | + | * Compile, Convert and upload applet to smart card - see [[public:research: |
* IMPORTANT: Muscle applet needs to be installed with privilege ' | * IMPORTANT: Muscle applet needs to be installed with privilege ' | ||
* e.g. in GPShell, //install -file cardedge.cap -nvDataLimit 2000 -instParam 00 **-priv 4**// (-priv 4 makes applet default selected) | * e.g. in GPShell, //install -file cardedge.cap -nvDataLimit 2000 -instParam 00 **-priv 4**// (-priv 4 makes applet default selected) | ||
Line 65: | Line 85: | ||
====== Generate self-signed X.509 certificates with OpenSSL====== | ====== Generate self-signed X.509 certificates with OpenSSL====== | ||
+ | |||
+ | * Complete Linux Tutorial: http:// | ||
+ | |||
+ | |||
* openssl genrsa -out my.key 2048 | * openssl genrsa -out my.key 2048 | ||
* (unable to write ' | * (unable to write ' | ||
Line 71: | Line 95: | ||
* fill in certificate parameters | * fill in certificate parameters | ||
* you may prefill required info into file and ' | * you may prefill required info into file and ' | ||
+ | * error: Unable to load config info from / | ||
+ | * https:// | ||
+ | * set environmental variable OPENSSL_CONF=c:/ | ||
* openssl pkcs12 -export -out my.p12 -in my.crt -inkey my.key | * openssl pkcs12 -export -out my.p12 -in my.crt -inkey my.key | ||
* export your private and public key into single my.p12 file | * export your private and public key into single my.p12 file | ||
Line 119: | Line 146: | ||
* function prototypes looks like //DWORD WINAPI function_name(function_arguments; | * function prototypes looks like //DWORD WINAPI function_name(function_arguments; | ||
* add AFX_MANAGE_STATE(AfxGetStaticModuleState()); | * add AFX_MANAGE_STATE(AfxGetStaticModuleState()); | ||
- | * you may use Regular expression tool to speed replacement a bit | + | * you may use Regular expression tool to speed up manual |
Line 138: | Line 165: | ||
* Remove all structures/ | * Remove all structures/ | ||
+ | * Build the project to produce DLL | ||
+ | * Create INF file containing minidriver description (see [[http:// |